diff options
118 files changed, 12485 insertions, 475 deletions
diff --git a/paper-api-generator/generated/io/papermc/paper/registry/keys/PaintingVariantKeys.java b/paper-api-generator/generated/io/papermc/paper/registry/keys/PaintingVariantKeys.java new file mode 100644 index 0000000000..cac7a2c76f --- /dev/null +++ b/paper-api-generator/generated/io/papermc/paper/registry/keys/PaintingVariantKeys.java @@ -0,0 +1,392 @@ +package io.papermc.paper.registry.keys; + +import static net.kyori.adventure.key.Key.key; + +import io.papermc.paper.generated.GeneratedFrom; +import io.papermc.paper.registry.RegistryKey; +import io.papermc.paper.registry.TypedKey; +import net.kyori.adventure.key.Key; +import org.bukkit.Art; +import org.checkerframework.checker.nullness.qual.NonNull; +import org.jetbrains.annotations.ApiStatus; + +/** + * Vanilla keys for {@link RegistryKey#PAINTING_VARIANT}. + * + * @apiNote The fields provided here are a direct representation of + * what is available from the vanilla game source. They may be + * changed (including removals) on any Minecraft version + * bump, so cross-version compatibility is not provided on the + * same level as it is on most of the other API. + */ +@SuppressWarnings({ + "unused", + "SpellCheckingInspection" +}) +@GeneratedFrom("1.21.3") +public final class PaintingVariantKeys { + /** + * {@code minecraft:alban} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> ALBAN = create(key("alban")); + + /** + * {@code minecraft:aztec} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> AZTEC = create(key("aztec")); + + /** + * {@code minecraft:aztec2} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> AZTEC2 = create(key("aztec2")); + + /** + * {@code minecraft:backyard} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> BACKYARD = create(key("backyard")); + + /** + * {@code minecraft:baroque} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> BAROQUE = create(key("baroque")); + + /** + * {@code minecraft:bomb} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> BOMB = create(key("bomb")); + + /** + * {@code minecraft:bouquet} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> BOUQUET = create(key("bouquet")); + + /** + * {@code minecraft:burning_skull} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> BURNING_SKULL = create(key("burning_skull")); + + /** + * {@code minecraft:bust} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> BUST = create(key("bust")); + + /** + * {@code minecraft:cavebird} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> CAVEBIRD = create(key("cavebird")); + + /** + * {@code minecraft:changing} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> CHANGING = create(key("changing")); + + /** + * {@code minecraft:cotan} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> COTAN = create(key("cotan")); + + /** + * {@code minecraft:courbet} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> COURBET = create(key("courbet")); + + /** + * {@code minecraft:creebet} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> CREEBET = create(key("creebet")); + + /** + * {@code minecraft:donkey_kong} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> DONKEY_KONG = create(key("donkey_kong")); + + /** + * {@code minecraft:earth} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> EARTH = create(key("earth")); + + /** + * {@code minecraft:endboss} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> ENDBOSS = create(key("endboss")); + + /** + * {@code minecraft:fern} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> FERN = create(key("fern")); + + /** + * {@code minecraft:fighters} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> FIGHTERS = create(key("fighters")); + + /** + * {@code minecraft:finding} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> FINDING = create(key("finding")); + + /** + * {@code minecraft:fire} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> FIRE = create(key("fire")); + + /** + * {@code minecraft:graham} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> GRAHAM = create(key("graham")); + + /** + * {@code minecraft:humble} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> HUMBLE = create(key("humble")); + + /** + * {@code minecraft:kebab} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> KEBAB = create(key("kebab")); + + /** + * {@code minecraft:lowmist} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> LOWMIST = create(key("lowmist")); + + /** + * {@code minecraft:match} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> MATCH = create(key("match")); + + /** + * {@code minecraft:meditative} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> MEDITATIVE = create(key("meditative")); + + /** + * {@code minecraft:orb} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> ORB = create(key("orb")); + + /** + * {@code minecraft:owlemons} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> OWLEMONS = create(key("owlemons")); + + /** + * {@code minecraft:passage} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> PASSAGE = create(key("passage")); + + /** + * {@code minecraft:pigscene} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> PIGSCENE = create(key("pigscene")); + + /** + * {@code minecraft:plant} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> PLANT = create(key("plant")); + + /** + * {@code minecraft:pointer} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> POINTER = create(key("pointer")); + + /** + * {@code minecraft:pond} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> POND = create(key("pond")); + + /** + * {@code minecraft:pool} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> POOL = create(key("pool")); + + /** + * {@code minecraft:prairie_ride} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> PRAIRIE_RIDE = create(key("prairie_ride")); + + /** + * {@code minecraft:sea} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> SEA = create(key("sea")); + + /** + * {@code minecraft:skeleton} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> SKELETON = create(key("skeleton")); + + /** + * {@code minecraft:skull_and_roses} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> SKULL_AND_ROSES = create(key("skull_and_roses")); + + /** + * {@code minecraft:stage} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> STAGE = create(key("stage")); + + /** + * {@code minecraft:sunflowers} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> SUNFLOWERS = create(key("sunflowers")); + + /** + * {@code minecraft:sunset} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> SUNSET = create(key("sunset")); + + /** + * {@code minecraft:tides} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> TIDES = create(key("tides")); + + /** + * {@code minecraft:unpacked} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> UNPACKED = create(key("unpacked")); + + /** + * {@code minecraft:void} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> VOID = create(key("void")); + + /** + * {@code minecraft:wanderer} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> WANDERER = create(key("wanderer")); + + /** + * {@code minecraft:wasteland} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> WASTELAND = create(key("wasteland")); + + /** + * {@code minecraft:water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> WATER = create(key("water")); + + /** + * {@code minecraft:wind} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> WIND = create(key("wind")); + + /** + * {@code minecraft:wither} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Art> WITHER = create(key("wither")); + + private PaintingVariantKeys() { + } + + /** + * Creates a key for {@link Art} in the registry {@code minecraft:painting_variant}. + * + * @param key the value's key in the registry + * @return a new typed key + */ + @ApiStatus.Experimental + public static @NonNull TypedKey<Art> create(final @NonNull Key key) { + return TypedKey.create(RegistryKey.PAINTING_VARIANT, key); + } +} diff --git a/paper-api-generator/generated/io/papermc/paper/registry/keys/SoundEventKeys.java b/paper-api-generator/generated/io/papermc/paper/registry/keys/SoundEventKeys.java new file mode 100644 index 0000000000..037ee80836 --- /dev/null +++ b/paper-api-generator/generated/io/papermc/paper/registry/keys/SoundEventKeys.java @@ -0,0 +1,11487 @@ +package io.papermc.paper.registry.keys; + +import static net.kyori.adventure.key.Key.key; + +import io.papermc.paper.generated.GeneratedFrom; +import io.papermc.paper.registry.RegistryKey; +import io.papermc.paper.registry.TypedKey; +import net.kyori.adventure.key.Key; +import org.bukkit.Sound; +import org.checkerframework.checker.nullness.qual.NonNull; +import org.jetbrains.annotations.ApiStatus; + +/** + * Vanilla keys for {@link RegistryKey#SOUND_EVENT}. + * + * @apiNote The fields provided here are a direct representation of + * what is available from the vanilla game source. They may be + * changed (including removals) on any Minecraft version + * bump, so cross-version compatibility is not provided on the + * same level as it is on most of the other API. + */ +@SuppressWarnings({ + "unused", + "SpellCheckingInspection" +}) +@GeneratedFrom("1.21.3") +public final class SoundEventKeys { + /** + * {@code minecraft:ambient.basalt_deltas.additions} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_BASALT_DELTAS_ADDITIONS = create(key("ambient.basalt_deltas.additions")); + + /** + * {@code minecraft:ambient.basalt_deltas.loop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_BASALT_DELTAS_LOOP = create(key("ambient.basalt_deltas.loop")); + + /** + * {@code minecraft:ambient.basalt_deltas.mood} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_BASALT_DELTAS_MOOD = create(key("ambient.basalt_deltas.mood")); + + /** + * {@code minecraft:ambient.cave} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_CAVE = create(key("ambient.cave")); + + /** + * {@code minecraft:ambient.crimson_forest.additions} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_CRIMSON_FOREST_ADDITIONS = create(key("ambient.crimson_forest.additions")); + + /** + * {@code minecraft:ambient.crimson_forest.loop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_CRIMSON_FOREST_LOOP = create(key("ambient.crimson_forest.loop")); + + /** + * {@code minecraft:ambient.crimson_forest.mood} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_CRIMSON_FOREST_MOOD = create(key("ambient.crimson_forest.mood")); + + /** + * {@code minecraft:ambient.nether_wastes.additions} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_NETHER_WASTES_ADDITIONS = create(key("ambient.nether_wastes.additions")); + + /** + * {@code minecraft:ambient.nether_wastes.loop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_NETHER_WASTES_LOOP = create(key("ambient.nether_wastes.loop")); + + /** + * {@code minecraft:ambient.nether_wastes.mood} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_NETHER_WASTES_MOOD = create(key("ambient.nether_wastes.mood")); + + /** + * {@code minecraft:ambient.soul_sand_valley.additions} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_SOUL_SAND_VALLEY_ADDITIONS = create(key("ambient.soul_sand_valley.additions")); + + /** + * {@code minecraft:ambient.soul_sand_valley.loop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_SOUL_SAND_VALLEY_LOOP = create(key("ambient.soul_sand_valley.loop")); + + /** + * {@code minecraft:ambient.soul_sand_valley.mood} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_SOUL_SAND_VALLEY_MOOD = create(key("ambient.soul_sand_valley.mood")); + + /** + * {@code minecraft:ambient.underwater.enter} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_UNDERWATER_ENTER = create(key("ambient.underwater.enter")); + + /** + * {@code minecraft:ambient.underwater.exit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_UNDERWATER_EXIT = create(key("ambient.underwater.exit")); + + /** + * {@code minecraft:ambient.underwater.loop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_UNDERWATER_LOOP = create(key("ambient.underwater.loop")); + + /** + * {@code minecraft:ambient.underwater.loop.additions} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_UNDERWATER_LOOP_ADDITIONS = create(key("ambient.underwater.loop.additions")); + + /** + * {@code minecraft:ambient.underwater.loop.additions.rare} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_UNDERWATER_LOOP_ADDITIONS_RARE = create(key("ambient.underwater.loop.additions.rare")); + + /** + * {@code minecraft:ambient.underwater.loop.additions.ultra_rare} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_UNDERWATER_LOOP_ADDITIONS_ULTRA_RARE = create(key("ambient.underwater.loop.additions.ultra_rare")); + + /** + * {@code minecraft:ambient.warped_forest.additions} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_WARPED_FOREST_ADDITIONS = create(key("ambient.warped_forest.additions")); + + /** + * {@code minecraft:ambient.warped_forest.loop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_WARPED_FOREST_LOOP = create(key("ambient.warped_forest.loop")); + + /** + * {@code minecraft:ambient.warped_forest.mood} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> AMBIENT_WARPED_FOREST_MOOD = create(key("ambient.warped_forest.mood")); + + /** + * {@code minecraft:block.amethyst_block.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_BLOCK_BREAK = create(key("block.amethyst_block.break")); + + /** + * {@code minecraft:block.amethyst_block.chime} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_BLOCK_CHIME = create(key("block.amethyst_block.chime")); + + /** + * {@code minecraft:block.amethyst_block.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_BLOCK_FALL = create(key("block.amethyst_block.fall")); + + /** + * {@code minecraft:block.amethyst_block.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_BLOCK_HIT = create(key("block.amethyst_block.hit")); + + /** + * {@code minecraft:block.amethyst_block.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_BLOCK_PLACE = create(key("block.amethyst_block.place")); + + /** + * {@code minecraft:block.amethyst_block.resonate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_BLOCK_RESONATE = create(key("block.amethyst_block.resonate")); + + /** + * {@code minecraft:block.amethyst_block.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_BLOCK_STEP = create(key("block.amethyst_block.step")); + + /** + * {@code minecraft:block.amethyst_cluster.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_CLUSTER_BREAK = create(key("block.amethyst_cluster.break")); + + /** + * {@code minecraft:block.amethyst_cluster.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_CLUSTER_FALL = create(key("block.amethyst_cluster.fall")); + + /** + * {@code minecraft:block.amethyst_cluster.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_CLUSTER_HIT = create(key("block.amethyst_cluster.hit")); + + /** + * {@code minecraft:block.amethyst_cluster.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_CLUSTER_PLACE = create(key("block.amethyst_cluster.place")); + + /** + * {@code minecraft:block.amethyst_cluster.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AMETHYST_CLUSTER_STEP = create(key("block.amethyst_cluster.step")); + + /** + * {@code minecraft:block.ancient_debris.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANCIENT_DEBRIS_BREAK = create(key("block.ancient_debris.break")); + + /** + * {@code minecraft:block.ancient_debris.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANCIENT_DEBRIS_FALL = create(key("block.ancient_debris.fall")); + + /** + * {@code minecraft:block.ancient_debris.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANCIENT_DEBRIS_HIT = create(key("block.ancient_debris.hit")); + + /** + * {@code minecraft:block.ancient_debris.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANCIENT_DEBRIS_PLACE = create(key("block.ancient_debris.place")); + + /** + * {@code minecraft:block.ancient_debris.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANCIENT_DEBRIS_STEP = create(key("block.ancient_debris.step")); + + /** + * {@code minecraft:block.anvil.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANVIL_BREAK = create(key("block.anvil.break")); + + /** + * {@code minecraft:block.anvil.destroy} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANVIL_DESTROY = create(key("block.anvil.destroy")); + + /** + * {@code minecraft:block.anvil.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANVIL_FALL = create(key("block.anvil.fall")); + + /** + * {@code minecraft:block.anvil.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANVIL_HIT = create(key("block.anvil.hit")); + + /** + * {@code minecraft:block.anvil.land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANVIL_LAND = create(key("block.anvil.land")); + + /** + * {@code minecraft:block.anvil.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANVIL_PLACE = create(key("block.anvil.place")); + + /** + * {@code minecraft:block.anvil.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANVIL_STEP = create(key("block.anvil.step")); + + /** + * {@code minecraft:block.anvil.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ANVIL_USE = create(key("block.anvil.use")); + + /** + * {@code minecraft:block.azalea.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_BREAK = create(key("block.azalea.break")); + + /** + * {@code minecraft:block.azalea.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_FALL = create(key("block.azalea.fall")); + + /** + * {@code minecraft:block.azalea.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_HIT = create(key("block.azalea.hit")); + + /** + * {@code minecraft:block.azalea.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_PLACE = create(key("block.azalea.place")); + + /** + * {@code minecraft:block.azalea.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_STEP = create(key("block.azalea.step")); + + /** + * {@code minecraft:block.azalea_leaves.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_LEAVES_BREAK = create(key("block.azalea_leaves.break")); + + /** + * {@code minecraft:block.azalea_leaves.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_LEAVES_FALL = create(key("block.azalea_leaves.fall")); + + /** + * {@code minecraft:block.azalea_leaves.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_LEAVES_HIT = create(key("block.azalea_leaves.hit")); + + /** + * {@code minecraft:block.azalea_leaves.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_LEAVES_PLACE = create(key("block.azalea_leaves.place")); + + /** + * {@code minecraft:block.azalea_leaves.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_AZALEA_LEAVES_STEP = create(key("block.azalea_leaves.step")); + + /** + * {@code minecraft:block.bamboo.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_BREAK = create(key("block.bamboo.break")); + + /** + * {@code minecraft:block.bamboo.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_FALL = create(key("block.bamboo.fall")); + + /** + * {@code minecraft:block.bamboo.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_HIT = create(key("block.bamboo.hit")); + + /** + * {@code minecraft:block.bamboo.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_PLACE = create(key("block.bamboo.place")); + + /** + * {@code minecraft:block.bamboo.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_STEP = create(key("block.bamboo.step")); + + /** + * {@code minecraft:block.bamboo_sapling.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_SAPLING_BREAK = create(key("block.bamboo_sapling.break")); + + /** + * {@code minecraft:block.bamboo_sapling.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_SAPLING_HIT = create(key("block.bamboo_sapling.hit")); + + /** + * {@code minecraft:block.bamboo_sapling.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_SAPLING_PLACE = create(key("block.bamboo_sapling.place")); + + /** + * {@code minecraft:block.bamboo_wood.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_BREAK = create(key("block.bamboo_wood.break")); + + /** + * {@code minecraft:block.bamboo_wood.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_FALL = create(key("block.bamboo_wood.fall")); + + /** + * {@code minecraft:block.bamboo_wood.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_HIT = create(key("block.bamboo_wood.hit")); + + /** + * {@code minecraft:block.bamboo_wood.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_PLACE = create(key("block.bamboo_wood.place")); + + /** + * {@code minecraft:block.bamboo_wood.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_STEP = create(key("block.bamboo_wood.step")); + + /** + * {@code minecraft:block.bamboo_wood_button.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_BUTTON_CLICK_OFF = create(key("block.bamboo_wood_button.click_off")); + + /** + * {@code minecraft:block.bamboo_wood_button.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_BUTTON_CLICK_ON = create(key("block.bamboo_wood_button.click_on")); + + /** + * {@code minecraft:block.bamboo_wood_door.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_DOOR_CLOSE = create(key("block.bamboo_wood_door.close")); + + /** + * {@code minecraft:block.bamboo_wood_door.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_DOOR_OPEN = create(key("block.bamboo_wood_door.open")); + + /** + * {@code minecraft:block.bamboo_wood_fence_gate.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_FENCE_GATE_CLOSE = create(key("block.bamboo_wood_fence_gate.close")); + + /** + * {@code minecraft:block.bamboo_wood_fence_gate.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_FENCE_GATE_OPEN = create(key("block.bamboo_wood_fence_gate.open")); + + /** + * {@code minecraft:block.bamboo_wood_hanging_sign.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_HANGING_SIGN_BREAK = create(key("block.bamboo_wood_hanging_sign.break")); + + /** + * {@code minecraft:block.bamboo_wood_hanging_sign.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_HANGING_SIGN_FALL = create(key("block.bamboo_wood_hanging_sign.fall")); + + /** + * {@code minecraft:block.bamboo_wood_hanging_sign.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_HANGING_SIGN_HIT = create(key("block.bamboo_wood_hanging_sign.hit")); + + /** + * {@code minecraft:block.bamboo_wood_hanging_sign.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_HANGING_SIGN_PLACE = create(key("block.bamboo_wood_hanging_sign.place")); + + /** + * {@code minecraft:block.bamboo_wood_hanging_sign.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_HANGING_SIGN_STEP = create(key("block.bamboo_wood_hanging_sign.step")); + + /** + * {@code minecraft:block.bamboo_wood_pressure_plate.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_OFF = create(key("block.bamboo_wood_pressure_plate.click_off")); + + /** + * {@code minecraft:block.bamboo_wood_pressure_plate.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_ON = create(key("block.bamboo_wood_pressure_plate.click_on")); + + /** + * {@code minecraft:block.bamboo_wood_trapdoor.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_TRAPDOOR_CLOSE = create(key("block.bamboo_wood_trapdoor.close")); + + /** + * {@code minecraft:block.bamboo_wood_trapdoor.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BAMBOO_WOOD_TRAPDOOR_OPEN = create(key("block.bamboo_wood_trapdoor.open")); + + /** + * {@code minecraft:block.barrel.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BARREL_CLOSE = create(key("block.barrel.close")); + + /** + * {@code minecraft:block.barrel.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BARREL_OPEN = create(key("block.barrel.open")); + + /** + * {@code minecraft:block.basalt.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BASALT_BREAK = create(key("block.basalt.break")); + + /** + * {@code minecraft:block.basalt.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BASALT_FALL = create(key("block.basalt.fall")); + + /** + * {@code minecraft:block.basalt.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BASALT_HIT = create(key("block.basalt.hit")); + + /** + * {@code minecraft:block.basalt.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BASALT_PLACE = create(key("block.basalt.place")); + + /** + * {@code minecraft:block.basalt.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BASALT_STEP = create(key("block.basalt.step")); + + /** + * {@code minecraft:block.beacon.activate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BEACON_ACTIVATE = create(key("block.beacon.activate")); + + /** + * {@code minecraft:block.beacon.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BEACON_AMBIENT = create(key("block.beacon.ambient")); + + /** + * {@code minecraft:block.beacon.deactivate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BEACON_DEACTIVATE = create(key("block.beacon.deactivate")); + + /** + * {@code minecraft:block.beacon.power_select} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BEACON_POWER_SELECT = create(key("block.beacon.power_select")); + + /** + * {@code minecraft:block.beehive.drip} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BEEHIVE_DRIP = create(key("block.beehive.drip")); + + /** + * {@code minecraft:block.beehive.enter} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BEEHIVE_ENTER = create(key("block.beehive.enter")); + + /** + * {@code minecraft:block.beehive.exit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BEEHIVE_EXIT = create(key("block.beehive.exit")); + + /** + * {@code minecraft:block.beehive.shear} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BEEHIVE_SHEAR = create(key("block.beehive.shear")); + + /** + * {@code minecraft:block.beehive.work} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BEEHIVE_WORK = create(key("block.beehive.work")); + + /** + * {@code minecraft:block.bell.resonate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BELL_RESONATE = create(key("block.bell.resonate")); + + /** + * {@code minecraft:block.bell.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BELL_USE = create(key("block.bell.use")); + + /** + * {@code minecraft:block.big_dripleaf.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BIG_DRIPLEAF_BREAK = create(key("block.big_dripleaf.break")); + + /** + * {@code minecraft:block.big_dripleaf.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BIG_DRIPLEAF_FALL = create(key("block.big_dripleaf.fall")); + + /** + * {@code minecraft:block.big_dripleaf.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BIG_DRIPLEAF_HIT = create(key("block.big_dripleaf.hit")); + + /** + * {@code minecraft:block.big_dripleaf.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BIG_DRIPLEAF_PLACE = create(key("block.big_dripleaf.place")); + + /** + * {@code minecraft:block.big_dripleaf.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BIG_DRIPLEAF_STEP = create(key("block.big_dripleaf.step")); + + /** + * {@code minecraft:block.big_dripleaf.tilt_down} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BIG_DRIPLEAF_TILT_DOWN = create(key("block.big_dripleaf.tilt_down")); + + /** + * {@code minecraft:block.big_dripleaf.tilt_up} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BIG_DRIPLEAF_TILT_UP = create(key("block.big_dripleaf.tilt_up")); + + /** + * {@code minecraft:block.blastfurnace.fire_crackle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BLASTFURNACE_FIRE_CRACKLE = create(key("block.blastfurnace.fire_crackle")); + + /** + * {@code minecraft:block.bone_block.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BONE_BLOCK_BREAK = create(key("block.bone_block.break")); + + /** + * {@code minecraft:block.bone_block.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BONE_BLOCK_FALL = create(key("block.bone_block.fall")); + + /** + * {@code minecraft:block.bone_block.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BONE_BLOCK_HIT = create(key("block.bone_block.hit")); + + /** + * {@code minecraft:block.bone_block.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BONE_BLOCK_PLACE = create(key("block.bone_block.place")); + + /** + * {@code minecraft:block.bone_block.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BONE_BLOCK_STEP = create(key("block.bone_block.step")); + + /** + * {@code minecraft:block.brewing_stand.brew} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BREWING_STAND_BREW = create(key("block.brewing_stand.brew")); + + /** + * {@code minecraft:block.bubble_column.bubble_pop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BUBBLE_COLUMN_BUBBLE_POP = create(key("block.bubble_column.bubble_pop")); + + /** + * {@code minecraft:block.bubble_column.upwards_ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BUBBLE_COLUMN_UPWARDS_AMBIENT = create(key("block.bubble_column.upwards_ambient")); + + /** + * {@code minecraft:block.bubble_column.upwards_inside} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BUBBLE_COLUMN_UPWARDS_INSIDE = create(key("block.bubble_column.upwards_inside")); + + /** + * {@code minecraft:block.bubble_column.whirlpool_ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BUBBLE_COLUMN_WHIRLPOOL_AMBIENT = create(key("block.bubble_column.whirlpool_ambient")); + + /** + * {@code minecraft:block.bubble_column.whirlpool_inside} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_BUBBLE_COLUMN_WHIRLPOOL_INSIDE = create(key("block.bubble_column.whirlpool_inside")); + + /** + * {@code minecraft:block.cake.add_candle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CAKE_ADD_CANDLE = create(key("block.cake.add_candle")); + + /** + * {@code minecraft:block.calcite.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CALCITE_BREAK = create(key("block.calcite.break")); + + /** + * {@code minecraft:block.calcite.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CALCITE_FALL = create(key("block.calcite.fall")); + + /** + * {@code minecraft:block.calcite.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CALCITE_HIT = create(key("block.calcite.hit")); + + /** + * {@code minecraft:block.calcite.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CALCITE_PLACE = create(key("block.calcite.place")); + + /** + * {@code minecraft:block.calcite.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CALCITE_STEP = create(key("block.calcite.step")); + + /** + * {@code minecraft:block.campfire.crackle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CAMPFIRE_CRACKLE = create(key("block.campfire.crackle")); + + /** + * {@code minecraft:block.candle.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CANDLE_AMBIENT = create(key("block.candle.ambient")); + + /** + * {@code minecraft:block.candle.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CANDLE_BREAK = create(key("block.candle.break")); + + /** + * {@code minecraft:block.candle.extinguish} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CANDLE_EXTINGUISH = create(key("block.candle.extinguish")); + + /** + * {@code minecraft:block.candle.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CANDLE_FALL = create(key("block.candle.fall")); + + /** + * {@code minecraft:block.candle.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CANDLE_HIT = create(key("block.candle.hit")); + + /** + * {@code minecraft:block.candle.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CANDLE_PLACE = create(key("block.candle.place")); + + /** + * {@code minecraft:block.candle.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CANDLE_STEP = create(key("block.candle.step")); + + /** + * {@code minecraft:block.cave_vines.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CAVE_VINES_BREAK = create(key("block.cave_vines.break")); + + /** + * {@code minecraft:block.cave_vines.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CAVE_VINES_FALL = create(key("block.cave_vines.fall")); + + /** + * {@code minecraft:block.cave_vines.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CAVE_VINES_HIT = create(key("block.cave_vines.hit")); + + /** + * {@code minecraft:block.cave_vines.pick_berries} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CAVE_VINES_PICK_BERRIES = create(key("block.cave_vines.pick_berries")); + + /** + * {@code minecraft:block.cave_vines.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CAVE_VINES_PLACE = create(key("block.cave_vines.place")); + + /** + * {@code minecraft:block.cave_vines.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CAVE_VINES_STEP = create(key("block.cave_vines.step")); + + /** + * {@code minecraft:block.chain.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHAIN_BREAK = create(key("block.chain.break")); + + /** + * {@code minecraft:block.chain.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHAIN_FALL = create(key("block.chain.fall")); + + /** + * {@code minecraft:block.chain.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHAIN_HIT = create(key("block.chain.hit")); + + /** + * {@code minecraft:block.chain.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHAIN_PLACE = create(key("block.chain.place")); + + /** + * {@code minecraft:block.chain.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHAIN_STEP = create(key("block.chain.step")); + + /** + * {@code minecraft:block.cherry_leaves.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_LEAVES_BREAK = create(key("block.cherry_leaves.break")); + + /** + * {@code minecraft:block.cherry_leaves.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_LEAVES_FALL = create(key("block.cherry_leaves.fall")); + + /** + * {@code minecraft:block.cherry_leaves.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_LEAVES_HIT = create(key("block.cherry_leaves.hit")); + + /** + * {@code minecraft:block.cherry_leaves.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_LEAVES_PLACE = create(key("block.cherry_leaves.place")); + + /** + * {@code minecraft:block.cherry_leaves.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_LEAVES_STEP = create(key("block.cherry_leaves.step")); + + /** + * {@code minecraft:block.cherry_sapling.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_SAPLING_BREAK = create(key("block.cherry_sapling.break")); + + /** + * {@code minecraft:block.cherry_sapling.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_SAPLING_FALL = create(key("block.cherry_sapling.fall")); + + /** + * {@code minecraft:block.cherry_sapling.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_SAPLING_HIT = create(key("block.cherry_sapling.hit")); + + /** + * {@code minecraft:block.cherry_sapling.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_SAPLING_PLACE = create(key("block.cherry_sapling.place")); + + /** + * {@code minecraft:block.cherry_sapling.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_SAPLING_STEP = create(key("block.cherry_sapling.step")); + + /** + * {@code minecraft:block.cherry_wood.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_BREAK = create(key("block.cherry_wood.break")); + + /** + * {@code minecraft:block.cherry_wood.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_FALL = create(key("block.cherry_wood.fall")); + + /** + * {@code minecraft:block.cherry_wood.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_HIT = create(key("block.cherry_wood.hit")); + + /** + * {@code minecraft:block.cherry_wood.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_PLACE = create(key("block.cherry_wood.place")); + + /** + * {@code minecraft:block.cherry_wood.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_STEP = create(key("block.cherry_wood.step")); + + /** + * {@code minecraft:block.cherry_wood_button.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_BUTTON_CLICK_OFF = create(key("block.cherry_wood_button.click_off")); + + /** + * {@code minecraft:block.cherry_wood_button.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_BUTTON_CLICK_ON = create(key("block.cherry_wood_button.click_on")); + + /** + * {@code minecraft:block.cherry_wood_door.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_DOOR_CLOSE = create(key("block.cherry_wood_door.close")); + + /** + * {@code minecraft:block.cherry_wood_door.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_DOOR_OPEN = create(key("block.cherry_wood_door.open")); + + /** + * {@code minecraft:block.cherry_wood_fence_gate.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_FENCE_GATE_CLOSE = create(key("block.cherry_wood_fence_gate.close")); + + /** + * {@code minecraft:block.cherry_wood_fence_gate.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_FENCE_GATE_OPEN = create(key("block.cherry_wood_fence_gate.open")); + + /** + * {@code minecraft:block.cherry_wood_hanging_sign.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_HANGING_SIGN_BREAK = create(key("block.cherry_wood_hanging_sign.break")); + + /** + * {@code minecraft:block.cherry_wood_hanging_sign.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_HANGING_SIGN_FALL = create(key("block.cherry_wood_hanging_sign.fall")); + + /** + * {@code minecraft:block.cherry_wood_hanging_sign.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_HANGING_SIGN_HIT = create(key("block.cherry_wood_hanging_sign.hit")); + + /** + * {@code minecraft:block.cherry_wood_hanging_sign.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_HANGING_SIGN_PLACE = create(key("block.cherry_wood_hanging_sign.place")); + + /** + * {@code minecraft:block.cherry_wood_hanging_sign.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_HANGING_SIGN_STEP = create(key("block.cherry_wood_hanging_sign.step")); + + /** + * {@code minecraft:block.cherry_wood_pressure_plate.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_PRESSURE_PLATE_CLICK_OFF = create(key("block.cherry_wood_pressure_plate.click_off")); + + /** + * {@code minecraft:block.cherry_wood_pressure_plate.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_PRESSURE_PLATE_CLICK_ON = create(key("block.cherry_wood_pressure_plate.click_on")); + + /** + * {@code minecraft:block.cherry_wood_trapdoor.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_TRAPDOOR_CLOSE = create(key("block.cherry_wood_trapdoor.close")); + + /** + * {@code minecraft:block.cherry_wood_trapdoor.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHERRY_WOOD_TRAPDOOR_OPEN = create(key("block.cherry_wood_trapdoor.open")); + + /** + * {@code minecraft:block.chest.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHEST_CLOSE = create(key("block.chest.close")); + + /** + * {@code minecraft:block.chest.locked} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHEST_LOCKED = create(key("block.chest.locked")); + + /** + * {@code minecraft:block.chest.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHEST_OPEN = create(key("block.chest.open")); + + /** + * {@code minecraft:block.chiseled_bookshelf.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHISELED_BOOKSHELF_BREAK = create(key("block.chiseled_bookshelf.break")); + + /** + * {@code minecraft:block.chiseled_bookshelf.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHISELED_BOOKSHELF_FALL = create(key("block.chiseled_bookshelf.fall")); + + /** + * {@code minecraft:block.chiseled_bookshelf.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHISELED_BOOKSHELF_HIT = create(key("block.chiseled_bookshelf.hit")); + + /** + * {@code minecraft:block.chiseled_bookshelf.insert} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHISELED_BOOKSHELF_INSERT = create(key("block.chiseled_bookshelf.insert")); + + /** + * {@code minecraft:block.chiseled_bookshelf.insert.enchanted} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHISELED_BOOKSHELF_INSERT_ENCHANTED = create(key("block.chiseled_bookshelf.insert.enchanted")); + + /** + * {@code minecraft:block.chiseled_bookshelf.pickup} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHISELED_BOOKSHELF_PICKUP = create(key("block.chiseled_bookshelf.pickup")); + + /** + * {@code minecraft:block.chiseled_bookshelf.pickup.enchanted} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHISELED_BOOKSHELF_PICKUP_ENCHANTED = create(key("block.chiseled_bookshelf.pickup.enchanted")); + + /** + * {@code minecraft:block.chiseled_bookshelf.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHISELED_BOOKSHELF_PLACE = create(key("block.chiseled_bookshelf.place")); + + /** + * {@code minecraft:block.chiseled_bookshelf.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHISELED_BOOKSHELF_STEP = create(key("block.chiseled_bookshelf.step")); + + /** + * {@code minecraft:block.chorus_flower.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHORUS_FLOWER_DEATH = create(key("block.chorus_flower.death")); + + /** + * {@code minecraft:block.chorus_flower.grow} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CHORUS_FLOWER_GROW = create(key("block.chorus_flower.grow")); + + /** + * {@code minecraft:block.cobweb.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COBWEB_BREAK = create(key("block.cobweb.break")); + + /** + * {@code minecraft:block.cobweb.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COBWEB_FALL = create(key("block.cobweb.fall")); + + /** + * {@code minecraft:block.cobweb.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COBWEB_HIT = create(key("block.cobweb.hit")); + + /** + * {@code minecraft:block.cobweb.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COBWEB_PLACE = create(key("block.cobweb.place")); + + /** + * {@code minecraft:block.cobweb.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COBWEB_STEP = create(key("block.cobweb.step")); + + /** + * {@code minecraft:block.comparator.click} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COMPARATOR_CLICK = create(key("block.comparator.click")); + + /** + * {@code minecraft:block.composter.empty} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COMPOSTER_EMPTY = create(key("block.composter.empty")); + + /** + * {@code minecraft:block.composter.fill} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COMPOSTER_FILL = create(key("block.composter.fill")); + + /** + * {@code minecraft:block.composter.fill_success} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COMPOSTER_FILL_SUCCESS = create(key("block.composter.fill_success")); + + /** + * {@code minecraft:block.composter.ready} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COMPOSTER_READY = create(key("block.composter.ready")); + + /** + * {@code minecraft:block.conduit.activate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CONDUIT_ACTIVATE = create(key("block.conduit.activate")); + + /** + * {@code minecraft:block.conduit.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CONDUIT_AMBIENT = create(key("block.conduit.ambient")); + + /** + * {@code minecraft:block.conduit.ambient.short} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CONDUIT_AMBIENT_SHORT = create(key("block.conduit.ambient.short")); + + /** + * {@code minecraft:block.conduit.attack.target} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CONDUIT_ATTACK_TARGET = create(key("block.conduit.attack.target")); + + /** + * {@code minecraft:block.conduit.deactivate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CONDUIT_DEACTIVATE = create(key("block.conduit.deactivate")); + + /** + * {@code minecraft:block.copper.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_BREAK = create(key("block.copper.break")); + + /** + * {@code minecraft:block.copper.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_FALL = create(key("block.copper.fall")); + + /** + * {@code minecraft:block.copper.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_HIT = create(key("block.copper.hit")); + + /** + * {@code minecraft:block.copper.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_PLACE = create(key("block.copper.place")); + + /** + * {@code minecraft:block.copper.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_STEP = create(key("block.copper.step")); + + /** + * {@code minecraft:block.copper_bulb.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_BULB_BREAK = create(key("block.copper_bulb.break")); + + /** + * {@code minecraft:block.copper_bulb.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_BULB_FALL = create(key("block.copper_bulb.fall")); + + /** + * {@code minecraft:block.copper_bulb.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_BULB_HIT = create(key("block.copper_bulb.hit")); + + /** + * {@code minecraft:block.copper_bulb.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_BULB_PLACE = create(key("block.copper_bulb.place")); + + /** + * {@code minecraft:block.copper_bulb.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_BULB_STEP = create(key("block.copper_bulb.step")); + + /** + * {@code minecraft:block.copper_bulb.turn_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_BULB_TURN_OFF = create(key("block.copper_bulb.turn_off")); + + /** + * {@code minecraft:block.copper_bulb.turn_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_BULB_TURN_ON = create(key("block.copper_bulb.turn_on")); + + /** + * {@code minecraft:block.copper_door.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_DOOR_CLOSE = create(key("block.copper_door.close")); + + /** + * {@code minecraft:block.copper_door.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_DOOR_OPEN = create(key("block.copper_door.open")); + + /** + * {@code minecraft:block.copper_grate.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_GRATE_BREAK = create(key("block.copper_grate.break")); + + /** + * {@code minecraft:block.copper_grate.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_GRATE_FALL = create(key("block.copper_grate.fall")); + + /** + * {@code minecraft:block.copper_grate.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_GRATE_HIT = create(key("block.copper_grate.hit")); + + /** + * {@code minecraft:block.copper_grate.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_GRATE_PLACE = create(key("block.copper_grate.place")); + + /** + * {@code minecraft:block.copper_grate.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_GRATE_STEP = create(key("block.copper_grate.step")); + + /** + * {@code minecraft:block.copper_trapdoor.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_TRAPDOOR_CLOSE = create(key("block.copper_trapdoor.close")); + + /** + * {@code minecraft:block.copper_trapdoor.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_COPPER_TRAPDOOR_OPEN = create(key("block.copper_trapdoor.open")); + + /** + * {@code minecraft:block.coral_block.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CORAL_BLOCK_BREAK = create(key("block.coral_block.break")); + + /** + * {@code minecraft:block.coral_block.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CORAL_BLOCK_FALL = create(key("block.coral_block.fall")); + + /** + * {@code minecraft:block.coral_block.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CORAL_BLOCK_HIT = create(key("block.coral_block.hit")); + + /** + * {@code minecraft:block.coral_block.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CORAL_BLOCK_PLACE = create(key("block.coral_block.place")); + + /** + * {@code minecraft:block.coral_block.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CORAL_BLOCK_STEP = create(key("block.coral_block.step")); + + /** + * {@code minecraft:block.crafter.craft} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CRAFTER_CRAFT = create(key("block.crafter.craft")); + + /** + * {@code minecraft:block.crafter.fail} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CRAFTER_FAIL = create(key("block.crafter.fail")); + + /** + * {@code minecraft:block.creaking_heart.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CREAKING_HEART_BREAK = create(key("block.creaking_heart.break")); + + /** + * {@code minecraft:block.creaking_heart.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CREAKING_HEART_FALL = create(key("block.creaking_heart.fall")); + + /** + * {@code minecraft:block.creaking_heart.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CREAKING_HEART_HIT = create(key("block.creaking_heart.hit")); + + /** + * {@code minecraft:block.creaking_heart.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CREAKING_HEART_HURT = create(key("block.creaking_heart.hurt")); + + /** + * {@code minecraft:block.creaking_heart.idle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CREAKING_HEART_IDLE = create(key("block.creaking_heart.idle")); + + /** + * {@code minecraft:block.creaking_heart.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CREAKING_HEART_PLACE = create(key("block.creaking_heart.place")); + + /** + * {@code minecraft:block.creaking_heart.spawn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CREAKING_HEART_SPAWN = create(key("block.creaking_heart.spawn")); + + /** + * {@code minecraft:block.creaking_heart.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CREAKING_HEART_STEP = create(key("block.creaking_heart.step")); + + /** + * {@code minecraft:block.crop.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_CROP_BREAK = create(key("block.crop.break")); + + /** + * {@code minecraft:block.decorated_pot.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DECORATED_POT_BREAK = create(key("block.decorated_pot.break")); + + /** + * {@code minecraft:block.decorated_pot.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DECORATED_POT_FALL = create(key("block.decorated_pot.fall")); + + /** + * {@code minecraft:block.decorated_pot.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DECORATED_POT_HIT = create(key("block.decorated_pot.hit")); + + /** + * {@code minecraft:block.decorated_pot.insert} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DECORATED_POT_INSERT = create(key("block.decorated_pot.insert")); + + /** + * {@code minecraft:block.decorated_pot.insert_fail} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DECORATED_POT_INSERT_FAIL = create(key("block.decorated_pot.insert_fail")); + + /** + * {@code minecraft:block.decorated_pot.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DECORATED_POT_PLACE = create(key("block.decorated_pot.place")); + + /** + * {@code minecraft:block.decorated_pot.shatter} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DECORATED_POT_SHATTER = create(key("block.decorated_pot.shatter")); + + /** + * {@code minecraft:block.decorated_pot.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DECORATED_POT_STEP = create(key("block.decorated_pot.step")); + + /** + * {@code minecraft:block.deepslate.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_BREAK = create(key("block.deepslate.break")); + + /** + * {@code minecraft:block.deepslate.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_FALL = create(key("block.deepslate.fall")); + + /** + * {@code minecraft:block.deepslate.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_HIT = create(key("block.deepslate.hit")); + + /** + * {@code minecraft:block.deepslate.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_PLACE = create(key("block.deepslate.place")); + + /** + * {@code minecraft:block.deepslate.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_STEP = create(key("block.deepslate.step")); + + /** + * {@code minecraft:block.deepslate_bricks.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_BRICKS_BREAK = create(key("block.deepslate_bricks.break")); + + /** + * {@code minecraft:block.deepslate_bricks.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_BRICKS_FALL = create(key("block.deepslate_bricks.fall")); + + /** + * {@code minecraft:block.deepslate_bricks.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_BRICKS_HIT = create(key("block.deepslate_bricks.hit")); + + /** + * {@code minecraft:block.deepslate_bricks.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_BRICKS_PLACE = create(key("block.deepslate_bricks.place")); + + /** + * {@code minecraft:block.deepslate_bricks.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_BRICKS_STEP = create(key("block.deepslate_bricks.step")); + + /** + * {@code minecraft:block.deepslate_tiles.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_TILES_BREAK = create(key("block.deepslate_tiles.break")); + + /** + * {@code minecraft:block.deepslate_tiles.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_TILES_FALL = create(key("block.deepslate_tiles.fall")); + + /** + * {@code minecraft:block.deepslate_tiles.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_TILES_HIT = create(key("block.deepslate_tiles.hit")); + + /** + * {@code minecraft:block.deepslate_tiles.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_TILES_PLACE = create(key("block.deepslate_tiles.place")); + + /** + * {@code minecraft:block.deepslate_tiles.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DEEPSLATE_TILES_STEP = create(key("block.deepslate_tiles.step")); + + /** + * {@code minecraft:block.dispenser.dispense} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DISPENSER_DISPENSE = create(key("block.dispenser.dispense")); + + /** + * {@code minecraft:block.dispenser.fail} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DISPENSER_FAIL = create(key("block.dispenser.fail")); + + /** + * {@code minecraft:block.dispenser.launch} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DISPENSER_LAUNCH = create(key("block.dispenser.launch")); + + /** + * {@code minecraft:block.dripstone_block.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DRIPSTONE_BLOCK_BREAK = create(key("block.dripstone_block.break")); + + /** + * {@code minecraft:block.dripstone_block.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DRIPSTONE_BLOCK_FALL = create(key("block.dripstone_block.fall")); + + /** + * {@code minecraft:block.dripstone_block.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DRIPSTONE_BLOCK_HIT = create(key("block.dripstone_block.hit")); + + /** + * {@code minecraft:block.dripstone_block.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DRIPSTONE_BLOCK_PLACE = create(key("block.dripstone_block.place")); + + /** + * {@code minecraft:block.dripstone_block.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_DRIPSTONE_BLOCK_STEP = create(key("block.dripstone_block.step")); + + /** + * {@code minecraft:block.enchantment_table.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ENCHANTMENT_TABLE_USE = create(key("block.enchantment_table.use")); + + /** + * {@code minecraft:block.end_gateway.spawn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_END_GATEWAY_SPAWN = create(key("block.end_gateway.spawn")); + + /** + * {@code minecraft:block.end_portal.spawn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_END_PORTAL_SPAWN = create(key("block.end_portal.spawn")); + + /** + * {@code minecraft:block.end_portal_frame.fill} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_END_PORTAL_FRAME_FILL = create(key("block.end_portal_frame.fill")); + + /** + * {@code minecraft:block.ender_chest.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ENDER_CHEST_CLOSE = create(key("block.ender_chest.close")); + + /** + * {@code minecraft:block.ender_chest.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ENDER_CHEST_OPEN = create(key("block.ender_chest.open")); + + /** + * {@code minecraft:block.fence_gate.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FENCE_GATE_CLOSE = create(key("block.fence_gate.close")); + + /** + * {@code minecraft:block.fence_gate.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FENCE_GATE_OPEN = create(key("block.fence_gate.open")); + + /** + * {@code minecraft:block.fire.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FIRE_AMBIENT = create(key("block.fire.ambient")); + + /** + * {@code minecraft:block.fire.extinguish} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FIRE_EXTINGUISH = create(key("block.fire.extinguish")); + + /** + * {@code minecraft:block.flowering_azalea.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FLOWERING_AZALEA_BREAK = create(key("block.flowering_azalea.break")); + + /** + * {@code minecraft:block.flowering_azalea.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FLOWERING_AZALEA_FALL = create(key("block.flowering_azalea.fall")); + + /** + * {@code minecraft:block.flowering_azalea.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FLOWERING_AZALEA_HIT = create(key("block.flowering_azalea.hit")); + + /** + * {@code minecraft:block.flowering_azalea.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FLOWERING_AZALEA_PLACE = create(key("block.flowering_azalea.place")); + + /** + * {@code minecraft:block.flowering_azalea.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FLOWERING_AZALEA_STEP = create(key("block.flowering_azalea.step")); + + /** + * {@code minecraft:block.froglight.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGLIGHT_BREAK = create(key("block.froglight.break")); + + /** + * {@code minecraft:block.froglight.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGLIGHT_FALL = create(key("block.froglight.fall")); + + /** + * {@code minecraft:block.froglight.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGLIGHT_HIT = create(key("block.froglight.hit")); + + /** + * {@code minecraft:block.froglight.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGLIGHT_PLACE = create(key("block.froglight.place")); + + /** + * {@code minecraft:block.froglight.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGLIGHT_STEP = create(key("block.froglight.step")); + + /** + * {@code minecraft:block.frogspawn.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGSPAWN_BREAK = create(key("block.frogspawn.break")); + + /** + * {@code minecraft:block.frogspawn.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGSPAWN_FALL = create(key("block.frogspawn.fall")); + + /** + * {@code minecraft:block.frogspawn.hatch} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGSPAWN_HATCH = create(key("block.frogspawn.hatch")); + + /** + * {@code minecraft:block.frogspawn.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGSPAWN_HIT = create(key("block.frogspawn.hit")); + + /** + * {@code minecraft:block.frogspawn.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGSPAWN_PLACE = create(key("block.frogspawn.place")); + + /** + * {@code minecraft:block.frogspawn.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FROGSPAWN_STEP = create(key("block.frogspawn.step")); + + /** + * {@code minecraft:block.fungus.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FUNGUS_BREAK = create(key("block.fungus.break")); + + /** + * {@code minecraft:block.fungus.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FUNGUS_FALL = create(key("block.fungus.fall")); + + /** + * {@code minecraft:block.fungus.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FUNGUS_HIT = create(key("block.fungus.hit")); + + /** + * {@code minecraft:block.fungus.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FUNGUS_PLACE = create(key("block.fungus.place")); + + /** + * {@code minecraft:block.fungus.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FUNGUS_STEP = create(key("block.fungus.step")); + + /** + * {@code minecraft:block.furnace.fire_crackle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_FURNACE_FIRE_CRACKLE = create(key("block.furnace.fire_crackle")); + + /** + * {@code minecraft:block.gilded_blackstone.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GILDED_BLACKSTONE_BREAK = create(key("block.gilded_blackstone.break")); + + /** + * {@code minecraft:block.gilded_blackstone.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GILDED_BLACKSTONE_FALL = create(key("block.gilded_blackstone.fall")); + + /** + * {@code minecraft:block.gilded_blackstone.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GILDED_BLACKSTONE_HIT = create(key("block.gilded_blackstone.hit")); + + /** + * {@code minecraft:block.gilded_blackstone.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GILDED_BLACKSTONE_PLACE = create(key("block.gilded_blackstone.place")); + + /** + * {@code minecraft:block.gilded_blackstone.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GILDED_BLACKSTONE_STEP = create(key("block.gilded_blackstone.step")); + + /** + * {@code minecraft:block.glass.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GLASS_BREAK = create(key("block.glass.break")); + + /** + * {@code minecraft:block.glass.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GLASS_FALL = create(key("block.glass.fall")); + + /** + * {@code minecraft:block.glass.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GLASS_HIT = create(key("block.glass.hit")); + + /** + * {@code minecraft:block.glass.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GLASS_PLACE = create(key("block.glass.place")); + + /** + * {@code minecraft:block.glass.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GLASS_STEP = create(key("block.glass.step")); + + /** + * {@code minecraft:block.grass.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRASS_BREAK = create(key("block.grass.break")); + + /** + * {@code minecraft:block.grass.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRASS_FALL = create(key("block.grass.fall")); + + /** + * {@code minecraft:block.grass.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRASS_HIT = create(key("block.grass.hit")); + + /** + * {@code minecraft:block.grass.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRASS_PLACE = create(key("block.grass.place")); + + /** + * {@code minecraft:block.grass.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRASS_STEP = create(key("block.grass.step")); + + /** + * {@code minecraft:block.gravel.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRAVEL_BREAK = create(key("block.gravel.break")); + + /** + * {@code minecraft:block.gravel.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRAVEL_FALL = create(key("block.gravel.fall")); + + /** + * {@code minecraft:block.gravel.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRAVEL_HIT = create(key("block.gravel.hit")); + + /** + * {@code minecraft:block.gravel.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRAVEL_PLACE = create(key("block.gravel.place")); + + /** + * {@code minecraft:block.gravel.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRAVEL_STEP = create(key("block.gravel.step")); + + /** + * {@code minecraft:block.grindstone.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GRINDSTONE_USE = create(key("block.grindstone.use")); + + /** + * {@code minecraft:block.growing_plant.crop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_GROWING_PLANT_CROP = create(key("block.growing_plant.crop")); + + /** + * {@code minecraft:block.hanging_roots.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_ROOTS_BREAK = create(key("block.hanging_roots.break")); + + /** + * {@code minecraft:block.hanging_roots.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_ROOTS_FALL = create(key("block.hanging_roots.fall")); + + /** + * {@code minecraft:block.hanging_roots.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_ROOTS_HIT = create(key("block.hanging_roots.hit")); + + /** + * {@code minecraft:block.hanging_roots.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_ROOTS_PLACE = create(key("block.hanging_roots.place")); + + /** + * {@code minecraft:block.hanging_roots.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_ROOTS_STEP = create(key("block.hanging_roots.step")); + + /** + * {@code minecraft:block.hanging_sign.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_SIGN_BREAK = create(key("block.hanging_sign.break")); + + /** + * {@code minecraft:block.hanging_sign.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_SIGN_FALL = create(key("block.hanging_sign.fall")); + + /** + * {@code minecraft:block.hanging_sign.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_SIGN_HIT = create(key("block.hanging_sign.hit")); + + /** + * {@code minecraft:block.hanging_sign.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_SIGN_PLACE = create(key("block.hanging_sign.place")); + + /** + * {@code minecraft:block.hanging_sign.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_SIGN_STEP = create(key("block.hanging_sign.step")); + + /** + * {@code minecraft:block.hanging_sign.waxed_interact_fail} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HANGING_SIGN_WAXED_INTERACT_FAIL = create(key("block.hanging_sign.waxed_interact_fail")); + + /** + * {@code minecraft:block.heavy_core.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HEAVY_CORE_BREAK = create(key("block.heavy_core.break")); + + /** + * {@code minecraft:block.heavy_core.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HEAVY_CORE_FALL = create(key("block.heavy_core.fall")); + + /** + * {@code minecraft:block.heavy_core.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HEAVY_CORE_HIT = create(key("block.heavy_core.hit")); + + /** + * {@code minecraft:block.heavy_core.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HEAVY_CORE_PLACE = create(key("block.heavy_core.place")); + + /** + * {@code minecraft:block.heavy_core.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HEAVY_CORE_STEP = create(key("block.heavy_core.step")); + + /** + * {@code minecraft:block.honey_block.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HONEY_BLOCK_BREAK = create(key("block.honey_block.break")); + + /** + * {@code minecraft:block.honey_block.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HONEY_BLOCK_FALL = create(key("block.honey_block.fall")); + + /** + * {@code minecraft:block.honey_block.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HONEY_BLOCK_HIT = create(key("block.honey_block.hit")); + + /** + * {@code minecraft:block.honey_block.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HONEY_BLOCK_PLACE = create(key("block.honey_block.place")); + + /** + * {@code minecraft:block.honey_block.slide} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HONEY_BLOCK_SLIDE = create(key("block.honey_block.slide")); + + /** + * {@code minecraft:block.honey_block.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_HONEY_BLOCK_STEP = create(key("block.honey_block.step")); + + /** + * {@code minecraft:block.iron_door.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_IRON_DOOR_CLOSE = create(key("block.iron_door.close")); + + /** + * {@code minecraft:block.iron_door.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_IRON_DOOR_OPEN = create(key("block.iron_door.open")); + + /** + * {@code minecraft:block.iron_trapdoor.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_IRON_TRAPDOOR_CLOSE = create(key("block.iron_trapdoor.close")); + + /** + * {@code minecraft:block.iron_trapdoor.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_IRON_TRAPDOOR_OPEN = create(key("block.iron_trapdoor.open")); + + /** + * {@code minecraft:block.ladder.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LADDER_BREAK = create(key("block.ladder.break")); + + /** + * {@code minecraft:block.ladder.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LADDER_FALL = create(key("block.ladder.fall")); + + /** + * {@code minecraft:block.ladder.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LADDER_HIT = create(key("block.ladder.hit")); + + /** + * {@code minecraft:block.ladder.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LADDER_PLACE = create(key("block.ladder.place")); + + /** + * {@code minecraft:block.ladder.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LADDER_STEP = create(key("block.ladder.step")); + + /** + * {@code minecraft:block.lantern.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LANTERN_BREAK = create(key("block.lantern.break")); + + /** + * {@code minecraft:block.lantern.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LANTERN_FALL = create(key("block.lantern.fall")); + + /** + * {@code minecraft:block.lantern.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LANTERN_HIT = create(key("block.lantern.hit")); + + /** + * {@code minecraft:block.lantern.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LANTERN_PLACE = create(key("block.lantern.place")); + + /** + * {@code minecraft:block.lantern.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LANTERN_STEP = create(key("block.lantern.step")); + + /** + * {@code minecraft:block.large_amethyst_bud.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LARGE_AMETHYST_BUD_BREAK = create(key("block.large_amethyst_bud.break")); + + /** + * {@code minecraft:block.large_amethyst_bud.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LARGE_AMETHYST_BUD_PLACE = create(key("block.large_amethyst_bud.place")); + + /** + * {@code minecraft:block.lava.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LAVA_AMBIENT = create(key("block.lava.ambient")); + + /** + * {@code minecraft:block.lava.extinguish} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LAVA_EXTINGUISH = create(key("block.lava.extinguish")); + + /** + * {@code minecraft:block.lava.pop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LAVA_POP = create(key("block.lava.pop")); + + /** + * {@code minecraft:block.lever.click} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LEVER_CLICK = create(key("block.lever.click")); + + /** + * {@code minecraft:block.lily_pad.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LILY_PAD_PLACE = create(key("block.lily_pad.place")); + + /** + * {@code minecraft:block.lodestone.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LODESTONE_BREAK = create(key("block.lodestone.break")); + + /** + * {@code minecraft:block.lodestone.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LODESTONE_FALL = create(key("block.lodestone.fall")); + + /** + * {@code minecraft:block.lodestone.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LODESTONE_HIT = create(key("block.lodestone.hit")); + + /** + * {@code minecraft:block.lodestone.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LODESTONE_PLACE = create(key("block.lodestone.place")); + + /** + * {@code minecraft:block.lodestone.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_LODESTONE_STEP = create(key("block.lodestone.step")); + + /** + * {@code minecraft:block.mangrove_roots.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MANGROVE_ROOTS_BREAK = create(key("block.mangrove_roots.break")); + + /** + * {@code minecraft:block.mangrove_roots.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MANGROVE_ROOTS_FALL = create(key("block.mangrove_roots.fall")); + + /** + * {@code minecraft:block.mangrove_roots.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MANGROVE_ROOTS_HIT = create(key("block.mangrove_roots.hit")); + + /** + * {@code minecraft:block.mangrove_roots.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MANGROVE_ROOTS_PLACE = create(key("block.mangrove_roots.place")); + + /** + * {@code minecraft:block.mangrove_roots.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MANGROVE_ROOTS_STEP = create(key("block.mangrove_roots.step")); + + /** + * {@code minecraft:block.medium_amethyst_bud.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MEDIUM_AMETHYST_BUD_BREAK = create(key("block.medium_amethyst_bud.break")); + + /** + * {@code minecraft:block.medium_amethyst_bud.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MEDIUM_AMETHYST_BUD_PLACE = create(key("block.medium_amethyst_bud.place")); + + /** + * {@code minecraft:block.metal.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_METAL_BREAK = create(key("block.metal.break")); + + /** + * {@code minecraft:block.metal.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_METAL_FALL = create(key("block.metal.fall")); + + /** + * {@code minecraft:block.metal.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_METAL_HIT = create(key("block.metal.hit")); + + /** + * {@code minecraft:block.metal.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_METAL_PLACE = create(key("block.metal.place")); + + /** + * {@code minecraft:block.metal.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_METAL_STEP = create(key("block.metal.step")); + + /** + * {@code minecraft:block.metal_pressure_plate.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_METAL_PRESSURE_PLATE_CLICK_OFF = create(key("block.metal_pressure_plate.click_off")); + + /** + * {@code minecraft:block.metal_pressure_plate.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_METAL_PRESSURE_PLATE_CLICK_ON = create(key("block.metal_pressure_plate.click_on")); + + /** + * {@code minecraft:block.moss.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_BREAK = create(key("block.moss.break")); + + /** + * {@code minecraft:block.moss.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_FALL = create(key("block.moss.fall")); + + /** + * {@code minecraft:block.moss.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_HIT = create(key("block.moss.hit")); + + /** + * {@code minecraft:block.moss.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_PLACE = create(key("block.moss.place")); + + /** + * {@code minecraft:block.moss.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_STEP = create(key("block.moss.step")); + + /** + * {@code minecraft:block.moss_carpet.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_CARPET_BREAK = create(key("block.moss_carpet.break")); + + /** + * {@code minecraft:block.moss_carpet.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_CARPET_FALL = create(key("block.moss_carpet.fall")); + + /** + * {@code minecraft:block.moss_carpet.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_CARPET_HIT = create(key("block.moss_carpet.hit")); + + /** + * {@code minecraft:block.moss_carpet.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_CARPET_PLACE = create(key("block.moss_carpet.place")); + + /** + * {@code minecraft:block.moss_carpet.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MOSS_CARPET_STEP = create(key("block.moss_carpet.step")); + + /** + * {@code minecraft:block.mud.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_BREAK = create(key("block.mud.break")); + + /** + * {@code minecraft:block.mud.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_FALL = create(key("block.mud.fall")); + + /** + * {@code minecraft:block.mud.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_HIT = create(key("block.mud.hit")); + + /** + * {@code minecraft:block.mud.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_PLACE = create(key("block.mud.place")); + + /** + * {@code minecraft:block.mud.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_STEP = create(key("block.mud.step")); + + /** + * {@code minecraft:block.mud_bricks.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_BRICKS_BREAK = create(key("block.mud_bricks.break")); + + /** + * {@code minecraft:block.mud_bricks.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_BRICKS_FALL = create(key("block.mud_bricks.fall")); + + /** + * {@code minecraft:block.mud_bricks.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_BRICKS_HIT = create(key("block.mud_bricks.hit")); + + /** + * {@code minecraft:block.mud_bricks.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_BRICKS_PLACE = create(key("block.mud_bricks.place")); + + /** + * {@code minecraft:block.mud_bricks.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUD_BRICKS_STEP = create(key("block.mud_bricks.step")); + + /** + * {@code minecraft:block.muddy_mangrove_roots.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUDDY_MANGROVE_ROOTS_BREAK = create(key("block.muddy_mangrove_roots.break")); + + /** + * {@code minecraft:block.muddy_mangrove_roots.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUDDY_MANGROVE_ROOTS_FALL = create(key("block.muddy_mangrove_roots.fall")); + + /** + * {@code minecraft:block.muddy_mangrove_roots.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUDDY_MANGROVE_ROOTS_HIT = create(key("block.muddy_mangrove_roots.hit")); + + /** + * {@code minecraft:block.muddy_mangrove_roots.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUDDY_MANGROVE_ROOTS_PLACE = create(key("block.muddy_mangrove_roots.place")); + + /** + * {@code minecraft:block.muddy_mangrove_roots.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_MUDDY_MANGROVE_ROOTS_STEP = create(key("block.muddy_mangrove_roots.step")); + + /** + * {@code minecraft:block.nether_bricks.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_BRICKS_BREAK = create(key("block.nether_bricks.break")); + + /** + * {@code minecraft:block.nether_bricks.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_BRICKS_FALL = create(key("block.nether_bricks.fall")); + + /** + * {@code minecraft:block.nether_bricks.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_BRICKS_HIT = create(key("block.nether_bricks.hit")); + + /** + * {@code minecraft:block.nether_bricks.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_BRICKS_PLACE = create(key("block.nether_bricks.place")); + + /** + * {@code minecraft:block.nether_bricks.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_BRICKS_STEP = create(key("block.nether_bricks.step")); + + /** + * {@code minecraft:block.nether_gold_ore.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_GOLD_ORE_BREAK = create(key("block.nether_gold_ore.break")); + + /** + * {@code minecraft:block.nether_gold_ore.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_GOLD_ORE_FALL = create(key("block.nether_gold_ore.fall")); + + /** + * {@code minecraft:block.nether_gold_ore.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_GOLD_ORE_HIT = create(key("block.nether_gold_ore.hit")); + + /** + * {@code minecraft:block.nether_gold_ore.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_GOLD_ORE_PLACE = create(key("block.nether_gold_ore.place")); + + /** + * {@code minecraft:block.nether_gold_ore.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_GOLD_ORE_STEP = create(key("block.nether_gold_ore.step")); + + /** + * {@code minecraft:block.nether_ore.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_ORE_BREAK = create(key("block.nether_ore.break")); + + /** + * {@code minecraft:block.nether_ore.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_ORE_FALL = create(key("block.nether_ore.fall")); + + /** + * {@code minecraft:block.nether_ore.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_ORE_HIT = create(key("block.nether_ore.hit")); + + /** + * {@code minecraft:block.nether_ore.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_ORE_PLACE = create(key("block.nether_ore.place")); + + /** + * {@code minecraft:block.nether_ore.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_ORE_STEP = create(key("block.nether_ore.step")); + + /** + * {@code minecraft:block.nether_sprouts.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_SPROUTS_BREAK = create(key("block.nether_sprouts.break")); + + /** + * {@code minecraft:block.nether_sprouts.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_SPROUTS_FALL = create(key("block.nether_sprouts.fall")); + + /** + * {@code minecraft:block.nether_sprouts.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_SPROUTS_HIT = create(key("block.nether_sprouts.hit")); + + /** + * {@code minecraft:block.nether_sprouts.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_SPROUTS_PLACE = create(key("block.nether_sprouts.place")); + + /** + * {@code minecraft:block.nether_sprouts.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_SPROUTS_STEP = create(key("block.nether_sprouts.step")); + + /** + * {@code minecraft:block.nether_wart.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WART_BREAK = create(key("block.nether_wart.break")); + + /** + * {@code minecraft:block.nether_wood.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_BREAK = create(key("block.nether_wood.break")); + + /** + * {@code minecraft:block.nether_wood.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_FALL = create(key("block.nether_wood.fall")); + + /** + * {@code minecraft:block.nether_wood.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_HIT = create(key("block.nether_wood.hit")); + + /** + * {@code minecraft:block.nether_wood.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_PLACE = create(key("block.nether_wood.place")); + + /** + * {@code minecraft:block.nether_wood.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_STEP = create(key("block.nether_wood.step")); + + /** + * {@code minecraft:block.nether_wood_button.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_BUTTON_CLICK_OFF = create(key("block.nether_wood_button.click_off")); + + /** + * {@code minecraft:block.nether_wood_button.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_BUTTON_CLICK_ON = create(key("block.nether_wood_button.click_on")); + + /** + * {@code minecraft:block.nether_wood_door.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_DOOR_CLOSE = create(key("block.nether_wood_door.close")); + + /** + * {@code minecraft:block.nether_wood_door.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_DOOR_OPEN = create(key("block.nether_wood_door.open")); + + /** + * {@code minecraft:block.nether_wood_fence_gate.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_FENCE_GATE_CLOSE = create(key("block.nether_wood_fence_gate.close")); + + /** + * {@code minecraft:block.nether_wood_fence_gate.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_FENCE_GATE_OPEN = create(key("block.nether_wood_fence_gate.open")); + + /** + * {@code minecraft:block.nether_wood_hanging_sign.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_HANGING_SIGN_BREAK = create(key("block.nether_wood_hanging_sign.break")); + + /** + * {@code minecraft:block.nether_wood_hanging_sign.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_HANGING_SIGN_FALL = create(key("block.nether_wood_hanging_sign.fall")); + + /** + * {@code minecraft:block.nether_wood_hanging_sign.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_HANGING_SIGN_HIT = create(key("block.nether_wood_hanging_sign.hit")); + + /** + * {@code minecraft:block.nether_wood_hanging_sign.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_HANGING_SIGN_PLACE = create(key("block.nether_wood_hanging_sign.place")); + + /** + * {@code minecraft:block.nether_wood_hanging_sign.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_HANGING_SIGN_STEP = create(key("block.nether_wood_hanging_sign.step")); + + /** + * {@code minecraft:block.nether_wood_pressure_plate.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_PRESSURE_PLATE_CLICK_OFF = create(key("block.nether_wood_pressure_plate.click_off")); + + /** + * {@code minecraft:block.nether_wood_pressure_plate.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_PRESSURE_PLATE_CLICK_ON = create(key("block.nether_wood_pressure_plate.click_on")); + + /** + * {@code minecraft:block.nether_wood_trapdoor.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_TRAPDOOR_CLOSE = create(key("block.nether_wood_trapdoor.close")); + + /** + * {@code minecraft:block.nether_wood_trapdoor.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHER_WOOD_TRAPDOOR_OPEN = create(key("block.nether_wood_trapdoor.open")); + + /** + * {@code minecraft:block.netherite_block.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERITE_BLOCK_BREAK = create(key("block.netherite_block.break")); + + /** + * {@code minecraft:block.netherite_block.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERITE_BLOCK_FALL = create(key("block.netherite_block.fall")); + + /** + * {@code minecraft:block.netherite_block.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERITE_BLOCK_HIT = create(key("block.netherite_block.hit")); + + /** + * {@code minecraft:block.netherite_block.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERITE_BLOCK_PLACE = create(key("block.netherite_block.place")); + + /** + * {@code minecraft:block.netherite_block.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERITE_BLOCK_STEP = create(key("block.netherite_block.step")); + + /** + * {@code minecraft:block.netherrack.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERRACK_BREAK = create(key("block.netherrack.break")); + + /** + * {@code minecraft:block.netherrack.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERRACK_FALL = create(key("block.netherrack.fall")); + + /** + * {@code minecraft:block.netherrack.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERRACK_HIT = create(key("block.netherrack.hit")); + + /** + * {@code minecraft:block.netherrack.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERRACK_PLACE = create(key("block.netherrack.place")); + + /** + * {@code minecraft:block.netherrack.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NETHERRACK_STEP = create(key("block.netherrack.step")); + + /** + * {@code minecraft:block.note_block.banjo} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_BANJO = create(key("block.note_block.banjo")); + + /** + * {@code minecraft:block.note_block.basedrum} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_BASEDRUM = create(key("block.note_block.basedrum")); + + /** + * {@code minecraft:block.note_block.bass} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_BASS = create(key("block.note_block.bass")); + + /** + * {@code minecraft:block.note_block.bell} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_BELL = create(key("block.note_block.bell")); + + /** + * {@code minecraft:block.note_block.bit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_BIT = create(key("block.note_block.bit")); + + /** + * {@code minecraft:block.note_block.chime} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_CHIME = create(key("block.note_block.chime")); + + /** + * {@code minecraft:block.note_block.cow_bell} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_COW_BELL = create(key("block.note_block.cow_bell")); + + /** + * {@code minecraft:block.note_block.didgeridoo} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_DIDGERIDOO = create(key("block.note_block.didgeridoo")); + + /** + * {@code minecraft:block.note_block.flute} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_FLUTE = create(key("block.note_block.flute")); + + /** + * {@code minecraft:block.note_block.guitar} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_GUITAR = create(key("block.note_block.guitar")); + + /** + * {@code minecraft:block.note_block.harp} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_HARP = create(key("block.note_block.harp")); + + /** + * {@code minecraft:block.note_block.hat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_HAT = create(key("block.note_block.hat")); + + /** + * {@code minecraft:block.note_block.imitate.creeper} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_IMITATE_CREEPER = create(key("block.note_block.imitate.creeper")); + + /** + * {@code minecraft:block.note_block.imitate.ender_dragon} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_IMITATE_ENDER_DRAGON = create(key("block.note_block.imitate.ender_dragon")); + + /** + * {@code minecraft:block.note_block.imitate.piglin} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_IMITATE_PIGLIN = create(key("block.note_block.imitate.piglin")); + + /** + * {@code minecraft:block.note_block.imitate.skeleton} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_IMITATE_SKELETON = create(key("block.note_block.imitate.skeleton")); + + /** + * {@code minecraft:block.note_block.imitate.wither_skeleton} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_IMITATE_WITHER_SKELETON = create(key("block.note_block.imitate.wither_skeleton")); + + /** + * {@code minecraft:block.note_block.imitate.zombie} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_IMITATE_ZOMBIE = create(key("block.note_block.imitate.zombie")); + + /** + * {@code minecraft:block.note_block.iron_xylophone} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_IRON_XYLOPHONE = create(key("block.note_block.iron_xylophone")); + + /** + * {@code minecraft:block.note_block.pling} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_PLING = create(key("block.note_block.pling")); + + /** + * {@code minecraft:block.note_block.snare} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_SNARE = create(key("block.note_block.snare")); + + /** + * {@code minecraft:block.note_block.xylophone} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NOTE_BLOCK_XYLOPHONE = create(key("block.note_block.xylophone")); + + /** + * {@code minecraft:block.nylium.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NYLIUM_BREAK = create(key("block.nylium.break")); + + /** + * {@code minecraft:block.nylium.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NYLIUM_FALL = create(key("block.nylium.fall")); + + /** + * {@code minecraft:block.nylium.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NYLIUM_HIT = create(key("block.nylium.hit")); + + /** + * {@code minecraft:block.nylium.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NYLIUM_PLACE = create(key("block.nylium.place")); + + /** + * {@code minecraft:block.nylium.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_NYLIUM_STEP = create(key("block.nylium.step")); + + /** + * {@code minecraft:block.packed_mud.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PACKED_MUD_BREAK = create(key("block.packed_mud.break")); + + /** + * {@code minecraft:block.packed_mud.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PACKED_MUD_FALL = create(key("block.packed_mud.fall")); + + /** + * {@code minecraft:block.packed_mud.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PACKED_MUD_HIT = create(key("block.packed_mud.hit")); + + /** + * {@code minecraft:block.packed_mud.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PACKED_MUD_PLACE = create(key("block.packed_mud.place")); + + /** + * {@code minecraft:block.packed_mud.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PACKED_MUD_STEP = create(key("block.packed_mud.step")); + + /** + * {@code minecraft:block.pale_hanging_moss.idle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PALE_HANGING_MOSS_IDLE = create(key("block.pale_hanging_moss.idle")); + + /** + * {@code minecraft:block.pink_petals.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PINK_PETALS_BREAK = create(key("block.pink_petals.break")); + + /** + * {@code minecraft:block.pink_petals.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PINK_PETALS_FALL = create(key("block.pink_petals.fall")); + + /** + * {@code minecraft:block.pink_petals.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PINK_PETALS_HIT = create(key("block.pink_petals.hit")); + + /** + * {@code minecraft:block.pink_petals.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PINK_PETALS_PLACE = create(key("block.pink_petals.place")); + + /** + * {@code minecraft:block.pink_petals.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PINK_PETALS_STEP = create(key("block.pink_petals.step")); + + /** + * {@code minecraft:block.piston.contract} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PISTON_CONTRACT = create(key("block.piston.contract")); + + /** + * {@code minecraft:block.piston.extend} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PISTON_EXTEND = create(key("block.piston.extend")); + + /** + * {@code minecraft:block.pointed_dripstone.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_BREAK = create(key("block.pointed_dripstone.break")); + + /** + * {@code minecraft:block.pointed_dripstone.drip_lava} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_DRIP_LAVA = create(key("block.pointed_dripstone.drip_lava")); + + /** + * {@code minecraft:block.pointed_dripstone.drip_lava_into_cauldron} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_DRIP_LAVA_INTO_CAULDRON = create(key("block.pointed_dripstone.drip_lava_into_cauldron")); + + /** + * {@code minecraft:block.pointed_dripstone.drip_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_DRIP_WATER = create(key("block.pointed_dripstone.drip_water")); + + /** + * {@code minecraft:block.pointed_dripstone.drip_water_into_cauldron} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_DRIP_WATER_INTO_CAULDRON = create(key("block.pointed_dripstone.drip_water_into_cauldron")); + + /** + * {@code minecraft:block.pointed_dripstone.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_FALL = create(key("block.pointed_dripstone.fall")); + + /** + * {@code minecraft:block.pointed_dripstone.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_HIT = create(key("block.pointed_dripstone.hit")); + + /** + * {@code minecraft:block.pointed_dripstone.land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_LAND = create(key("block.pointed_dripstone.land")); + + /** + * {@code minecraft:block.pointed_dripstone.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_PLACE = create(key("block.pointed_dripstone.place")); + + /** + * {@code minecraft:block.pointed_dripstone.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POINTED_DRIPSTONE_STEP = create(key("block.pointed_dripstone.step")); + + /** + * {@code minecraft:block.polished_deepslate.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_DEEPSLATE_BREAK = create(key("block.polished_deepslate.break")); + + /** + * {@code minecraft:block.polished_deepslate.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_DEEPSLATE_FALL = create(key("block.polished_deepslate.fall")); + + /** + * {@code minecraft:block.polished_deepslate.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_DEEPSLATE_HIT = create(key("block.polished_deepslate.hit")); + + /** + * {@code minecraft:block.polished_deepslate.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_DEEPSLATE_PLACE = create(key("block.polished_deepslate.place")); + + /** + * {@code minecraft:block.polished_deepslate.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_DEEPSLATE_STEP = create(key("block.polished_deepslate.step")); + + /** + * {@code minecraft:block.polished_tuff.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_TUFF_BREAK = create(key("block.polished_tuff.break")); + + /** + * {@code minecraft:block.polished_tuff.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_TUFF_FALL = create(key("block.polished_tuff.fall")); + + /** + * {@code minecraft:block.polished_tuff.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_TUFF_HIT = create(key("block.polished_tuff.hit")); + + /** + * {@code minecraft:block.polished_tuff.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_TUFF_PLACE = create(key("block.polished_tuff.place")); + + /** + * {@code minecraft:block.polished_tuff.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POLISHED_TUFF_STEP = create(key("block.polished_tuff.step")); + + /** + * {@code minecraft:block.portal.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PORTAL_AMBIENT = create(key("block.portal.ambient")); + + /** + * {@code minecraft:block.portal.travel} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PORTAL_TRAVEL = create(key("block.portal.travel")); + + /** + * {@code minecraft:block.portal.trigger} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PORTAL_TRIGGER = create(key("block.portal.trigger")); + + /** + * {@code minecraft:block.powder_snow.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POWDER_SNOW_BREAK = create(key("block.powder_snow.break")); + + /** + * {@code minecraft:block.powder_snow.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POWDER_SNOW_FALL = create(key("block.powder_snow.fall")); + + /** + * {@code minecraft:block.powder_snow.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POWDER_SNOW_HIT = create(key("block.powder_snow.hit")); + + /** + * {@code minecraft:block.powder_snow.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POWDER_SNOW_PLACE = create(key("block.powder_snow.place")); + + /** + * {@code minecraft:block.powder_snow.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_POWDER_SNOW_STEP = create(key("block.powder_snow.step")); + + /** + * {@code minecraft:block.pumpkin.carve} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_PUMPKIN_CARVE = create(key("block.pumpkin.carve")); + + /** + * {@code minecraft:block.redstone_torch.burnout} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_REDSTONE_TORCH_BURNOUT = create(key("block.redstone_torch.burnout")); + + /** + * {@code minecraft:block.respawn_anchor.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_RESPAWN_ANCHOR_AMBIENT = create(key("block.respawn_anchor.ambient")); + + /** + * {@code minecraft:block.respawn_anchor.charge} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_RESPAWN_ANCHOR_CHARGE = create(key("block.respawn_anchor.charge")); + + /** + * {@code minecraft:block.respawn_anchor.deplete} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_RESPAWN_ANCHOR_DEPLETE = create(key("block.respawn_anchor.deplete")); + + /** + * {@code minecraft:block.respawn_anchor.set_spawn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_RESPAWN_ANCHOR_SET_SPAWN = create(key("block.respawn_anchor.set_spawn")); + + /** + * {@code minecraft:block.rooted_dirt.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTED_DIRT_BREAK = create(key("block.rooted_dirt.break")); + + /** + * {@code minecraft:block.rooted_dirt.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTED_DIRT_FALL = create(key("block.rooted_dirt.fall")); + + /** + * {@code minecraft:block.rooted_dirt.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTED_DIRT_HIT = create(key("block.rooted_dirt.hit")); + + /** + * {@code minecraft:block.rooted_dirt.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTED_DIRT_PLACE = create(key("block.rooted_dirt.place")); + + /** + * {@code minecraft:block.rooted_dirt.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTED_DIRT_STEP = create(key("block.rooted_dirt.step")); + + /** + * {@code minecraft:block.roots.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTS_BREAK = create(key("block.roots.break")); + + /** + * {@code minecraft:block.roots.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTS_FALL = create(key("block.roots.fall")); + + /** + * {@code minecraft:block.roots.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTS_HIT = create(key("block.roots.hit")); + + /** + * {@code minecraft:block.roots.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTS_PLACE = create(key("block.roots.place")); + + /** + * {@code minecraft:block.roots.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_ROOTS_STEP = create(key("block.roots.step")); + + /** + * {@code minecraft:block.sand.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SAND_BREAK = create(key("block.sand.break")); + + /** + * {@code minecraft:block.sand.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SAND_FALL = create(key("block.sand.fall")); + + /** + * {@code minecraft:block.sand.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SAND_HIT = create(key("block.sand.hit")); + + /** + * {@code minecraft:block.sand.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SAND_PLACE = create(key("block.sand.place")); + + /** + * {@code minecraft:block.sand.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SAND_STEP = create(key("block.sand.step")); + + /** + * {@code minecraft:block.scaffolding.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCAFFOLDING_BREAK = create(key("block.scaffolding.break")); + + /** + * {@code minecraft:block.scaffolding.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCAFFOLDING_FALL = create(key("block.scaffolding.fall")); + + /** + * {@code minecraft:block.scaffolding.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCAFFOLDING_HIT = create(key("block.scaffolding.hit")); + + /** + * {@code minecraft:block.scaffolding.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCAFFOLDING_PLACE = create(key("block.scaffolding.place")); + + /** + * {@code minecraft:block.scaffolding.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCAFFOLDING_STEP = create(key("block.scaffolding.step")); + + /** + * {@code minecraft:block.sculk.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_BREAK = create(key("block.sculk.break")); + + /** + * {@code minecraft:block.sculk.charge} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_CHARGE = create(key("block.sculk.charge")); + + /** + * {@code minecraft:block.sculk.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_FALL = create(key("block.sculk.fall")); + + /** + * {@code minecraft:block.sculk.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_HIT = create(key("block.sculk.hit")); + + /** + * {@code minecraft:block.sculk.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_PLACE = create(key("block.sculk.place")); + + /** + * {@code minecraft:block.sculk.spread} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SPREAD = create(key("block.sculk.spread")); + + /** + * {@code minecraft:block.sculk.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_STEP = create(key("block.sculk.step")); + + /** + * {@code minecraft:block.sculk_catalyst.bloom} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_CATALYST_BLOOM = create(key("block.sculk_catalyst.bloom")); + + /** + * {@code minecraft:block.sculk_catalyst.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_CATALYST_BREAK = create(key("block.sculk_catalyst.break")); + + /** + * {@code minecraft:block.sculk_catalyst.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_CATALYST_FALL = create(key("block.sculk_catalyst.fall")); + + /** + * {@code minecraft:block.sculk_catalyst.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_CATALYST_HIT = create(key("block.sculk_catalyst.hit")); + + /** + * {@code minecraft:block.sculk_catalyst.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_CATALYST_PLACE = create(key("block.sculk_catalyst.place")); + + /** + * {@code minecraft:block.sculk_catalyst.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_CATALYST_STEP = create(key("block.sculk_catalyst.step")); + + /** + * {@code minecraft:block.sculk_sensor.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SENSOR_BREAK = create(key("block.sculk_sensor.break")); + + /** + * {@code minecraft:block.sculk_sensor.clicking} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SENSOR_CLICKING = create(key("block.sculk_sensor.clicking")); + + /** + * {@code minecraft:block.sculk_sensor.clicking_stop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SENSOR_CLICKING_STOP = create(key("block.sculk_sensor.clicking_stop")); + + /** + * {@code minecraft:block.sculk_sensor.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SENSOR_FALL = create(key("block.sculk_sensor.fall")); + + /** + * {@code minecraft:block.sculk_sensor.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SENSOR_HIT = create(key("block.sculk_sensor.hit")); + + /** + * {@code minecraft:block.sculk_sensor.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SENSOR_PLACE = create(key("block.sculk_sensor.place")); + + /** + * {@code minecraft:block.sculk_sensor.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SENSOR_STEP = create(key("block.sculk_sensor.step")); + + /** + * {@code minecraft:block.sculk_shrieker.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SHRIEKER_BREAK = create(key("block.sculk_shrieker.break")); + + /** + * {@code minecraft:block.sculk_shrieker.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SHRIEKER_FALL = create(key("block.sculk_shrieker.fall")); + + /** + * {@code minecraft:block.sculk_shrieker.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SHRIEKER_HIT = create(key("block.sculk_shrieker.hit")); + + /** + * {@code minecraft:block.sculk_shrieker.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SHRIEKER_PLACE = create(key("block.sculk_shrieker.place")); + + /** + * {@code minecraft:block.sculk_shrieker.shriek} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SHRIEKER_SHRIEK = create(key("block.sculk_shrieker.shriek")); + + /** + * {@code minecraft:block.sculk_shrieker.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_SHRIEKER_STEP = create(key("block.sculk_shrieker.step")); + + /** + * {@code minecraft:block.sculk_vein.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_VEIN_BREAK = create(key("block.sculk_vein.break")); + + /** + * {@code minecraft:block.sculk_vein.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_VEIN_FALL = create(key("block.sculk_vein.fall")); + + /** + * {@code minecraft:block.sculk_vein.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_VEIN_HIT = create(key("block.sculk_vein.hit")); + + /** + * {@code minecraft:block.sculk_vein.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_VEIN_PLACE = create(key("block.sculk_vein.place")); + + /** + * {@code minecraft:block.sculk_vein.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SCULK_VEIN_STEP = create(key("block.sculk_vein.step")); + + /** + * {@code minecraft:block.shroomlight.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SHROOMLIGHT_BREAK = create(key("block.shroomlight.break")); + + /** + * {@code minecraft:block.shroomlight.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SHROOMLIGHT_FALL = create(key("block.shroomlight.fall")); + + /** + * {@code minecraft:block.shroomlight.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SHROOMLIGHT_HIT = create(key("block.shroomlight.hit")); + + /** + * {@code minecraft:block.shroomlight.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SHROOMLIGHT_PLACE = create(key("block.shroomlight.place")); + + /** + * {@code minecraft:block.shroomlight.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SHROOMLIGHT_STEP = create(key("block.shroomlight.step")); + + /** + * {@code minecraft:block.shulker_box.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SHULKER_BOX_CLOSE = create(key("block.shulker_box.close")); + + /** + * {@code minecraft:block.shulker_box.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SHULKER_BOX_OPEN = create(key("block.shulker_box.open")); + + /** + * {@code minecraft:block.sign.waxed_interact_fail} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SIGN_WAXED_INTERACT_FAIL = create(key("block.sign.waxed_interact_fail")); + + /** + * {@code minecraft:block.slime_block.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SLIME_BLOCK_BREAK = create(key("block.slime_block.break")); + + /** + * {@code minecraft:block.slime_block.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SLIME_BLOCK_FALL = create(key("block.slime_block.fall")); + + /** + * {@code minecraft:block.slime_block.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SLIME_BLOCK_HIT = create(key("block.slime_block.hit")); + + /** + * {@code minecraft:block.slime_block.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SLIME_BLOCK_PLACE = create(key("block.slime_block.place")); + + /** + * {@code minecraft:block.slime_block.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SLIME_BLOCK_STEP = create(key("block.slime_block.step")); + + /** + * {@code minecraft:block.small_amethyst_bud.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SMALL_AMETHYST_BUD_BREAK = create(key("block.small_amethyst_bud.break")); + + /** + * {@code minecraft:block.small_amethyst_bud.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SMALL_AMETHYST_BUD_PLACE = create(key("block.small_amethyst_bud.place")); + + /** + * {@code minecraft:block.small_dripleaf.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SMALL_DRIPLEAF_BREAK = create(key("block.small_dripleaf.break")); + + /** + * {@code minecraft:block.small_dripleaf.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SMALL_DRIPLEAF_FALL = create(key("block.small_dripleaf.fall")); + + /** + * {@code minecraft:block.small_dripleaf.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SMALL_DRIPLEAF_HIT = create(key("block.small_dripleaf.hit")); + + /** + * {@code minecraft:block.small_dripleaf.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SMALL_DRIPLEAF_PLACE = create(key("block.small_dripleaf.place")); + + /** + * {@code minecraft:block.small_dripleaf.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SMALL_DRIPLEAF_STEP = create(key("block.small_dripleaf.step")); + + /** + * {@code minecraft:block.smithing_table.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SMITHING_TABLE_USE = create(key("block.smithing_table.use")); + + /** + * {@code minecraft:block.smoker.smoke} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SMOKER_SMOKE = create(key("block.smoker.smoke")); + + /** + * {@code minecraft:block.sniffer_egg.crack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SNIFFER_EGG_CRACK = create(key("block.sniffer_egg.crack")); + + /** + * {@code minecraft:block.sniffer_egg.hatch} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SNIFFER_EGG_HATCH = create(key("block.sniffer_egg.hatch")); + + /** + * {@code minecraft:block.sniffer_egg.plop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SNIFFER_EGG_PLOP = create(key("block.sniffer_egg.plop")); + + /** + * {@code minecraft:block.snow.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SNOW_BREAK = create(key("block.snow.break")); + + /** + * {@code minecraft:block.snow.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SNOW_FALL = create(key("block.snow.fall")); + + /** + * {@code minecraft:block.snow.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SNOW_HIT = create(key("block.snow.hit")); + + /** + * {@code minecraft:block.snow.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SNOW_PLACE = create(key("block.snow.place")); + + /** + * {@code minecraft:block.snow.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SNOW_STEP = create(key("block.snow.step")); + + /** + * {@code minecraft:block.soul_sand.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SAND_BREAK = create(key("block.soul_sand.break")); + + /** + * {@code minecraft:block.soul_sand.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SAND_FALL = create(key("block.soul_sand.fall")); + + /** + * {@code minecraft:block.soul_sand.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SAND_HIT = create(key("block.soul_sand.hit")); + + /** + * {@code minecraft:block.soul_sand.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SAND_PLACE = create(key("block.soul_sand.place")); + + /** + * {@code minecraft:block.soul_sand.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SAND_STEP = create(key("block.soul_sand.step")); + + /** + * {@code minecraft:block.soul_soil.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SOIL_BREAK = create(key("block.soul_soil.break")); + + /** + * {@code minecraft:block.soul_soil.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SOIL_FALL = create(key("block.soul_soil.fall")); + + /** + * {@code minecraft:block.soul_soil.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SOIL_HIT = create(key("block.soul_soil.hit")); + + /** + * {@code minecraft:block.soul_soil.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SOIL_PLACE = create(key("block.soul_soil.place")); + + /** + * {@code minecraft:block.soul_soil.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SOUL_SOIL_STEP = create(key("block.soul_soil.step")); + + /** + * {@code minecraft:block.spawner.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPAWNER_BREAK = create(key("block.spawner.break")); + + /** + * {@code minecraft:block.spawner.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPAWNER_FALL = create(key("block.spawner.fall")); + + /** + * {@code minecraft:block.spawner.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPAWNER_HIT = create(key("block.spawner.hit")); + + /** + * {@code minecraft:block.spawner.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPAWNER_PLACE = create(key("block.spawner.place")); + + /** + * {@code minecraft:block.spawner.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPAWNER_STEP = create(key("block.spawner.step")); + + /** + * {@code minecraft:block.sponge.absorb} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPONGE_ABSORB = create(key("block.sponge.absorb")); + + /** + * {@code minecraft:block.sponge.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPONGE_BREAK = create(key("block.sponge.break")); + + /** + * {@code minecraft:block.sponge.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPONGE_FALL = create(key("block.sponge.fall")); + + /** + * {@code minecraft:block.sponge.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPONGE_HIT = create(key("block.sponge.hit")); + + /** + * {@code minecraft:block.sponge.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPONGE_PLACE = create(key("block.sponge.place")); + + /** + * {@code minecraft:block.sponge.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPONGE_STEP = create(key("block.sponge.step")); + + /** + * {@code minecraft:block.spore_blossom.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPORE_BLOSSOM_BREAK = create(key("block.spore_blossom.break")); + + /** + * {@code minecraft:block.spore_blossom.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPORE_BLOSSOM_FALL = create(key("block.spore_blossom.fall")); + + /** + * {@code minecraft:block.spore_blossom.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPORE_BLOSSOM_HIT = create(key("block.spore_blossom.hit")); + + /** + * {@code minecraft:block.spore_blossom.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPORE_BLOSSOM_PLACE = create(key("block.spore_blossom.place")); + + /** + * {@code minecraft:block.spore_blossom.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SPORE_BLOSSOM_STEP = create(key("block.spore_blossom.step")); + + /** + * {@code minecraft:block.stem.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STEM_BREAK = create(key("block.stem.break")); + + /** + * {@code minecraft:block.stem.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STEM_FALL = create(key("block.stem.fall")); + + /** + * {@code minecraft:block.stem.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STEM_HIT = create(key("block.stem.hit")); + + /** + * {@code minecraft:block.stem.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STEM_PLACE = create(key("block.stem.place")); + + /** + * {@code minecraft:block.stem.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STEM_STEP = create(key("block.stem.step")); + + /** + * {@code minecraft:block.stone.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STONE_BREAK = create(key("block.stone.break")); + + /** + * {@code minecraft:block.stone.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STONE_FALL = create(key("block.stone.fall")); + + /** + * {@code minecraft:block.stone.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STONE_HIT = create(key("block.stone.hit")); + + /** + * {@code minecraft:block.stone.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STONE_PLACE = create(key("block.stone.place")); + + /** + * {@code minecraft:block.stone.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STONE_STEP = create(key("block.stone.step")); + + /** + * {@code minecraft:block.stone_button.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STONE_BUTTON_CLICK_OFF = create(key("block.stone_button.click_off")); + + /** + * {@code minecraft:block.stone_button.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STONE_BUTTON_CLICK_ON = create(key("block.stone_button.click_on")); + + /** + * {@code minecraft:block.stone_pressure_plate.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STONE_PRESSURE_PLATE_CLICK_OFF = create(key("block.stone_pressure_plate.click_off")); + + /** + * {@code minecraft:block.stone_pressure_plate.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_STONE_PRESSURE_PLATE_CLICK_ON = create(key("block.stone_pressure_plate.click_on")); + + /** + * {@code minecraft:block.suspicious_gravel.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_GRAVEL_BREAK = create(key("block.suspicious_gravel.break")); + + /** + * {@code minecraft:block.suspicious_gravel.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_GRAVEL_FALL = create(key("block.suspicious_gravel.fall")); + + /** + * {@code minecraft:block.suspicious_gravel.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_GRAVEL_HIT = create(key("block.suspicious_gravel.hit")); + + /** + * {@code minecraft:block.suspicious_gravel.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_GRAVEL_PLACE = create(key("block.suspicious_gravel.place")); + + /** + * {@code minecraft:block.suspicious_gravel.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_GRAVEL_STEP = create(key("block.suspicious_gravel.step")); + + /** + * {@code minecraft:block.suspicious_sand.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_SAND_BREAK = create(key("block.suspicious_sand.break")); + + /** + * {@code minecraft:block.suspicious_sand.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_SAND_FALL = create(key("block.suspicious_sand.fall")); + + /** + * {@code minecraft:block.suspicious_sand.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_SAND_HIT = create(key("block.suspicious_sand.hit")); + + /** + * {@code minecraft:block.suspicious_sand.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_SAND_PLACE = create(key("block.suspicious_sand.place")); + + /** + * {@code minecraft:block.suspicious_sand.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SUSPICIOUS_SAND_STEP = create(key("block.suspicious_sand.step")); + + /** + * {@code minecraft:block.sweet_berry_bush.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SWEET_BERRY_BUSH_BREAK = create(key("block.sweet_berry_bush.break")); + + /** + * {@code minecraft:block.sweet_berry_bush.pick_berries} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SWEET_BERRY_BUSH_PICK_BERRIES = create(key("block.sweet_berry_bush.pick_berries")); + + /** + * {@code minecraft:block.sweet_berry_bush.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_SWEET_BERRY_BUSH_PLACE = create(key("block.sweet_berry_bush.place")); + + /** + * {@code minecraft:block.trial_spawner.about_to_spawn_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_ABOUT_TO_SPAWN_ITEM = create(key("block.trial_spawner.about_to_spawn_item")); + + /** + * {@code minecraft:block.trial_spawner.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_AMBIENT = create(key("block.trial_spawner.ambient")); + + /** + * {@code minecraft:block.trial_spawner.ambient_ominous} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_AMBIENT_OMINOUS = create(key("block.trial_spawner.ambient_ominous")); + + /** + * {@code minecraft:block.trial_spawner.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_BREAK = create(key("block.trial_spawner.break")); + + /** + * {@code minecraft:block.trial_spawner.close_shutter} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_CLOSE_SHUTTER = create(key("block.trial_spawner.close_shutter")); + + /** + * {@code minecraft:block.trial_spawner.detect_player} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_DETECT_PLAYER = create(key("block.trial_spawner.detect_player")); + + /** + * {@code minecraft:block.trial_spawner.eject_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_EJECT_ITEM = create(key("block.trial_spawner.eject_item")); + + /** + * {@code minecraft:block.trial_spawner.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_FALL = create(key("block.trial_spawner.fall")); + + /** + * {@code minecraft:block.trial_spawner.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_HIT = create(key("block.trial_spawner.hit")); + + /** + * {@code minecraft:block.trial_spawner.ominous_activate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_OMINOUS_ACTIVATE = create(key("block.trial_spawner.ominous_activate")); + + /** + * {@code minecraft:block.trial_spawner.open_shutter} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_OPEN_SHUTTER = create(key("block.trial_spawner.open_shutter")); + + /** + * {@code minecraft:block.trial_spawner.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_PLACE = create(key("block.trial_spawner.place")); + + /** + * {@code minecraft:block.trial_spawner.spawn_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_SPAWN_ITEM = create(key("block.trial_spawner.spawn_item")); + + /** + * {@code minecraft:block.trial_spawner.spawn_item_begin} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_SPAWN_ITEM_BEGIN = create(key("block.trial_spawner.spawn_item_begin")); + + /** + * {@code minecraft:block.trial_spawner.spawn_mob} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_SPAWN_MOB = create(key("block.trial_spawner.spawn_mob")); + + /** + * {@code minecraft:block.trial_spawner.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIAL_SPAWNER_STEP = create(key("block.trial_spawner.step")); + + /** + * {@code minecraft:block.tripwire.attach} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIPWIRE_ATTACH = create(key("block.tripwire.attach")); + + /** + * {@code minecraft:block.tripwire.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIPWIRE_CLICK_OFF = create(key("block.tripwire.click_off")); + + /** + * {@code minecraft:block.tripwire.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIPWIRE_CLICK_ON = create(key("block.tripwire.click_on")); + + /** + * {@code minecraft:block.tripwire.detach} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TRIPWIRE_DETACH = create(key("block.tripwire.detach")); + + /** + * {@code minecraft:block.tuff.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_BREAK = create(key("block.tuff.break")); + + /** + * {@code minecraft:block.tuff.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_FALL = create(key("block.tuff.fall")); + + /** + * {@code minecraft:block.tuff.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_HIT = create(key("block.tuff.hit")); + + /** + * {@code minecraft:block.tuff.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_PLACE = create(key("block.tuff.place")); + + /** + * {@code minecraft:block.tuff.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_STEP = create(key("block.tuff.step")); + + /** + * {@code minecraft:block.tuff_bricks.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_BRICKS_BREAK = create(key("block.tuff_bricks.break")); + + /** + * {@code minecraft:block.tuff_bricks.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_BRICKS_FALL = create(key("block.tuff_bricks.fall")); + + /** + * {@code minecraft:block.tuff_bricks.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_BRICKS_HIT = create(key("block.tuff_bricks.hit")); + + /** + * {@code minecraft:block.tuff_bricks.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_BRICKS_PLACE = create(key("block.tuff_bricks.place")); + + /** + * {@code minecraft:block.tuff_bricks.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_TUFF_BRICKS_STEP = create(key("block.tuff_bricks.step")); + + /** + * {@code minecraft:block.vault.activate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_ACTIVATE = create(key("block.vault.activate")); + + /** + * {@code minecraft:block.vault.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_AMBIENT = create(key("block.vault.ambient")); + + /** + * {@code minecraft:block.vault.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_BREAK = create(key("block.vault.break")); + + /** + * {@code minecraft:block.vault.close_shutter} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_CLOSE_SHUTTER = create(key("block.vault.close_shutter")); + + /** + * {@code minecraft:block.vault.deactivate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_DEACTIVATE = create(key("block.vault.deactivate")); + + /** + * {@code minecraft:block.vault.eject_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_EJECT_ITEM = create(key("block.vault.eject_item")); + + /** + * {@code minecraft:block.vault.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_FALL = create(key("block.vault.fall")); + + /** + * {@code minecraft:block.vault.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_HIT = create(key("block.vault.hit")); + + /** + * {@code minecraft:block.vault.insert_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_INSERT_ITEM = create(key("block.vault.insert_item")); + + /** + * {@code minecraft:block.vault.insert_item_fail} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_INSERT_ITEM_FAIL = create(key("block.vault.insert_item_fail")); + + /** + * {@code minecraft:block.vault.open_shutter} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_OPEN_SHUTTER = create(key("block.vault.open_shutter")); + + /** + * {@code minecraft:block.vault.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_PLACE = create(key("block.vault.place")); + + /** + * {@code minecraft:block.vault.reject_rewarded_player} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_REJECT_REWARDED_PLAYER = create(key("block.vault.reject_rewarded_player")); + + /** + * {@code minecraft:block.vault.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VAULT_STEP = create(key("block.vault.step")); + + /** + * {@code minecraft:block.vine.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VINE_BREAK = create(key("block.vine.break")); + + /** + * {@code minecraft:block.vine.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VINE_FALL = create(key("block.vine.fall")); + + /** + * {@code minecraft:block.vine.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VINE_HIT = create(key("block.vine.hit")); + + /** + * {@code minecraft:block.vine.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VINE_PLACE = create(key("block.vine.place")); + + /** + * {@code minecraft:block.vine.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_VINE_STEP = create(key("block.vine.step")); + + /** + * {@code minecraft:block.wart_block.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WART_BLOCK_BREAK = create(key("block.wart_block.break")); + + /** + * {@code minecraft:block.wart_block.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WART_BLOCK_FALL = create(key("block.wart_block.fall")); + + /** + * {@code minecraft:block.wart_block.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WART_BLOCK_HIT = create(key("block.wart_block.hit")); + + /** + * {@code minecraft:block.wart_block.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WART_BLOCK_PLACE = create(key("block.wart_block.place")); + + /** + * {@code minecraft:block.wart_block.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WART_BLOCK_STEP = create(key("block.wart_block.step")); + + /** + * {@code minecraft:block.water.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WATER_AMBIENT = create(key("block.water.ambient")); + + /** + * {@code minecraft:block.weeping_vines.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WEEPING_VINES_BREAK = create(key("block.weeping_vines.break")); + + /** + * {@code minecraft:block.weeping_vines.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WEEPING_VINES_FALL = create(key("block.weeping_vines.fall")); + + /** + * {@code minecraft:block.weeping_vines.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WEEPING_VINES_HIT = create(key("block.weeping_vines.hit")); + + /** + * {@code minecraft:block.weeping_vines.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WEEPING_VINES_PLACE = create(key("block.weeping_vines.place")); + + /** + * {@code minecraft:block.weeping_vines.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WEEPING_VINES_STEP = create(key("block.weeping_vines.step")); + + /** + * {@code minecraft:block.wet_grass.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_GRASS_BREAK = create(key("block.wet_grass.break")); + + /** + * {@code minecraft:block.wet_grass.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_GRASS_FALL = create(key("block.wet_grass.fall")); + + /** + * {@code minecraft:block.wet_grass.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_GRASS_HIT = create(key("block.wet_grass.hit")); + + /** + * {@code minecraft:block.wet_grass.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_GRASS_PLACE = create(key("block.wet_grass.place")); + + /** + * {@code minecraft:block.wet_grass.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_GRASS_STEP = create(key("block.wet_grass.step")); + + /** + * {@code minecraft:block.wet_sponge.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_SPONGE_BREAK = create(key("block.wet_sponge.break")); + + /** + * {@code minecraft:block.wet_sponge.dries} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_SPONGE_DRIES = create(key("block.wet_sponge.dries")); + + /** + * {@code minecraft:block.wet_sponge.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_SPONGE_FALL = create(key("block.wet_sponge.fall")); + + /** + * {@code minecraft:block.wet_sponge.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_SPONGE_HIT = create(key("block.wet_sponge.hit")); + + /** + * {@code minecraft:block.wet_sponge.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_SPONGE_PLACE = create(key("block.wet_sponge.place")); + + /** + * {@code minecraft:block.wet_sponge.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WET_SPONGE_STEP = create(key("block.wet_sponge.step")); + + /** + * {@code minecraft:block.wood.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOD_BREAK = create(key("block.wood.break")); + + /** + * {@code minecraft:block.wood.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOD_FALL = create(key("block.wood.fall")); + + /** + * {@code minecraft:block.wood.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOD_HIT = create(key("block.wood.hit")); + + /** + * {@code minecraft:block.wood.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOD_PLACE = create(key("block.wood.place")); + + /** + * {@code minecraft:block.wood.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOD_STEP = create(key("block.wood.step")); + + /** + * {@code minecraft:block.wooden_button.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOODEN_BUTTON_CLICK_OFF = create(key("block.wooden_button.click_off")); + + /** + * {@code minecraft:block.wooden_button.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOODEN_BUTTON_CLICK_ON = create(key("block.wooden_button.click_on")); + + /** + * {@code minecraft:block.wooden_door.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOODEN_DOOR_CLOSE = create(key("block.wooden_door.close")); + + /** + * {@code minecraft:block.wooden_door.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOODEN_DOOR_OPEN = create(key("block.wooden_door.open")); + + /** + * {@code minecraft:block.wooden_pressure_plate.click_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOODEN_PRESSURE_PLATE_CLICK_OFF = create(key("block.wooden_pressure_plate.click_off")); + + /** + * {@code minecraft:block.wooden_pressure_plate.click_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOODEN_PRESSURE_PLATE_CLICK_ON = create(key("block.wooden_pressure_plate.click_on")); + + /** + * {@code minecraft:block.wooden_trapdoor.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOODEN_TRAPDOOR_CLOSE = create(key("block.wooden_trapdoor.close")); + + /** + * {@code minecraft:block.wooden_trapdoor.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOODEN_TRAPDOOR_OPEN = create(key("block.wooden_trapdoor.open")); + + /** + * {@code minecraft:block.wool.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOL_BREAK = create(key("block.wool.break")); + + /** + * {@code minecraft:block.wool.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOL_FALL = create(key("block.wool.fall")); + + /** + * {@code minecraft:block.wool.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOL_HIT = create(key("block.wool.hit")); + + /** + * {@code minecraft:block.wool.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOL_PLACE = create(key("block.wool.place")); + + /** + * {@code minecraft:block.wool.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> BLOCK_WOOL_STEP = create(key("block.wool.step")); + + /** + * {@code minecraft:enchant.thorns.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENCHANT_THORNS_HIT = create(key("enchant.thorns.hit")); + + /** + * {@code minecraft:entity.allay.ambient_with_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ALLAY_AMBIENT_WITH_ITEM = create(key("entity.allay.ambient_with_item")); + + /** + * {@code minecraft:entity.allay.ambient_without_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ALLAY_AMBIENT_WITHOUT_ITEM = create(key("entity.allay.ambient_without_item")); + + /** + * {@code minecraft:entity.allay.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ALLAY_DEATH = create(key("entity.allay.death")); + + /** + * {@code minecraft:entity.allay.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ALLAY_HURT = create(key("entity.allay.hurt")); + + /** + * {@code minecraft:entity.allay.item_given} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ALLAY_ITEM_GIVEN = create(key("entity.allay.item_given")); + + /** + * {@code minecraft:entity.allay.item_taken} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ALLAY_ITEM_TAKEN = create(key("entity.allay.item_taken")); + + /** + * {@code minecraft:entity.allay.item_thrown} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ALLAY_ITEM_THROWN = create(key("entity.allay.item_thrown")); + + /** + * {@code minecraft:entity.armadillo.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_AMBIENT = create(key("entity.armadillo.ambient")); + + /** + * {@code minecraft:entity.armadillo.brush} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_BRUSH = create(key("entity.armadillo.brush")); + + /** + * {@code minecraft:entity.armadillo.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_DEATH = create(key("entity.armadillo.death")); + + /** + * {@code minecraft:entity.armadillo.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_EAT = create(key("entity.armadillo.eat")); + + /** + * {@code minecraft:entity.armadillo.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_HURT = create(key("entity.armadillo.hurt")); + + /** + * {@code minecraft:entity.armadillo.hurt_reduced} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_HURT_REDUCED = create(key("entity.armadillo.hurt_reduced")); + + /** + * {@code minecraft:entity.armadillo.land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_LAND = create(key("entity.armadillo.land")); + + /** + * {@code minecraft:entity.armadillo.peek} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_PEEK = create(key("entity.armadillo.peek")); + + /** + * {@code minecraft:entity.armadillo.roll} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_ROLL = create(key("entity.armadillo.roll")); + + /** + * {@code minecraft:entity.armadillo.scute_drop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_SCUTE_DROP = create(key("entity.armadillo.scute_drop")); + + /** + * {@code minecraft:entity.armadillo.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_STEP = create(key("entity.armadillo.step")); + + /** + * {@code minecraft:entity.armadillo.unroll_finish} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_UNROLL_FINISH = create(key("entity.armadillo.unroll_finish")); + + /** + * {@code minecraft:entity.armadillo.unroll_start} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMADILLO_UNROLL_START = create(key("entity.armadillo.unroll_start")); + + /** + * {@code minecraft:entity.armor_stand.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMOR_STAND_BREAK = create(key("entity.armor_stand.break")); + + /** + * {@code minecraft:entity.armor_stand.fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMOR_STAND_FALL = create(key("entity.armor_stand.fall")); + + /** + * {@code minecraft:entity.armor_stand.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMOR_STAND_HIT = create(key("entity.armor_stand.hit")); + + /** + * {@code minecraft:entity.armor_stand.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARMOR_STAND_PLACE = create(key("entity.armor_stand.place")); + + /** + * {@code minecraft:entity.arrow.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARROW_HIT = create(key("entity.arrow.hit")); + + /** + * {@code minecraft:entity.arrow.hit_player} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARROW_HIT_PLAYER = create(key("entity.arrow.hit_player")); + + /** + * {@code minecraft:entity.arrow.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ARROW_SHOOT = create(key("entity.arrow.shoot")); + + /** + * {@code minecraft:entity.axolotl.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_AXOLOTL_ATTACK = create(key("entity.axolotl.attack")); + + /** + * {@code minecraft:entity.axolotl.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_AXOLOTL_DEATH = create(key("entity.axolotl.death")); + + /** + * {@code minecraft:entity.axolotl.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_AXOLOTL_HURT = create(key("entity.axolotl.hurt")); + + /** + * {@code minecraft:entity.axolotl.idle_air} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_AXOLOTL_IDLE_AIR = create(key("entity.axolotl.idle_air")); + + /** + * {@code minecraft:entity.axolotl.idle_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_AXOLOTL_IDLE_WATER = create(key("entity.axolotl.idle_water")); + + /** + * {@code minecraft:entity.axolotl.splash} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_AXOLOTL_SPLASH = create(key("entity.axolotl.splash")); + + /** + * {@code minecraft:entity.axolotl.swim} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_AXOLOTL_SWIM = create(key("entity.axolotl.swim")); + + /** + * {@code minecraft:entity.bat.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BAT_AMBIENT = create(key("entity.bat.ambient")); + + /** + * {@code minecraft:entity.bat.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BAT_DEATH = create(key("entity.bat.death")); + + /** + * {@code minecraft:entity.bat.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BAT_HURT = create(key("entity.bat.hurt")); + + /** + * {@code minecraft:entity.bat.loop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BAT_LOOP = create(key("entity.bat.loop")); + + /** + * {@code minecraft:entity.bat.takeoff} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BAT_TAKEOFF = create(key("entity.bat.takeoff")); + + /** + * {@code minecraft:entity.bee.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BEE_DEATH = create(key("entity.bee.death")); + + /** + * {@code minecraft:entity.bee.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BEE_HURT = create(key("entity.bee.hurt")); + + /** + * {@code minecraft:entity.bee.loop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BEE_LOOP = create(key("entity.bee.loop")); + + /** + * {@code minecraft:entity.bee.loop_aggressive} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BEE_LOOP_AGGRESSIVE = create(key("entity.bee.loop_aggressive")); + + /** + * {@code minecraft:entity.bee.pollinate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BEE_POLLINATE = create(key("entity.bee.pollinate")); + + /** + * {@code minecraft:entity.bee.sting} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BEE_STING = create(key("entity.bee.sting")); + + /** + * {@code minecraft:entity.blaze.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BLAZE_AMBIENT = create(key("entity.blaze.ambient")); + + /** + * {@code minecraft:entity.blaze.burn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BLAZE_BURN = create(key("entity.blaze.burn")); + + /** + * {@code minecraft:entity.blaze.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BLAZE_DEATH = create(key("entity.blaze.death")); + + /** + * {@code minecraft:entity.blaze.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BLAZE_HURT = create(key("entity.blaze.hurt")); + + /** + * {@code minecraft:entity.blaze.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BLAZE_SHOOT = create(key("entity.blaze.shoot")); + + /** + * {@code minecraft:entity.boat.paddle_land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BOAT_PADDLE_LAND = create(key("entity.boat.paddle_land")); + + /** + * {@code minecraft:entity.boat.paddle_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BOAT_PADDLE_WATER = create(key("entity.boat.paddle_water")); + + /** + * {@code minecraft:entity.bogged.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BOGGED_AMBIENT = create(key("entity.bogged.ambient")); + + /** + * {@code minecraft:entity.bogged.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BOGGED_DEATH = create(key("entity.bogged.death")); + + /** + * {@code minecraft:entity.bogged.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BOGGED_HURT = create(key("entity.bogged.hurt")); + + /** + * {@code minecraft:entity.bogged.shear} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BOGGED_SHEAR = create(key("entity.bogged.shear")); + + /** + * {@code minecraft:entity.bogged.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BOGGED_STEP = create(key("entity.bogged.step")); + + /** + * {@code minecraft:entity.breeze.charge} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_CHARGE = create(key("entity.breeze.charge")); + + /** + * {@code minecraft:entity.breeze.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_DEATH = create(key("entity.breeze.death")); + + /** + * {@code minecraft:entity.breeze.deflect} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_DEFLECT = create(key("entity.breeze.deflect")); + + /** + * {@code minecraft:entity.breeze.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_HURT = create(key("entity.breeze.hurt")); + + /** + * {@code minecraft:entity.breeze.idle_air} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_IDLE_AIR = create(key("entity.breeze.idle_air")); + + /** + * {@code minecraft:entity.breeze.idle_ground} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_IDLE_GROUND = create(key("entity.breeze.idle_ground")); + + /** + * {@code minecraft:entity.breeze.inhale} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_INHALE = create(key("entity.breeze.inhale")); + + /** + * {@code minecraft:entity.breeze.jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_JUMP = create(key("entity.breeze.jump")); + + /** + * {@code minecraft:entity.breeze.land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_LAND = create(key("entity.breeze.land")); + + /** + * {@code minecraft:entity.breeze.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_SHOOT = create(key("entity.breeze.shoot")); + + /** + * {@code minecraft:entity.breeze.slide} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_SLIDE = create(key("entity.breeze.slide")); + + /** + * {@code minecraft:entity.breeze.whirl} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_WHIRL = create(key("entity.breeze.whirl")); + + /** + * {@code minecraft:entity.breeze.wind_burst} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_BREEZE_WIND_BURST = create(key("entity.breeze.wind_burst")); + + /** + * {@code minecraft:entity.camel.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_AMBIENT = create(key("entity.camel.ambient")); + + /** + * {@code minecraft:entity.camel.dash} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_DASH = create(key("entity.camel.dash")); + + /** + * {@code minecraft:entity.camel.dash_ready} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_DASH_READY = create(key("entity.camel.dash_ready")); + + /** + * {@code minecraft:entity.camel.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_DEATH = create(key("entity.camel.death")); + + /** + * {@code minecraft:entity.camel.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_EAT = create(key("entity.camel.eat")); + + /** + * {@code minecraft:entity.camel.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_HURT = create(key("entity.camel.hurt")); + + /** + * {@code minecraft:entity.camel.saddle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_SADDLE = create(key("entity.camel.saddle")); + + /** + * {@code minecraft:entity.camel.sit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_SIT = create(key("entity.camel.sit")); + + /** + * {@code minecraft:entity.camel.stand} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_STAND = create(key("entity.camel.stand")); + + /** + * {@code minecraft:entity.camel.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_STEP = create(key("entity.camel.step")); + + /** + * {@code minecraft:entity.camel.step_sand} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAMEL_STEP_SAND = create(key("entity.camel.step_sand")); + + /** + * {@code minecraft:entity.cat.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAT_AMBIENT = create(key("entity.cat.ambient")); + + /** + * {@code minecraft:entity.cat.beg_for_food} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAT_BEG_FOR_FOOD = create(key("entity.cat.beg_for_food")); + + /** + * {@code minecraft:entity.cat.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAT_DEATH = create(key("entity.cat.death")); + + /** + * {@code minecraft:entity.cat.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAT_EAT = create(key("entity.cat.eat")); + + /** + * {@code minecraft:entity.cat.hiss} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAT_HISS = create(key("entity.cat.hiss")); + + /** + * {@code minecraft:entity.cat.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAT_HURT = create(key("entity.cat.hurt")); + + /** + * {@code minecraft:entity.cat.purr} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAT_PURR = create(key("entity.cat.purr")); + + /** + * {@code minecraft:entity.cat.purreow} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAT_PURREOW = create(key("entity.cat.purreow")); + + /** + * {@code minecraft:entity.cat.stray_ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CAT_STRAY_AMBIENT = create(key("entity.cat.stray_ambient")); + + /** + * {@code minecraft:entity.chicken.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CHICKEN_AMBIENT = create(key("entity.chicken.ambient")); + + /** + * {@code minecraft:entity.chicken.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CHICKEN_DEATH = create(key("entity.chicken.death")); + + /** + * {@code minecraft:entity.chicken.egg} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CHICKEN_EGG = create(key("entity.chicken.egg")); + + /** + * {@code minecraft:entity.chicken.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CHICKEN_HURT = create(key("entity.chicken.hurt")); + + /** + * {@code minecraft:entity.chicken.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CHICKEN_STEP = create(key("entity.chicken.step")); + + /** + * {@code minecraft:entity.cod.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_COD_AMBIENT = create(key("entity.cod.ambient")); + + /** + * {@code minecraft:entity.cod.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_COD_DEATH = create(key("entity.cod.death")); + + /** + * {@code minecraft:entity.cod.flop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_COD_FLOP = create(key("entity.cod.flop")); + + /** + * {@code minecraft:entity.cod.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_COD_HURT = create(key("entity.cod.hurt")); + + /** + * {@code minecraft:entity.cow.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_COW_AMBIENT = create(key("entity.cow.ambient")); + + /** + * {@code minecraft:entity.cow.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_COW_DEATH = create(key("entity.cow.death")); + + /** + * {@code minecraft:entity.cow.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_COW_HURT = create(key("entity.cow.hurt")); + + /** + * {@code minecraft:entity.cow.milk} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_COW_MILK = create(key("entity.cow.milk")); + + /** + * {@code minecraft:entity.cow.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_COW_STEP = create(key("entity.cow.step")); + + /** + * {@code minecraft:entity.creaking.activate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_ACTIVATE = create(key("entity.creaking.activate")); + + /** + * {@code minecraft:entity.creaking.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_AMBIENT = create(key("entity.creaking.ambient")); + + /** + * {@code minecraft:entity.creaking.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_ATTACK = create(key("entity.creaking.attack")); + + /** + * {@code minecraft:entity.creaking.deactivate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_DEACTIVATE = create(key("entity.creaking.deactivate")); + + /** + * {@code minecraft:entity.creaking.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_DEATH = create(key("entity.creaking.death")); + + /** + * {@code minecraft:entity.creaking.freeze} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_FREEZE = create(key("entity.creaking.freeze")); + + /** + * {@code minecraft:entity.creaking.spawn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_SPAWN = create(key("entity.creaking.spawn")); + + /** + * {@code minecraft:entity.creaking.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_STEP = create(key("entity.creaking.step")); + + /** + * {@code minecraft:entity.creaking.sway} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_SWAY = create(key("entity.creaking.sway")); + + /** + * {@code minecraft:entity.creaking.unfreeze} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREAKING_UNFREEZE = create(key("entity.creaking.unfreeze")); + + /** + * {@code minecraft:entity.creeper.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREEPER_DEATH = create(key("entity.creeper.death")); + + /** + * {@code minecraft:entity.creeper.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREEPER_HURT = create(key("entity.creeper.hurt")); + + /** + * {@code minecraft:entity.creeper.primed} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_CREEPER_PRIMED = create(key("entity.creeper.primed")); + + /** + * {@code minecraft:entity.dolphin.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_AMBIENT = create(key("entity.dolphin.ambient")); + + /** + * {@code minecraft:entity.dolphin.ambient_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_AMBIENT_WATER = create(key("entity.dolphin.ambient_water")); + + /** + * {@code minecraft:entity.dolphin.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_ATTACK = create(key("entity.dolphin.attack")); + + /** + * {@code minecraft:entity.dolphin.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_DEATH = create(key("entity.dolphin.death")); + + /** + * {@code minecraft:entity.dolphin.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_EAT = create(key("entity.dolphin.eat")); + + /** + * {@code minecraft:entity.dolphin.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_HURT = create(key("entity.dolphin.hurt")); + + /** + * {@code minecraft:entity.dolphin.jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_JUMP = create(key("entity.dolphin.jump")); + + /** + * {@code minecraft:entity.dolphin.play} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_PLAY = create(key("entity.dolphin.play")); + + /** + * {@code minecraft:entity.dolphin.splash} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_SPLASH = create(key("entity.dolphin.splash")); + + /** + * {@code minecraft:entity.dolphin.swim} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DOLPHIN_SWIM = create(key("entity.dolphin.swim")); + + /** + * {@code minecraft:entity.donkey.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DONKEY_AMBIENT = create(key("entity.donkey.ambient")); + + /** + * {@code minecraft:entity.donkey.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DONKEY_ANGRY = create(key("entity.donkey.angry")); + + /** + * {@code minecraft:entity.donkey.chest} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DONKEY_CHEST = create(key("entity.donkey.chest")); + + /** + * {@code minecraft:entity.donkey.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DONKEY_DEATH = create(key("entity.donkey.death")); + + /** + * {@code minecraft:entity.donkey.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DONKEY_EAT = create(key("entity.donkey.eat")); + + /** + * {@code minecraft:entity.donkey.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DONKEY_HURT = create(key("entity.donkey.hurt")); + + /** + * {@code minecraft:entity.donkey.jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DONKEY_JUMP = create(key("entity.donkey.jump")); + + /** + * {@code minecraft:entity.dragon_fireball.explode} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DRAGON_FIREBALL_EXPLODE = create(key("entity.dragon_fireball.explode")); + + /** + * {@code minecraft:entity.drowned.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DROWNED_AMBIENT = create(key("entity.drowned.ambient")); + + /** + * {@code minecraft:entity.drowned.ambient_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DROWNED_AMBIENT_WATER = create(key("entity.drowned.ambient_water")); + + /** + * {@code minecraft:entity.drowned.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DROWNED_DEATH = create(key("entity.drowned.death")); + + /** + * {@code minecraft:entity.drowned.death_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DROWNED_DEATH_WATER = create(key("entity.drowned.death_water")); + + /** + * {@code minecraft:entity.drowned.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DROWNED_HURT = create(key("entity.drowned.hurt")); + + /** + * {@code minecraft:entity.drowned.hurt_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DROWNED_HURT_WATER = create(key("entity.drowned.hurt_water")); + + /** + * {@code minecraft:entity.drowned.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DROWNED_SHOOT = create(key("entity.drowned.shoot")); + + /** + * {@code minecraft:entity.drowned.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DROWNED_STEP = create(key("entity.drowned.step")); + + /** + * {@code minecraft:entity.drowned.swim} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_DROWNED_SWIM = create(key("entity.drowned.swim")); + + /** + * {@code minecraft:entity.egg.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EGG_THROW = create(key("entity.egg.throw")); + + /** + * {@code minecraft:entity.elder_guardian.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ELDER_GUARDIAN_AMBIENT = create(key("entity.elder_guardian.ambient")); + + /** + * {@code minecraft:entity.elder_guardian.ambient_land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ELDER_GUARDIAN_AMBIENT_LAND = create(key("entity.elder_guardian.ambient_land")); + + /** + * {@code minecraft:entity.elder_guardian.curse} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ELDER_GUARDIAN_CURSE = create(key("entity.elder_guardian.curse")); + + /** + * {@code minecraft:entity.elder_guardian.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ELDER_GUARDIAN_DEATH = create(key("entity.elder_guardian.death")); + + /** + * {@code minecraft:entity.elder_guardian.death_land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ELDER_GUARDIAN_DEATH_LAND = create(key("entity.elder_guardian.death_land")); + + /** + * {@code minecraft:entity.elder_guardian.flop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ELDER_GUARDIAN_FLOP = create(key("entity.elder_guardian.flop")); + + /** + * {@code minecraft:entity.elder_guardian.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ELDER_GUARDIAN_HURT = create(key("entity.elder_guardian.hurt")); + + /** + * {@code minecraft:entity.elder_guardian.hurt_land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ELDER_GUARDIAN_HURT_LAND = create(key("entity.elder_guardian.hurt_land")); + + /** + * {@code minecraft:entity.ender_dragon.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDER_DRAGON_AMBIENT = create(key("entity.ender_dragon.ambient")); + + /** + * {@code minecraft:entity.ender_dragon.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDER_DRAGON_DEATH = create(key("entity.ender_dragon.death")); + + /** + * {@code minecraft:entity.ender_dragon.flap} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDER_DRAGON_FLAP = create(key("entity.ender_dragon.flap")); + + /** + * {@code minecraft:entity.ender_dragon.growl} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDER_DRAGON_GROWL = create(key("entity.ender_dragon.growl")); + + /** + * {@code minecraft:entity.ender_dragon.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDER_DRAGON_HURT = create(key("entity.ender_dragon.hurt")); + + /** + * {@code minecraft:entity.ender_dragon.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDER_DRAGON_SHOOT = create(key("entity.ender_dragon.shoot")); + + /** + * {@code minecraft:entity.ender_eye.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDER_EYE_DEATH = create(key("entity.ender_eye.death")); + + /** + * {@code minecraft:entity.ender_eye.launch} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDER_EYE_LAUNCH = create(key("entity.ender_eye.launch")); + + /** + * {@code minecraft:entity.ender_pearl.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDER_PEARL_THROW = create(key("entity.ender_pearl.throw")); + + /** + * {@code minecraft:entity.enderman.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMAN_AMBIENT = create(key("entity.enderman.ambient")); + + /** + * {@code minecraft:entity.enderman.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMAN_DEATH = create(key("entity.enderman.death")); + + /** + * {@code minecraft:entity.enderman.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMAN_HURT = create(key("entity.enderman.hurt")); + + /** + * {@code minecraft:entity.enderman.scream} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMAN_SCREAM = create(key("entity.enderman.scream")); + + /** + * {@code minecraft:entity.enderman.stare} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMAN_STARE = create(key("entity.enderman.stare")); + + /** + * {@code minecraft:entity.enderman.teleport} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMAN_TELEPORT = create(key("entity.enderman.teleport")); + + /** + * {@code minecraft:entity.endermite.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMITE_AMBIENT = create(key("entity.endermite.ambient")); + + /** + * {@code minecraft:entity.endermite.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMITE_DEATH = create(key("entity.endermite.death")); + + /** + * {@code minecraft:entity.endermite.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMITE_HURT = create(key("entity.endermite.hurt")); + + /** + * {@code minecraft:entity.endermite.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ENDERMITE_STEP = create(key("entity.endermite.step")); + + /** + * {@code minecraft:entity.evoker.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EVOKER_AMBIENT = create(key("entity.evoker.ambient")); + + /** + * {@code minecraft:entity.evoker.cast_spell} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EVOKER_CAST_SPELL = create(key("entity.evoker.cast_spell")); + + /** + * {@code minecraft:entity.evoker.celebrate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EVOKER_CELEBRATE = create(key("entity.evoker.celebrate")); + + /** + * {@code minecraft:entity.evoker.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EVOKER_DEATH = create(key("entity.evoker.death")); + + /** + * {@code minecraft:entity.evoker.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EVOKER_HURT = create(key("entity.evoker.hurt")); + + /** + * {@code minecraft:entity.evoker.prepare_attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EVOKER_PREPARE_ATTACK = create(key("entity.evoker.prepare_attack")); + + /** + * {@code minecraft:entity.evoker.prepare_summon} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EVOKER_PREPARE_SUMMON = create(key("entity.evoker.prepare_summon")); + + /** + * {@code minecraft:entity.evoker.prepare_wololo} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EVOKER_PREPARE_WOLOLO = create(key("entity.evoker.prepare_wololo")); + + /** + * {@code minecraft:entity.evoker_fangs.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EVOKER_FANGS_ATTACK = create(key("entity.evoker_fangs.attack")); + + /** + * {@code minecraft:entity.experience_bottle.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EXPERIENCE_BOTTLE_THROW = create(key("entity.experience_bottle.throw")); + + /** + * {@code minecraft:entity.experience_orb.pickup} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_EXPERIENCE_ORB_PICKUP = create(key("entity.experience_orb.pickup")); + + /** + * {@code minecraft:entity.firework_rocket.blast} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FIREWORK_ROCKET_BLAST = create(key("entity.firework_rocket.blast")); + + /** + * {@code minecraft:entity.firework_rocket.blast_far} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FIREWORK_ROCKET_BLAST_FAR = create(key("entity.firework_rocket.blast_far")); + + /** + * {@code minecraft:entity.firework_rocket.large_blast} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FIREWORK_ROCKET_LARGE_BLAST = create(key("entity.firework_rocket.large_blast")); + + /** + * {@code minecraft:entity.firework_rocket.large_blast_far} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FIREWORK_ROCKET_LARGE_BLAST_FAR = create(key("entity.firework_rocket.large_blast_far")); + + /** + * {@code minecraft:entity.firework_rocket.launch} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FIREWORK_ROCKET_LAUNCH = create(key("entity.firework_rocket.launch")); + + /** + * {@code minecraft:entity.firework_rocket.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FIREWORK_ROCKET_SHOOT = create(key("entity.firework_rocket.shoot")); + + /** + * {@code minecraft:entity.firework_rocket.twinkle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FIREWORK_ROCKET_TWINKLE = create(key("entity.firework_rocket.twinkle")); + + /** + * {@code minecraft:entity.firework_rocket.twinkle_far} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FIREWORK_ROCKET_TWINKLE_FAR = create(key("entity.firework_rocket.twinkle_far")); + + /** + * {@code minecraft:entity.fish.swim} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FISH_SWIM = create(key("entity.fish.swim")); + + /** + * {@code minecraft:entity.fishing_bobber.retrieve} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FISHING_BOBBER_RETRIEVE = create(key("entity.fishing_bobber.retrieve")); + + /** + * {@code minecraft:entity.fishing_bobber.splash} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FISHING_BOBBER_SPLASH = create(key("entity.fishing_bobber.splash")); + + /** + * {@code minecraft:entity.fishing_bobber.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FISHING_BOBBER_THROW = create(key("entity.fishing_bobber.throw")); + + /** + * {@code minecraft:entity.fox.aggro} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_AGGRO = create(key("entity.fox.aggro")); + + /** + * {@code minecraft:entity.fox.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_AMBIENT = create(key("entity.fox.ambient")); + + /** + * {@code minecraft:entity.fox.bite} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_BITE = create(key("entity.fox.bite")); + + /** + * {@code minecraft:entity.fox.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_DEATH = create(key("entity.fox.death")); + + /** + * {@code minecraft:entity.fox.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_EAT = create(key("entity.fox.eat")); + + /** + * {@code minecraft:entity.fox.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_HURT = create(key("entity.fox.hurt")); + + /** + * {@code minecraft:entity.fox.screech} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_SCREECH = create(key("entity.fox.screech")); + + /** + * {@code minecraft:entity.fox.sleep} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_SLEEP = create(key("entity.fox.sleep")); + + /** + * {@code minecraft:entity.fox.sniff} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_SNIFF = create(key("entity.fox.sniff")); + + /** + * {@code minecraft:entity.fox.spit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_SPIT = create(key("entity.fox.spit")); + + /** + * {@code minecraft:entity.fox.teleport} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FOX_TELEPORT = create(key("entity.fox.teleport")); + + /** + * {@code minecraft:entity.frog.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FROG_AMBIENT = create(key("entity.frog.ambient")); + + /** + * {@code minecraft:entity.frog.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FROG_DEATH = create(key("entity.frog.death")); + + /** + * {@code minecraft:entity.frog.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FROG_EAT = create(key("entity.frog.eat")); + + /** + * {@code minecraft:entity.frog.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FROG_HURT = create(key("entity.frog.hurt")); + + /** + * {@code minecraft:entity.frog.lay_spawn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FROG_LAY_SPAWN = create(key("entity.frog.lay_spawn")); + + /** + * {@code minecraft:entity.frog.long_jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FROG_LONG_JUMP = create(key("entity.frog.long_jump")); + + /** + * {@code minecraft:entity.frog.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FROG_STEP = create(key("entity.frog.step")); + + /** + * {@code minecraft:entity.frog.tongue} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_FROG_TONGUE = create(key("entity.frog.tongue")); + + /** + * {@code minecraft:entity.generic.big_fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_BIG_FALL = create(key("entity.generic.big_fall")); + + /** + * {@code minecraft:entity.generic.burn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_BURN = create(key("entity.generic.burn")); + + /** + * {@code minecraft:entity.generic.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_DEATH = create(key("entity.generic.death")); + + /** + * {@code minecraft:entity.generic.drink} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_DRINK = create(key("entity.generic.drink")); + + /** + * {@code minecraft:entity.generic.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_EAT = create(key("entity.generic.eat")); + + /** + * {@code minecraft:entity.generic.explode} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_EXPLODE = create(key("entity.generic.explode")); + + /** + * {@code minecraft:entity.generic.extinguish_fire} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_EXTINGUISH_FIRE = create(key("entity.generic.extinguish_fire")); + + /** + * {@code minecraft:entity.generic.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_HURT = create(key("entity.generic.hurt")); + + /** + * {@code minecraft:entity.generic.small_fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_SMALL_FALL = create(key("entity.generic.small_fall")); + + /** + * {@code minecraft:entity.generic.splash} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_SPLASH = create(key("entity.generic.splash")); + + /** + * {@code minecraft:entity.generic.swim} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GENERIC_SWIM = create(key("entity.generic.swim")); + + /** + * {@code minecraft:entity.ghast.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GHAST_AMBIENT = create(key("entity.ghast.ambient")); + + /** + * {@code minecraft:entity.ghast.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GHAST_DEATH = create(key("entity.ghast.death")); + + /** + * {@code minecraft:entity.ghast.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GHAST_HURT = create(key("entity.ghast.hurt")); + + /** + * {@code minecraft:entity.ghast.scream} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GHAST_SCREAM = create(key("entity.ghast.scream")); + + /** + * {@code minecraft:entity.ghast.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GHAST_SHOOT = create(key("entity.ghast.shoot")); + + /** + * {@code minecraft:entity.ghast.warn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GHAST_WARN = create(key("entity.ghast.warn")); + + /** + * {@code minecraft:entity.glow_item_frame.add_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GLOW_ITEM_FRAME_ADD_ITEM = create(key("entity.glow_item_frame.add_item")); + + /** + * {@code minecraft:entity.glow_item_frame.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GLOW_ITEM_FRAME_BREAK = create(key("entity.glow_item_frame.break")); + + /** + * {@code minecraft:entity.glow_item_frame.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GLOW_ITEM_FRAME_PLACE = create(key("entity.glow_item_frame.place")); + + /** + * {@code minecraft:entity.glow_item_frame.remove_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GLOW_ITEM_FRAME_REMOVE_ITEM = create(key("entity.glow_item_frame.remove_item")); + + /** + * {@code minecraft:entity.glow_item_frame.rotate_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GLOW_ITEM_FRAME_ROTATE_ITEM = create(key("entity.glow_item_frame.rotate_item")); + + /** + * {@code minecraft:entity.glow_squid.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GLOW_SQUID_AMBIENT = create(key("entity.glow_squid.ambient")); + + /** + * {@code minecraft:entity.glow_squid.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GLOW_SQUID_DEATH = create(key("entity.glow_squid.death")); + + /** + * {@code minecraft:entity.glow_squid.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GLOW_SQUID_HURT = create(key("entity.glow_squid.hurt")); + + /** + * {@code minecraft:entity.glow_squid.squirt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GLOW_SQUID_SQUIRT = create(key("entity.glow_squid.squirt")); + + /** + * {@code minecraft:entity.goat.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_AMBIENT = create(key("entity.goat.ambient")); + + /** + * {@code minecraft:entity.goat.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_DEATH = create(key("entity.goat.death")); + + /** + * {@code minecraft:entity.goat.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_EAT = create(key("entity.goat.eat")); + + /** + * {@code minecraft:entity.goat.horn_break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_HORN_BREAK = create(key("entity.goat.horn_break")); + + /** + * {@code minecraft:entity.goat.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_HURT = create(key("entity.goat.hurt")); + + /** + * {@code minecraft:entity.goat.long_jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_LONG_JUMP = create(key("entity.goat.long_jump")); + + /** + * {@code minecraft:entity.goat.milk} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_MILK = create(key("entity.goat.milk")); + + /** + * {@code minecraft:entity.goat.prepare_ram} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_PREPARE_RAM = create(key("entity.goat.prepare_ram")); + + /** + * {@code minecraft:entity.goat.ram_impact} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_RAM_IMPACT = create(key("entity.goat.ram_impact")); + + /** + * {@code minecraft:entity.goat.screaming.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_SCREAMING_AMBIENT = create(key("entity.goat.screaming.ambient")); + + /** + * {@code minecraft:entity.goat.screaming.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_SCREAMING_DEATH = create(key("entity.goat.screaming.death")); + + /** + * {@code minecraft:entity.goat.screaming.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_SCREAMING_EAT = create(key("entity.goat.screaming.eat")); + + /** + * {@code minecraft:entity.goat.screaming.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_SCREAMING_HURT = create(key("entity.goat.screaming.hurt")); + + /** + * {@code minecraft:entity.goat.screaming.long_jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_SCREAMING_LONG_JUMP = create(key("entity.goat.screaming.long_jump")); + + /** + * {@code minecraft:entity.goat.screaming.milk} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_SCREAMING_MILK = create(key("entity.goat.screaming.milk")); + + /** + * {@code minecraft:entity.goat.screaming.prepare_ram} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_SCREAMING_PREPARE_RAM = create(key("entity.goat.screaming.prepare_ram")); + + /** + * {@code minecraft:entity.goat.screaming.ram_impact} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_SCREAMING_RAM_IMPACT = create(key("entity.goat.screaming.ram_impact")); + + /** + * {@code minecraft:entity.goat.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GOAT_STEP = create(key("entity.goat.step")); + + /** + * {@code minecraft:entity.guardian.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GUARDIAN_AMBIENT = create(key("entity.guardian.ambient")); + + /** + * {@code minecraft:entity.guardian.ambient_land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GUARDIAN_AMBIENT_LAND = create(key("entity.guardian.ambient_land")); + + /** + * {@code minecraft:entity.guardian.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GUARDIAN_ATTACK = create(key("entity.guardian.attack")); + + /** + * {@code minecraft:entity.guardian.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GUARDIAN_DEATH = create(key("entity.guardian.death")); + + /** + * {@code minecraft:entity.guardian.death_land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GUARDIAN_DEATH_LAND = create(key("entity.guardian.death_land")); + + /** + * {@code minecraft:entity.guardian.flop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GUARDIAN_FLOP = create(key("entity.guardian.flop")); + + /** + * {@code minecraft:entity.guardian.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GUARDIAN_HURT = create(key("entity.guardian.hurt")); + + /** + * {@code minecraft:entity.guardian.hurt_land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_GUARDIAN_HURT_LAND = create(key("entity.guardian.hurt_land")); + + /** + * {@code minecraft:entity.hoglin.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOGLIN_AMBIENT = create(key("entity.hoglin.ambient")); + + /** + * {@code minecraft:entity.hoglin.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOGLIN_ANGRY = create(key("entity.hoglin.angry")); + + /** + * {@code minecraft:entity.hoglin.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOGLIN_ATTACK = create(key("entity.hoglin.attack")); + + /** + * {@code minecraft:entity.hoglin.converted_to_zombified} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOGLIN_CONVERTED_TO_ZOMBIFIED = create(key("entity.hoglin.converted_to_zombified")); + + /** + * {@code minecraft:entity.hoglin.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOGLIN_DEATH = create(key("entity.hoglin.death")); + + /** + * {@code minecraft:entity.hoglin.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOGLIN_HURT = create(key("entity.hoglin.hurt")); + + /** + * {@code minecraft:entity.hoglin.retreat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOGLIN_RETREAT = create(key("entity.hoglin.retreat")); + + /** + * {@code minecraft:entity.hoglin.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOGLIN_STEP = create(key("entity.hoglin.step")); + + /** + * {@code minecraft:entity.horse.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_AMBIENT = create(key("entity.horse.ambient")); + + /** + * {@code minecraft:entity.horse.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_ANGRY = create(key("entity.horse.angry")); + + /** + * {@code minecraft:entity.horse.armor} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_ARMOR = create(key("entity.horse.armor")); + + /** + * {@code minecraft:entity.horse.breathe} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_BREATHE = create(key("entity.horse.breathe")); + + /** + * {@code minecraft:entity.horse.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_DEATH = create(key("entity.horse.death")); + + /** + * {@code minecraft:entity.horse.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_EAT = create(key("entity.horse.eat")); + + /** + * {@code minecraft:entity.horse.gallop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_GALLOP = create(key("entity.horse.gallop")); + + /** + * {@code minecraft:entity.horse.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_HURT = create(key("entity.horse.hurt")); + + /** + * {@code minecraft:entity.horse.jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_JUMP = create(key("entity.horse.jump")); + + /** + * {@code minecraft:entity.horse.land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_LAND = create(key("entity.horse.land")); + + /** + * {@code minecraft:entity.horse.saddle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_SADDLE = create(key("entity.horse.saddle")); + + /** + * {@code minecraft:entity.horse.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_STEP = create(key("entity.horse.step")); + + /** + * {@code minecraft:entity.horse.step_wood} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HORSE_STEP_WOOD = create(key("entity.horse.step_wood")); + + /** + * {@code minecraft:entity.hostile.big_fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOSTILE_BIG_FALL = create(key("entity.hostile.big_fall")); + + /** + * {@code minecraft:entity.hostile.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOSTILE_DEATH = create(key("entity.hostile.death")); + + /** + * {@code minecraft:entity.hostile.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOSTILE_HURT = create(key("entity.hostile.hurt")); + + /** + * {@code minecraft:entity.hostile.small_fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOSTILE_SMALL_FALL = create(key("entity.hostile.small_fall")); + + /** + * {@code minecraft:entity.hostile.splash} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOSTILE_SPLASH = create(key("entity.hostile.splash")); + + /** + * {@code minecraft:entity.hostile.swim} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HOSTILE_SWIM = create(key("entity.hostile.swim")); + + /** + * {@code minecraft:entity.husk.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HUSK_AMBIENT = create(key("entity.husk.ambient")); + + /** + * {@code minecraft:entity.husk.converted_to_zombie} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HUSK_CONVERTED_TO_ZOMBIE = create(key("entity.husk.converted_to_zombie")); + + /** + * {@code minecraft:entity.husk.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HUSK_DEATH = create(key("entity.husk.death")); + + /** + * {@code minecraft:entity.husk.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HUSK_HURT = create(key("entity.husk.hurt")); + + /** + * {@code minecraft:entity.husk.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_HUSK_STEP = create(key("entity.husk.step")); + + /** + * {@code minecraft:entity.illusioner.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ILLUSIONER_AMBIENT = create(key("entity.illusioner.ambient")); + + /** + * {@code minecraft:entity.illusioner.cast_spell} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ILLUSIONER_CAST_SPELL = create(key("entity.illusioner.cast_spell")); + + /** + * {@code minecraft:entity.illusioner.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ILLUSIONER_DEATH = create(key("entity.illusioner.death")); + + /** + * {@code minecraft:entity.illusioner.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ILLUSIONER_HURT = create(key("entity.illusioner.hurt")); + + /** + * {@code minecraft:entity.illusioner.mirror_move} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ILLUSIONER_MIRROR_MOVE = create(key("entity.illusioner.mirror_move")); + + /** + * {@code minecraft:entity.illusioner.prepare_blindness} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ILLUSIONER_PREPARE_BLINDNESS = create(key("entity.illusioner.prepare_blindness")); + + /** + * {@code minecraft:entity.illusioner.prepare_mirror} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ILLUSIONER_PREPARE_MIRROR = create(key("entity.illusioner.prepare_mirror")); + + /** + * {@code minecraft:entity.iron_golem.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_IRON_GOLEM_ATTACK = create(key("entity.iron_golem.attack")); + + /** + * {@code minecraft:entity.iron_golem.damage} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_IRON_GOLEM_DAMAGE = create(key("entity.iron_golem.damage")); + + /** + * {@code minecraft:entity.iron_golem.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_IRON_GOLEM_DEATH = create(key("entity.iron_golem.death")); + + /** + * {@code minecraft:entity.iron_golem.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_IRON_GOLEM_HURT = create(key("entity.iron_golem.hurt")); + + /** + * {@code minecraft:entity.iron_golem.repair} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_IRON_GOLEM_REPAIR = create(key("entity.iron_golem.repair")); + + /** + * {@code minecraft:entity.iron_golem.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_IRON_GOLEM_STEP = create(key("entity.iron_golem.step")); + + /** + * {@code minecraft:entity.item.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ITEM_BREAK = create(key("entity.item.break")); + + /** + * {@code minecraft:entity.item.pickup} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ITEM_PICKUP = create(key("entity.item.pickup")); + + /** + * {@code minecraft:entity.item_frame.add_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ITEM_FRAME_ADD_ITEM = create(key("entity.item_frame.add_item")); + + /** + * {@code minecraft:entity.item_frame.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ITEM_FRAME_BREAK = create(key("entity.item_frame.break")); + + /** + * {@code minecraft:entity.item_frame.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ITEM_FRAME_PLACE = create(key("entity.item_frame.place")); + + /** + * {@code minecraft:entity.item_frame.remove_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ITEM_FRAME_REMOVE_ITEM = create(key("entity.item_frame.remove_item")); + + /** + * {@code minecraft:entity.item_frame.rotate_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ITEM_FRAME_ROTATE_ITEM = create(key("entity.item_frame.rotate_item")); + + /** + * {@code minecraft:entity.leash_knot.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LEASH_KNOT_BREAK = create(key("entity.leash_knot.break")); + + /** + * {@code minecraft:entity.leash_knot.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LEASH_KNOT_PLACE = create(key("entity.leash_knot.place")); + + /** + * {@code minecraft:entity.lightning_bolt.impact} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LIGHTNING_BOLT_IMPACT = create(key("entity.lightning_bolt.impact")); + + /** + * {@code minecraft:entity.lightning_bolt.thunder} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LIGHTNING_BOLT_THUNDER = create(key("entity.lightning_bolt.thunder")); + + /** + * {@code minecraft:entity.lingering_potion.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LINGERING_POTION_THROW = create(key("entity.lingering_potion.throw")); + + /** + * {@code minecraft:entity.llama.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LLAMA_AMBIENT = create(key("entity.llama.ambient")); + + /** + * {@code minecraft:entity.llama.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LLAMA_ANGRY = create(key("entity.llama.angry")); + + /** + * {@code minecraft:entity.llama.chest} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LLAMA_CHEST = create(key("entity.llama.chest")); + + /** + * {@code minecraft:entity.llama.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LLAMA_DEATH = create(key("entity.llama.death")); + + /** + * {@code minecraft:entity.llama.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LLAMA_EAT = create(key("entity.llama.eat")); + + /** + * {@code minecraft:entity.llama.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LLAMA_HURT = create(key("entity.llama.hurt")); + + /** + * {@code minecraft:entity.llama.spit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LLAMA_SPIT = create(key("entity.llama.spit")); + + /** + * {@code minecraft:entity.llama.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LLAMA_STEP = create(key("entity.llama.step")); + + /** + * {@code minecraft:entity.llama.swag} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_LLAMA_SWAG = create(key("entity.llama.swag")); + + /** + * {@code minecraft:entity.magma_cube.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MAGMA_CUBE_DEATH = create(key("entity.magma_cube.death")); + + /** + * {@code minecraft:entity.magma_cube.death_small} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MAGMA_CUBE_DEATH_SMALL = create(key("entity.magma_cube.death_small")); + + /** + * {@code minecraft:entity.magma_cube.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MAGMA_CUBE_HURT = create(key("entity.magma_cube.hurt")); + + /** + * {@code minecraft:entity.magma_cube.hurt_small} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MAGMA_CUBE_HURT_SMALL = create(key("entity.magma_cube.hurt_small")); + + /** + * {@code minecraft:entity.magma_cube.jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MAGMA_CUBE_JUMP = create(key("entity.magma_cube.jump")); + + /** + * {@code minecraft:entity.magma_cube.squish} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MAGMA_CUBE_SQUISH = create(key("entity.magma_cube.squish")); + + /** + * {@code minecraft:entity.magma_cube.squish_small} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MAGMA_CUBE_SQUISH_SMALL = create(key("entity.magma_cube.squish_small")); + + /** + * {@code minecraft:entity.minecart.inside} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MINECART_INSIDE = create(key("entity.minecart.inside")); + + /** + * {@code minecraft:entity.minecart.inside.underwater} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MINECART_INSIDE_UNDERWATER = create(key("entity.minecart.inside.underwater")); + + /** + * {@code minecraft:entity.minecart.riding} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MINECART_RIDING = create(key("entity.minecart.riding")); + + /** + * {@code minecraft:entity.mooshroom.convert} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MOOSHROOM_CONVERT = create(key("entity.mooshroom.convert")); + + /** + * {@code minecraft:entity.mooshroom.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MOOSHROOM_EAT = create(key("entity.mooshroom.eat")); + + /** + * {@code minecraft:entity.mooshroom.milk} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MOOSHROOM_MILK = create(key("entity.mooshroom.milk")); + + /** + * {@code minecraft:entity.mooshroom.shear} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MOOSHROOM_SHEAR = create(key("entity.mooshroom.shear")); + + /** + * {@code minecraft:entity.mooshroom.suspicious_milk} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MOOSHROOM_SUSPICIOUS_MILK = create(key("entity.mooshroom.suspicious_milk")); + + /** + * {@code minecraft:entity.mule.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MULE_AMBIENT = create(key("entity.mule.ambient")); + + /** + * {@code minecraft:entity.mule.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MULE_ANGRY = create(key("entity.mule.angry")); + + /** + * {@code minecraft:entity.mule.chest} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MULE_CHEST = create(key("entity.mule.chest")); + + /** + * {@code minecraft:entity.mule.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MULE_DEATH = create(key("entity.mule.death")); + + /** + * {@code minecraft:entity.mule.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MULE_EAT = create(key("entity.mule.eat")); + + /** + * {@code minecraft:entity.mule.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MULE_HURT = create(key("entity.mule.hurt")); + + /** + * {@code minecraft:entity.mule.jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_MULE_JUMP = create(key("entity.mule.jump")); + + /** + * {@code minecraft:entity.ocelot.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_OCELOT_AMBIENT = create(key("entity.ocelot.ambient")); + + /** + * {@code minecraft:entity.ocelot.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_OCELOT_DEATH = create(key("entity.ocelot.death")); + + /** + * {@code minecraft:entity.ocelot.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_OCELOT_HURT = create(key("entity.ocelot.hurt")); + + /** + * {@code minecraft:entity.painting.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PAINTING_BREAK = create(key("entity.painting.break")); + + /** + * {@code minecraft:entity.painting.place} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PAINTING_PLACE = create(key("entity.painting.place")); + + /** + * {@code minecraft:entity.panda.aggressive_ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_AGGRESSIVE_AMBIENT = create(key("entity.panda.aggressive_ambient")); + + /** + * {@code minecraft:entity.panda.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_AMBIENT = create(key("entity.panda.ambient")); + + /** + * {@code minecraft:entity.panda.bite} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_BITE = create(key("entity.panda.bite")); + + /** + * {@code minecraft:entity.panda.cant_breed} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_CANT_BREED = create(key("entity.panda.cant_breed")); + + /** + * {@code minecraft:entity.panda.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_DEATH = create(key("entity.panda.death")); + + /** + * {@code minecraft:entity.panda.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_EAT = create(key("entity.panda.eat")); + + /** + * {@code minecraft:entity.panda.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_HURT = create(key("entity.panda.hurt")); + + /** + * {@code minecraft:entity.panda.pre_sneeze} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_PRE_SNEEZE = create(key("entity.panda.pre_sneeze")); + + /** + * {@code minecraft:entity.panda.sneeze} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_SNEEZE = create(key("entity.panda.sneeze")); + + /** + * {@code minecraft:entity.panda.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_STEP = create(key("entity.panda.step")); + + /** + * {@code minecraft:entity.panda.worried_ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PANDA_WORRIED_AMBIENT = create(key("entity.panda.worried_ambient")); + + /** + * {@code minecraft:entity.parrot.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_AMBIENT = create(key("entity.parrot.ambient")); + + /** + * {@code minecraft:entity.parrot.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_DEATH = create(key("entity.parrot.death")); + + /** + * {@code minecraft:entity.parrot.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_EAT = create(key("entity.parrot.eat")); + + /** + * {@code minecraft:entity.parrot.fly} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_FLY = create(key("entity.parrot.fly")); + + /** + * {@code minecraft:entity.parrot.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_HURT = create(key("entity.parrot.hurt")); + + /** + * {@code minecraft:entity.parrot.imitate.blaze} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_BLAZE = create(key("entity.parrot.imitate.blaze")); + + /** + * {@code minecraft:entity.parrot.imitate.bogged} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_BOGGED = create(key("entity.parrot.imitate.bogged")); + + /** + * {@code minecraft:entity.parrot.imitate.breeze} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_BREEZE = create(key("entity.parrot.imitate.breeze")); + + /** + * {@code minecraft:entity.parrot.imitate.creaking} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_CREAKING = create(key("entity.parrot.imitate.creaking")); + + /** + * {@code minecraft:entity.parrot.imitate.creeper} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_CREEPER = create(key("entity.parrot.imitate.creeper")); + + /** + * {@code minecraft:entity.parrot.imitate.drowned} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_DROWNED = create(key("entity.parrot.imitate.drowned")); + + /** + * {@code minecraft:entity.parrot.imitate.elder_guardian} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_ELDER_GUARDIAN = create(key("entity.parrot.imitate.elder_guardian")); + + /** + * {@code minecraft:entity.parrot.imitate.ender_dragon} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_ENDER_DRAGON = create(key("entity.parrot.imitate.ender_dragon")); + + /** + * {@code minecraft:entity.parrot.imitate.endermite} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_ENDERMITE = create(key("entity.parrot.imitate.endermite")); + + /** + * {@code minecraft:entity.parrot.imitate.evoker} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_EVOKER = create(key("entity.parrot.imitate.evoker")); + + /** + * {@code minecraft:entity.parrot.imitate.ghast} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_GHAST = create(key("entity.parrot.imitate.ghast")); + + /** + * {@code minecraft:entity.parrot.imitate.guardian} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_GUARDIAN = create(key("entity.parrot.imitate.guardian")); + + /** + * {@code minecraft:entity.parrot.imitate.hoglin} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_HOGLIN = create(key("entity.parrot.imitate.hoglin")); + + /** + * {@code minecraft:entity.parrot.imitate.husk} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_HUSK = create(key("entity.parrot.imitate.husk")); + + /** + * {@code minecraft:entity.parrot.imitate.illusioner} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_ILLUSIONER = create(key("entity.parrot.imitate.illusioner")); + + /** + * {@code minecraft:entity.parrot.imitate.magma_cube} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_MAGMA_CUBE = create(key("entity.parrot.imitate.magma_cube")); + + /** + * {@code minecraft:entity.parrot.imitate.phantom} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_PHANTOM = create(key("entity.parrot.imitate.phantom")); + + /** + * {@code minecraft:entity.parrot.imitate.piglin} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_PIGLIN = create(key("entity.parrot.imitate.piglin")); + + /** + * {@code minecraft:entity.parrot.imitate.piglin_brute} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_PIGLIN_BRUTE = create(key("entity.parrot.imitate.piglin_brute")); + + /** + * {@code minecraft:entity.parrot.imitate.pillager} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_PILLAGER = create(key("entity.parrot.imitate.pillager")); + + /** + * {@code minecraft:entity.parrot.imitate.ravager} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_RAVAGER = create(key("entity.parrot.imitate.ravager")); + + /** + * {@code minecraft:entity.parrot.imitate.shulker} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_SHULKER = create(key("entity.parrot.imitate.shulker")); + + /** + * {@code minecraft:entity.parrot.imitate.silverfish} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_SILVERFISH = create(key("entity.parrot.imitate.silverfish")); + + /** + * {@code minecraft:entity.parrot.imitate.skeleton} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_SKELETON = create(key("entity.parrot.imitate.skeleton")); + + /** + * {@code minecraft:entity.parrot.imitate.slime} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_SLIME = create(key("entity.parrot.imitate.slime")); + + /** + * {@code minecraft:entity.parrot.imitate.spider} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_SPIDER = create(key("entity.parrot.imitate.spider")); + + /** + * {@code minecraft:entity.parrot.imitate.stray} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_STRAY = create(key("entity.parrot.imitate.stray")); + + /** + * {@code minecraft:entity.parrot.imitate.vex} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_VEX = create(key("entity.parrot.imitate.vex")); + + /** + * {@code minecraft:entity.parrot.imitate.vindicator} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_VINDICATOR = create(key("entity.parrot.imitate.vindicator")); + + /** + * {@code minecraft:entity.parrot.imitate.warden} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_WARDEN = create(key("entity.parrot.imitate.warden")); + + /** + * {@code minecraft:entity.parrot.imitate.witch} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_WITCH = create(key("entity.parrot.imitate.witch")); + + /** + * {@code minecraft:entity.parrot.imitate.wither} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_WITHER = create(key("entity.parrot.imitate.wither")); + + /** + * {@code minecraft:entity.parrot.imitate.wither_skeleton} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_WITHER_SKELETON = create(key("entity.parrot.imitate.wither_skeleton")); + + /** + * {@code minecraft:entity.parrot.imitate.zoglin} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_ZOGLIN = create(key("entity.parrot.imitate.zoglin")); + + /** + * {@code minecraft:entity.parrot.imitate.zombie} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_ZOMBIE = create(key("entity.parrot.imitate.zombie")); + + /** + * {@code minecraft:entity.parrot.imitate.zombie_villager} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_IMITATE_ZOMBIE_VILLAGER = create(key("entity.parrot.imitate.zombie_villager")); + + /** + * {@code minecraft:entity.parrot.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PARROT_STEP = create(key("entity.parrot.step")); + + /** + * {@code minecraft:entity.phantom.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PHANTOM_AMBIENT = create(key("entity.phantom.ambient")); + + /** + * {@code minecraft:entity.phantom.bite} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PHANTOM_BITE = create(key("entity.phantom.bite")); + + /** + * {@code minecraft:entity.phantom.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PHANTOM_DEATH = create(key("entity.phantom.death")); + + /** + * {@code minecraft:entity.phantom.flap} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PHANTOM_FLAP = create(key("entity.phantom.flap")); + + /** + * {@code minecraft:entity.phantom.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PHANTOM_HURT = create(key("entity.phantom.hurt")); + + /** + * {@code minecraft:entity.phantom.swoop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PHANTOM_SWOOP = create(key("entity.phantom.swoop")); + + /** + * {@code minecraft:entity.pig.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIG_AMBIENT = create(key("entity.pig.ambient")); + + /** + * {@code minecraft:entity.pig.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIG_DEATH = create(key("entity.pig.death")); + + /** + * {@code minecraft:entity.pig.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIG_HURT = create(key("entity.pig.hurt")); + + /** + * {@code minecraft:entity.pig.saddle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIG_SADDLE = create(key("entity.pig.saddle")); + + /** + * {@code minecraft:entity.pig.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIG_STEP = create(key("entity.pig.step")); + + /** + * {@code minecraft:entity.piglin.admiring_item} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_ADMIRING_ITEM = create(key("entity.piglin.admiring_item")); + + /** + * {@code minecraft:entity.piglin.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_AMBIENT = create(key("entity.piglin.ambient")); + + /** + * {@code minecraft:entity.piglin.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_ANGRY = create(key("entity.piglin.angry")); + + /** + * {@code minecraft:entity.piglin.celebrate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_CELEBRATE = create(key("entity.piglin.celebrate")); + + /** + * {@code minecraft:entity.piglin.converted_to_zombified} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_CONVERTED_TO_ZOMBIFIED = create(key("entity.piglin.converted_to_zombified")); + + /** + * {@code minecraft:entity.piglin.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_DEATH = create(key("entity.piglin.death")); + + /** + * {@code minecraft:entity.piglin.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_HURT = create(key("entity.piglin.hurt")); + + /** + * {@code minecraft:entity.piglin.jealous} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_JEALOUS = create(key("entity.piglin.jealous")); + + /** + * {@code minecraft:entity.piglin.retreat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_RETREAT = create(key("entity.piglin.retreat")); + + /** + * {@code minecraft:entity.piglin.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_STEP = create(key("entity.piglin.step")); + + /** + * {@code minecraft:entity.piglin_brute.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_BRUTE_AMBIENT = create(key("entity.piglin_brute.ambient")); + + /** + * {@code minecraft:entity.piglin_brute.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_BRUTE_ANGRY = create(key("entity.piglin_brute.angry")); + + /** + * {@code minecraft:entity.piglin_brute.converted_to_zombified} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_BRUTE_CONVERTED_TO_ZOMBIFIED = create(key("entity.piglin_brute.converted_to_zombified")); + + /** + * {@code minecraft:entity.piglin_brute.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_BRUTE_DEATH = create(key("entity.piglin_brute.death")); + + /** + * {@code minecraft:entity.piglin_brute.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_BRUTE_HURT = create(key("entity.piglin_brute.hurt")); + + /** + * {@code minecraft:entity.piglin_brute.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PIGLIN_BRUTE_STEP = create(key("entity.piglin_brute.step")); + + /** + * {@code minecraft:entity.pillager.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PILLAGER_AMBIENT = create(key("entity.pillager.ambient")); + + /** + * {@code minecraft:entity.pillager.celebrate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PILLAGER_CELEBRATE = create(key("entity.pillager.celebrate")); + + /** + * {@code minecraft:entity.pillager.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PILLAGER_DEATH = create(key("entity.pillager.death")); + + /** + * {@code minecraft:entity.pillager.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PILLAGER_HURT = create(key("entity.pillager.hurt")); + + /** + * {@code minecraft:entity.player.attack.crit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_ATTACK_CRIT = create(key("entity.player.attack.crit")); + + /** + * {@code minecraft:entity.player.attack.knockback} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_ATTACK_KNOCKBACK = create(key("entity.player.attack.knockback")); + + /** + * {@code minecraft:entity.player.attack.nodamage} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_ATTACK_NODAMAGE = create(key("entity.player.attack.nodamage")); + + /** + * {@code minecraft:entity.player.attack.strong} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_ATTACK_STRONG = create(key("entity.player.attack.strong")); + + /** + * {@code minecraft:entity.player.attack.sweep} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_ATTACK_SWEEP = create(key("entity.player.attack.sweep")); + + /** + * {@code minecraft:entity.player.attack.weak} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_ATTACK_WEAK = create(key("entity.player.attack.weak")); + + /** + * {@code minecraft:entity.player.big_fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_BIG_FALL = create(key("entity.player.big_fall")); + + /** + * {@code minecraft:entity.player.breath} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_BREATH = create(key("entity.player.breath")); + + /** + * {@code minecraft:entity.player.burp} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_BURP = create(key("entity.player.burp")); + + /** + * {@code minecraft:entity.player.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_DEATH = create(key("entity.player.death")); + + /** + * {@code minecraft:entity.player.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_HURT = create(key("entity.player.hurt")); + + /** + * {@code minecraft:entity.player.hurt_drown} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_HURT_DROWN = create(key("entity.player.hurt_drown")); + + /** + * {@code minecraft:entity.player.hurt_freeze} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_HURT_FREEZE = create(key("entity.player.hurt_freeze")); + + /** + * {@code minecraft:entity.player.hurt_on_fire} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_HURT_ON_FIRE = create(key("entity.player.hurt_on_fire")); + + /** + * {@code minecraft:entity.player.hurt_sweet_berry_bush} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_HURT_SWEET_BERRY_BUSH = create(key("entity.player.hurt_sweet_berry_bush")); + + /** + * {@code minecraft:entity.player.levelup} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_LEVELUP = create(key("entity.player.levelup")); + + /** + * {@code minecraft:entity.player.small_fall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_SMALL_FALL = create(key("entity.player.small_fall")); + + /** + * {@code minecraft:entity.player.splash} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_SPLASH = create(key("entity.player.splash")); + + /** + * {@code minecraft:entity.player.splash.high_speed} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_SPLASH_HIGH_SPEED = create(key("entity.player.splash.high_speed")); + + /** + * {@code minecraft:entity.player.swim} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_SWIM = create(key("entity.player.swim")); + + /** + * {@code minecraft:entity.player.teleport} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PLAYER_TELEPORT = create(key("entity.player.teleport")); + + /** + * {@code minecraft:entity.polar_bear.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_POLAR_BEAR_AMBIENT = create(key("entity.polar_bear.ambient")); + + /** + * {@code minecraft:entity.polar_bear.ambient_baby} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_POLAR_BEAR_AMBIENT_BABY = create(key("entity.polar_bear.ambient_baby")); + + /** + * {@code minecraft:entity.polar_bear.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_POLAR_BEAR_DEATH = create(key("entity.polar_bear.death")); + + /** + * {@code minecraft:entity.polar_bear.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_POLAR_BEAR_HURT = create(key("entity.polar_bear.hurt")); + + /** + * {@code minecraft:entity.polar_bear.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_POLAR_BEAR_STEP = create(key("entity.polar_bear.step")); + + /** + * {@code minecraft:entity.polar_bear.warning} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_POLAR_BEAR_WARNING = create(key("entity.polar_bear.warning")); + + /** + * {@code minecraft:entity.puffer_fish.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PUFFER_FISH_AMBIENT = create(key("entity.puffer_fish.ambient")); + + /** + * {@code minecraft:entity.puffer_fish.blow_out} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PUFFER_FISH_BLOW_OUT = create(key("entity.puffer_fish.blow_out")); + + /** + * {@code minecraft:entity.puffer_fish.blow_up} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PUFFER_FISH_BLOW_UP = create(key("entity.puffer_fish.blow_up")); + + /** + * {@code minecraft:entity.puffer_fish.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PUFFER_FISH_DEATH = create(key("entity.puffer_fish.death")); + + /** + * {@code minecraft:entity.puffer_fish.flop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PUFFER_FISH_FLOP = create(key("entity.puffer_fish.flop")); + + /** + * {@code minecraft:entity.puffer_fish.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PUFFER_FISH_HURT = create(key("entity.puffer_fish.hurt")); + + /** + * {@code minecraft:entity.puffer_fish.sting} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_PUFFER_FISH_STING = create(key("entity.puffer_fish.sting")); + + /** + * {@code minecraft:entity.rabbit.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RABBIT_AMBIENT = create(key("entity.rabbit.ambient")); + + /** + * {@code minecraft:entity.rabbit.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RABBIT_ATTACK = create(key("entity.rabbit.attack")); + + /** + * {@code minecraft:entity.rabbit.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RABBIT_DEATH = create(key("entity.rabbit.death")); + + /** + * {@code minecraft:entity.rabbit.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RABBIT_HURT = create(key("entity.rabbit.hurt")); + + /** + * {@code minecraft:entity.rabbit.jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RABBIT_JUMP = create(key("entity.rabbit.jump")); + + /** + * {@code minecraft:entity.ravager.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RAVAGER_AMBIENT = create(key("entity.ravager.ambient")); + + /** + * {@code minecraft:entity.ravager.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RAVAGER_ATTACK = create(key("entity.ravager.attack")); + + /** + * {@code minecraft:entity.ravager.celebrate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RAVAGER_CELEBRATE = create(key("entity.ravager.celebrate")); + + /** + * {@code minecraft:entity.ravager.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RAVAGER_DEATH = create(key("entity.ravager.death")); + + /** + * {@code minecraft:entity.ravager.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RAVAGER_HURT = create(key("entity.ravager.hurt")); + + /** + * {@code minecraft:entity.ravager.roar} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RAVAGER_ROAR = create(key("entity.ravager.roar")); + + /** + * {@code minecraft:entity.ravager.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RAVAGER_STEP = create(key("entity.ravager.step")); + + /** + * {@code minecraft:entity.ravager.stunned} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_RAVAGER_STUNNED = create(key("entity.ravager.stunned")); + + /** + * {@code minecraft:entity.salmon.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SALMON_AMBIENT = create(key("entity.salmon.ambient")); + + /** + * {@code minecraft:entity.salmon.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SALMON_DEATH = create(key("entity.salmon.death")); + + /** + * {@code minecraft:entity.salmon.flop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SALMON_FLOP = create(key("entity.salmon.flop")); + + /** + * {@code minecraft:entity.salmon.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SALMON_HURT = create(key("entity.salmon.hurt")); + + /** + * {@code minecraft:entity.sheep.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHEEP_AMBIENT = create(key("entity.sheep.ambient")); + + /** + * {@code minecraft:entity.sheep.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHEEP_DEATH = create(key("entity.sheep.death")); + + /** + * {@code minecraft:entity.sheep.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHEEP_HURT = create(key("entity.sheep.hurt")); + + /** + * {@code minecraft:entity.sheep.shear} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHEEP_SHEAR = create(key("entity.sheep.shear")); + + /** + * {@code minecraft:entity.sheep.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHEEP_STEP = create(key("entity.sheep.step")); + + /** + * {@code minecraft:entity.shulker.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_AMBIENT = create(key("entity.shulker.ambient")); + + /** + * {@code minecraft:entity.shulker.close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_CLOSE = create(key("entity.shulker.close")); + + /** + * {@code minecraft:entity.shulker.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_DEATH = create(key("entity.shulker.death")); + + /** + * {@code minecraft:entity.shulker.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_HURT = create(key("entity.shulker.hurt")); + + /** + * {@code minecraft:entity.shulker.hurt_closed} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_HURT_CLOSED = create(key("entity.shulker.hurt_closed")); + + /** + * {@code minecraft:entity.shulker.open} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_OPEN = create(key("entity.shulker.open")); + + /** + * {@code minecraft:entity.shulker.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_SHOOT = create(key("entity.shulker.shoot")); + + /** + * {@code minecraft:entity.shulker.teleport} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_TELEPORT = create(key("entity.shulker.teleport")); + + /** + * {@code minecraft:entity.shulker_bullet.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_BULLET_HIT = create(key("entity.shulker_bullet.hit")); + + /** + * {@code minecraft:entity.shulker_bullet.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SHULKER_BULLET_HURT = create(key("entity.shulker_bullet.hurt")); + + /** + * {@code minecraft:entity.silverfish.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SILVERFISH_AMBIENT = create(key("entity.silverfish.ambient")); + + /** + * {@code minecraft:entity.silverfish.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SILVERFISH_DEATH = create(key("entity.silverfish.death")); + + /** + * {@code minecraft:entity.silverfish.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SILVERFISH_HURT = create(key("entity.silverfish.hurt")); + + /** + * {@code minecraft:entity.silverfish.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SILVERFISH_STEP = create(key("entity.silverfish.step")); + + /** + * {@code minecraft:entity.skeleton.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_AMBIENT = create(key("entity.skeleton.ambient")); + + /** + * {@code minecraft:entity.skeleton.converted_to_stray} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_CONVERTED_TO_STRAY = create(key("entity.skeleton.converted_to_stray")); + + /** + * {@code minecraft:entity.skeleton.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_DEATH = create(key("entity.skeleton.death")); + + /** + * {@code minecraft:entity.skeleton.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_HURT = create(key("entity.skeleton.hurt")); + + /** + * {@code minecraft:entity.skeleton.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_SHOOT = create(key("entity.skeleton.shoot")); + + /** + * {@code minecraft:entity.skeleton.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_STEP = create(key("entity.skeleton.step")); + + /** + * {@code minecraft:entity.skeleton_horse.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_HORSE_AMBIENT = create(key("entity.skeleton_horse.ambient")); + + /** + * {@code minecraft:entity.skeleton_horse.ambient_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_HORSE_AMBIENT_WATER = create(key("entity.skeleton_horse.ambient_water")); + + /** + * {@code minecraft:entity.skeleton_horse.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_HORSE_DEATH = create(key("entity.skeleton_horse.death")); + + /** + * {@code minecraft:entity.skeleton_horse.gallop_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_HORSE_GALLOP_WATER = create(key("entity.skeleton_horse.gallop_water")); + + /** + * {@code minecraft:entity.skeleton_horse.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_HORSE_HURT = create(key("entity.skeleton_horse.hurt")); + + /** + * {@code minecraft:entity.skeleton_horse.jump_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_HORSE_JUMP_WATER = create(key("entity.skeleton_horse.jump_water")); + + /** + * {@code minecraft:entity.skeleton_horse.step_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_HORSE_STEP_WATER = create(key("entity.skeleton_horse.step_water")); + + /** + * {@code minecraft:entity.skeleton_horse.swim} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SKELETON_HORSE_SWIM = create(key("entity.skeleton_horse.swim")); + + /** + * {@code minecraft:entity.slime.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SLIME_ATTACK = create(key("entity.slime.attack")); + + /** + * {@code minecraft:entity.slime.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SLIME_DEATH = create(key("entity.slime.death")); + + /** + * {@code minecraft:entity.slime.death_small} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SLIME_DEATH_SMALL = create(key("entity.slime.death_small")); + + /** + * {@code minecraft:entity.slime.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SLIME_HURT = create(key("entity.slime.hurt")); + + /** + * {@code minecraft:entity.slime.hurt_small} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SLIME_HURT_SMALL = create(key("entity.slime.hurt_small")); + + /** + * {@code minecraft:entity.slime.jump} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SLIME_JUMP = create(key("entity.slime.jump")); + + /** + * {@code minecraft:entity.slime.jump_small} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SLIME_JUMP_SMALL = create(key("entity.slime.jump_small")); + + /** + * {@code minecraft:entity.slime.squish} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SLIME_SQUISH = create(key("entity.slime.squish")); + + /** + * {@code minecraft:entity.slime.squish_small} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SLIME_SQUISH_SMALL = create(key("entity.slime.squish_small")); + + /** + * {@code minecraft:entity.sniffer.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_DEATH = create(key("entity.sniffer.death")); + + /** + * {@code minecraft:entity.sniffer.digging} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_DIGGING = create(key("entity.sniffer.digging")); + + /** + * {@code minecraft:entity.sniffer.digging_stop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_DIGGING_STOP = create(key("entity.sniffer.digging_stop")); + + /** + * {@code minecraft:entity.sniffer.drop_seed} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_DROP_SEED = create(key("entity.sniffer.drop_seed")); + + /** + * {@code minecraft:entity.sniffer.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_EAT = create(key("entity.sniffer.eat")); + + /** + * {@code minecraft:entity.sniffer.happy} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_HAPPY = create(key("entity.sniffer.happy")); + + /** + * {@code minecraft:entity.sniffer.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_HURT = create(key("entity.sniffer.hurt")); + + /** + * {@code minecraft:entity.sniffer.idle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_IDLE = create(key("entity.sniffer.idle")); + + /** + * {@code minecraft:entity.sniffer.scenting} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_SCENTING = create(key("entity.sniffer.scenting")); + + /** + * {@code minecraft:entity.sniffer.searching} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_SEARCHING = create(key("entity.sniffer.searching")); + + /** + * {@code minecraft:entity.sniffer.sniffing} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_SNIFFING = create(key("entity.sniffer.sniffing")); + + /** + * {@code minecraft:entity.sniffer.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNIFFER_STEP = create(key("entity.sniffer.step")); + + /** + * {@code minecraft:entity.snow_golem.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNOW_GOLEM_AMBIENT = create(key("entity.snow_golem.ambient")); + + /** + * {@code minecraft:entity.snow_golem.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNOW_GOLEM_DEATH = create(key("entity.snow_golem.death")); + + /** + * {@code minecraft:entity.snow_golem.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNOW_GOLEM_HURT = create(key("entity.snow_golem.hurt")); + + /** + * {@code minecraft:entity.snow_golem.shear} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNOW_GOLEM_SHEAR = create(key("entity.snow_golem.shear")); + + /** + * {@code minecraft:entity.snow_golem.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNOW_GOLEM_SHOOT = create(key("entity.snow_golem.shoot")); + + /** + * {@code minecraft:entity.snowball.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SNOWBALL_THROW = create(key("entity.snowball.throw")); + + /** + * {@code minecraft:entity.spider.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SPIDER_AMBIENT = create(key("entity.spider.ambient")); + + /** + * {@code minecraft:entity.spider.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SPIDER_DEATH = create(key("entity.spider.death")); + + /** + * {@code minecraft:entity.spider.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SPIDER_HURT = create(key("entity.spider.hurt")); + + /** + * {@code minecraft:entity.spider.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SPIDER_STEP = create(key("entity.spider.step")); + + /** + * {@code minecraft:entity.splash_potion.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SPLASH_POTION_BREAK = create(key("entity.splash_potion.break")); + + /** + * {@code minecraft:entity.splash_potion.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SPLASH_POTION_THROW = create(key("entity.splash_potion.throw")); + + /** + * {@code minecraft:entity.squid.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SQUID_AMBIENT = create(key("entity.squid.ambient")); + + /** + * {@code minecraft:entity.squid.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SQUID_DEATH = create(key("entity.squid.death")); + + /** + * {@code minecraft:entity.squid.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SQUID_HURT = create(key("entity.squid.hurt")); + + /** + * {@code minecraft:entity.squid.squirt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_SQUID_SQUIRT = create(key("entity.squid.squirt")); + + /** + * {@code minecraft:entity.stray.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRAY_AMBIENT = create(key("entity.stray.ambient")); + + /** + * {@code minecraft:entity.stray.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRAY_DEATH = create(key("entity.stray.death")); + + /** + * {@code minecraft:entity.stray.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRAY_HURT = create(key("entity.stray.hurt")); + + /** + * {@code minecraft:entity.stray.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRAY_STEP = create(key("entity.stray.step")); + + /** + * {@code minecraft:entity.strider.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRIDER_AMBIENT = create(key("entity.strider.ambient")); + + /** + * {@code minecraft:entity.strider.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRIDER_DEATH = create(key("entity.strider.death")); + + /** + * {@code minecraft:entity.strider.eat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRIDER_EAT = create(key("entity.strider.eat")); + + /** + * {@code minecraft:entity.strider.happy} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRIDER_HAPPY = create(key("entity.strider.happy")); + + /** + * {@code minecraft:entity.strider.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRIDER_HURT = create(key("entity.strider.hurt")); + + /** + * {@code minecraft:entity.strider.retreat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRIDER_RETREAT = create(key("entity.strider.retreat")); + + /** + * {@code minecraft:entity.strider.saddle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRIDER_SADDLE = create(key("entity.strider.saddle")); + + /** + * {@code minecraft:entity.strider.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRIDER_STEP = create(key("entity.strider.step")); + + /** + * {@code minecraft:entity.strider.step_lava} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_STRIDER_STEP_LAVA = create(key("entity.strider.step_lava")); + + /** + * {@code minecraft:entity.tadpole.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TADPOLE_DEATH = create(key("entity.tadpole.death")); + + /** + * {@code minecraft:entity.tadpole.flop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TADPOLE_FLOP = create(key("entity.tadpole.flop")); + + /** + * {@code minecraft:entity.tadpole.grow_up} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TADPOLE_GROW_UP = create(key("entity.tadpole.grow_up")); + + /** + * {@code minecraft:entity.tadpole.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TADPOLE_HURT = create(key("entity.tadpole.hurt")); + + /** + * {@code minecraft:entity.tnt.primed} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TNT_PRIMED = create(key("entity.tnt.primed")); + + /** + * {@code minecraft:entity.tropical_fish.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TROPICAL_FISH_AMBIENT = create(key("entity.tropical_fish.ambient")); + + /** + * {@code minecraft:entity.tropical_fish.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TROPICAL_FISH_DEATH = create(key("entity.tropical_fish.death")); + + /** + * {@code minecraft:entity.tropical_fish.flop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TROPICAL_FISH_FLOP = create(key("entity.tropical_fish.flop")); + + /** + * {@code minecraft:entity.tropical_fish.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TROPICAL_FISH_HURT = create(key("entity.tropical_fish.hurt")); + + /** + * {@code minecraft:entity.turtle.ambient_land} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_AMBIENT_LAND = create(key("entity.turtle.ambient_land")); + + /** + * {@code minecraft:entity.turtle.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_DEATH = create(key("entity.turtle.death")); + + /** + * {@code minecraft:entity.turtle.death_baby} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_DEATH_BABY = create(key("entity.turtle.death_baby")); + + /** + * {@code minecraft:entity.turtle.egg_break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_EGG_BREAK = create(key("entity.turtle.egg_break")); + + /** + * {@code minecraft:entity.turtle.egg_crack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_EGG_CRACK = create(key("entity.turtle.egg_crack")); + + /** + * {@code minecraft:entity.turtle.egg_hatch} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_EGG_HATCH = create(key("entity.turtle.egg_hatch")); + + /** + * {@code minecraft:entity.turtle.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_HURT = create(key("entity.turtle.hurt")); + + /** + * {@code minecraft:entity.turtle.hurt_baby} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_HURT_BABY = create(key("entity.turtle.hurt_baby")); + + /** + * {@code minecraft:entity.turtle.lay_egg} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_LAY_EGG = create(key("entity.turtle.lay_egg")); + + /** + * {@code minecraft:entity.turtle.shamble} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_SHAMBLE = create(key("entity.turtle.shamble")); + + /** + * {@code minecraft:entity.turtle.shamble_baby} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_SHAMBLE_BABY = create(key("entity.turtle.shamble_baby")); + + /** + * {@code minecraft:entity.turtle.swim} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_TURTLE_SWIM = create(key("entity.turtle.swim")); + + /** + * {@code minecraft:entity.vex.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VEX_AMBIENT = create(key("entity.vex.ambient")); + + /** + * {@code minecraft:entity.vex.charge} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VEX_CHARGE = create(key("entity.vex.charge")); + + /** + * {@code minecraft:entity.vex.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VEX_DEATH = create(key("entity.vex.death")); + + /** + * {@code minecraft:entity.vex.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VEX_HURT = create(key("entity.vex.hurt")); + + /** + * {@code minecraft:entity.villager.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_AMBIENT = create(key("entity.villager.ambient")); + + /** + * {@code minecraft:entity.villager.celebrate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_CELEBRATE = create(key("entity.villager.celebrate")); + + /** + * {@code minecraft:entity.villager.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_DEATH = create(key("entity.villager.death")); + + /** + * {@code minecraft:entity.villager.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_HURT = create(key("entity.villager.hurt")); + + /** + * {@code minecraft:entity.villager.no} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_NO = create(key("entity.villager.no")); + + /** + * {@code minecraft:entity.villager.trade} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_TRADE = create(key("entity.villager.trade")); + + /** + * {@code minecraft:entity.villager.work_armorer} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_ARMORER = create(key("entity.villager.work_armorer")); + + /** + * {@code minecraft:entity.villager.work_butcher} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_BUTCHER = create(key("entity.villager.work_butcher")); + + /** + * {@code minecraft:entity.villager.work_cartographer} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_CARTOGRAPHER = create(key("entity.villager.work_cartographer")); + + /** + * {@code minecraft:entity.villager.work_cleric} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_CLERIC = create(key("entity.villager.work_cleric")); + + /** + * {@code minecraft:entity.villager.work_farmer} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_FARMER = create(key("entity.villager.work_farmer")); + + /** + * {@code minecraft:entity.villager.work_fisherman} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_FISHERMAN = create(key("entity.villager.work_fisherman")); + + /** + * {@code minecraft:entity.villager.work_fletcher} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_FLETCHER = create(key("entity.villager.work_fletcher")); + + /** + * {@code minecraft:entity.villager.work_leatherworker} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_LEATHERWORKER = create(key("entity.villager.work_leatherworker")); + + /** + * {@code minecraft:entity.villager.work_librarian} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_LIBRARIAN = create(key("entity.villager.work_librarian")); + + /** + * {@code minecraft:entity.villager.work_mason} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_MASON = create(key("entity.villager.work_mason")); + + /** + * {@code minecraft:entity.villager.work_shepherd} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_SHEPHERD = create(key("entity.villager.work_shepherd")); + + /** + * {@code minecraft:entity.villager.work_toolsmith} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_TOOLSMITH = create(key("entity.villager.work_toolsmith")); + + /** + * {@code minecraft:entity.villager.work_weaponsmith} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_WORK_WEAPONSMITH = create(key("entity.villager.work_weaponsmith")); + + /** + * {@code minecraft:entity.villager.yes} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VILLAGER_YES = create(key("entity.villager.yes")); + + /** + * {@code minecraft:entity.vindicator.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VINDICATOR_AMBIENT = create(key("entity.vindicator.ambient")); + + /** + * {@code minecraft:entity.vindicator.celebrate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VINDICATOR_CELEBRATE = create(key("entity.vindicator.celebrate")); + + /** + * {@code minecraft:entity.vindicator.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VINDICATOR_DEATH = create(key("entity.vindicator.death")); + + /** + * {@code minecraft:entity.vindicator.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_VINDICATOR_HURT = create(key("entity.vindicator.hurt")); + + /** + * {@code minecraft:entity.wandering_trader.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_AMBIENT = create(key("entity.wandering_trader.ambient")); + + /** + * {@code minecraft:entity.wandering_trader.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_DEATH = create(key("entity.wandering_trader.death")); + + /** + * {@code minecraft:entity.wandering_trader.disappeared} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_DISAPPEARED = create(key("entity.wandering_trader.disappeared")); + + /** + * {@code minecraft:entity.wandering_trader.drink_milk} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_DRINK_MILK = create(key("entity.wandering_trader.drink_milk")); + + /** + * {@code minecraft:entity.wandering_trader.drink_potion} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_DRINK_POTION = create(key("entity.wandering_trader.drink_potion")); + + /** + * {@code minecraft:entity.wandering_trader.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_HURT = create(key("entity.wandering_trader.hurt")); + + /** + * {@code minecraft:entity.wandering_trader.no} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_NO = create(key("entity.wandering_trader.no")); + + /** + * {@code minecraft:entity.wandering_trader.reappeared} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_REAPPEARED = create(key("entity.wandering_trader.reappeared")); + + /** + * {@code minecraft:entity.wandering_trader.trade} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_TRADE = create(key("entity.wandering_trader.trade")); + + /** + * {@code minecraft:entity.wandering_trader.yes} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WANDERING_TRADER_YES = create(key("entity.wandering_trader.yes")); + + /** + * {@code minecraft:entity.warden.agitated} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_AGITATED = create(key("entity.warden.agitated")); + + /** + * {@code minecraft:entity.warden.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_AMBIENT = create(key("entity.warden.ambient")); + + /** + * {@code minecraft:entity.warden.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_ANGRY = create(key("entity.warden.angry")); + + /** + * {@code minecraft:entity.warden.attack_impact} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_ATTACK_IMPACT = create(key("entity.warden.attack_impact")); + + /** + * {@code minecraft:entity.warden.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_DEATH = create(key("entity.warden.death")); + + /** + * {@code minecraft:entity.warden.dig} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_DIG = create(key("entity.warden.dig")); + + /** + * {@code minecraft:entity.warden.emerge} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_EMERGE = create(key("entity.warden.emerge")); + + /** + * {@code minecraft:entity.warden.heartbeat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_HEARTBEAT = create(key("entity.warden.heartbeat")); + + /** + * {@code minecraft:entity.warden.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_HURT = create(key("entity.warden.hurt")); + + /** + * {@code minecraft:entity.warden.listening} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_LISTENING = create(key("entity.warden.listening")); + + /** + * {@code minecraft:entity.warden.listening_angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_LISTENING_ANGRY = create(key("entity.warden.listening_angry")); + + /** + * {@code minecraft:entity.warden.nearby_close} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_NEARBY_CLOSE = create(key("entity.warden.nearby_close")); + + /** + * {@code minecraft:entity.warden.nearby_closer} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_NEARBY_CLOSER = create(key("entity.warden.nearby_closer")); + + /** + * {@code minecraft:entity.warden.nearby_closest} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_NEARBY_CLOSEST = create(key("entity.warden.nearby_closest")); + + /** + * {@code minecraft:entity.warden.roar} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_ROAR = create(key("entity.warden.roar")); + + /** + * {@code minecraft:entity.warden.sniff} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_SNIFF = create(key("entity.warden.sniff")); + + /** + * {@code minecraft:entity.warden.sonic_boom} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_SONIC_BOOM = create(key("entity.warden.sonic_boom")); + + /** + * {@code minecraft:entity.warden.sonic_charge} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_SONIC_CHARGE = create(key("entity.warden.sonic_charge")); + + /** + * {@code minecraft:entity.warden.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_STEP = create(key("entity.warden.step")); + + /** + * {@code minecraft:entity.warden.tendril_clicks} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WARDEN_TENDRIL_CLICKS = create(key("entity.warden.tendril_clicks")); + + /** + * {@code minecraft:entity.wind_charge.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WIND_CHARGE_THROW = create(key("entity.wind_charge.throw")); + + /** + * {@code minecraft:entity.wind_charge.wind_burst} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WIND_CHARGE_WIND_BURST = create(key("entity.wind_charge.wind_burst")); + + /** + * {@code minecraft:entity.witch.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITCH_AMBIENT = create(key("entity.witch.ambient")); + + /** + * {@code minecraft:entity.witch.celebrate} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITCH_CELEBRATE = create(key("entity.witch.celebrate")); + + /** + * {@code minecraft:entity.witch.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITCH_DEATH = create(key("entity.witch.death")); + + /** + * {@code minecraft:entity.witch.drink} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITCH_DRINK = create(key("entity.witch.drink")); + + /** + * {@code minecraft:entity.witch.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITCH_HURT = create(key("entity.witch.hurt")); + + /** + * {@code minecraft:entity.witch.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITCH_THROW = create(key("entity.witch.throw")); + + /** + * {@code minecraft:entity.wither.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_AMBIENT = create(key("entity.wither.ambient")); + + /** + * {@code minecraft:entity.wither.break_block} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_BREAK_BLOCK = create(key("entity.wither.break_block")); + + /** + * {@code minecraft:entity.wither.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_DEATH = create(key("entity.wither.death")); + + /** + * {@code minecraft:entity.wither.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_HURT = create(key("entity.wither.hurt")); + + /** + * {@code minecraft:entity.wither.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_SHOOT = create(key("entity.wither.shoot")); + + /** + * {@code minecraft:entity.wither.spawn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_SPAWN = create(key("entity.wither.spawn")); + + /** + * {@code minecraft:entity.wither_skeleton.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_SKELETON_AMBIENT = create(key("entity.wither_skeleton.ambient")); + + /** + * {@code minecraft:entity.wither_skeleton.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_SKELETON_DEATH = create(key("entity.wither_skeleton.death")); + + /** + * {@code minecraft:entity.wither_skeleton.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_SKELETON_HURT = create(key("entity.wither_skeleton.hurt")); + + /** + * {@code minecraft:entity.wither_skeleton.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WITHER_SKELETON_STEP = create(key("entity.wither_skeleton.step")); + + /** + * {@code minecraft:entity.wolf.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WOLF_AMBIENT = create(key("entity.wolf.ambient")); + + /** + * {@code minecraft:entity.wolf.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WOLF_DEATH = create(key("entity.wolf.death")); + + /** + * {@code minecraft:entity.wolf.growl} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WOLF_GROWL = create(key("entity.wolf.growl")); + + /** + * {@code minecraft:entity.wolf.howl} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WOLF_HOWL = create(key("entity.wolf.howl")); + + /** + * {@code minecraft:entity.wolf.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WOLF_HURT = create(key("entity.wolf.hurt")); + + /** + * {@code minecraft:entity.wolf.pant} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WOLF_PANT = create(key("entity.wolf.pant")); + + /** + * {@code minecraft:entity.wolf.shake} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WOLF_SHAKE = create(key("entity.wolf.shake")); + + /** + * {@code minecraft:entity.wolf.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WOLF_STEP = create(key("entity.wolf.step")); + + /** + * {@code minecraft:entity.wolf.whine} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_WOLF_WHINE = create(key("entity.wolf.whine")); + + /** + * {@code minecraft:entity.zoglin.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOGLIN_AMBIENT = create(key("entity.zoglin.ambient")); + + /** + * {@code minecraft:entity.zoglin.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOGLIN_ANGRY = create(key("entity.zoglin.angry")); + + /** + * {@code minecraft:entity.zoglin.attack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOGLIN_ATTACK = create(key("entity.zoglin.attack")); + + /** + * {@code minecraft:entity.zoglin.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOGLIN_DEATH = create(key("entity.zoglin.death")); + + /** + * {@code minecraft:entity.zoglin.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOGLIN_HURT = create(key("entity.zoglin.hurt")); + + /** + * {@code minecraft:entity.zoglin.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOGLIN_STEP = create(key("entity.zoglin.step")); + + /** + * {@code minecraft:entity.zombie.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_AMBIENT = create(key("entity.zombie.ambient")); + + /** + * {@code minecraft:entity.zombie.attack_iron_door} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_ATTACK_IRON_DOOR = create(key("entity.zombie.attack_iron_door")); + + /** + * {@code minecraft:entity.zombie.attack_wooden_door} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_ATTACK_WOODEN_DOOR = create(key("entity.zombie.attack_wooden_door")); + + /** + * {@code minecraft:entity.zombie.break_wooden_door} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_BREAK_WOODEN_DOOR = create(key("entity.zombie.break_wooden_door")); + + /** + * {@code minecraft:entity.zombie.converted_to_drowned} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_CONVERTED_TO_DROWNED = create(key("entity.zombie.converted_to_drowned")); + + /** + * {@code minecraft:entity.zombie.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_DEATH = create(key("entity.zombie.death")); + + /** + * {@code minecraft:entity.zombie.destroy_egg} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_DESTROY_EGG = create(key("entity.zombie.destroy_egg")); + + /** + * {@code minecraft:entity.zombie.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_HURT = create(key("entity.zombie.hurt")); + + /** + * {@code minecraft:entity.zombie.infect} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_INFECT = create(key("entity.zombie.infect")); + + /** + * {@code minecraft:entity.zombie.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_STEP = create(key("entity.zombie.step")); + + /** + * {@code minecraft:entity.zombie_horse.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_HORSE_AMBIENT = create(key("entity.zombie_horse.ambient")); + + /** + * {@code minecraft:entity.zombie_horse.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_HORSE_DEATH = create(key("entity.zombie_horse.death")); + + /** + * {@code minecraft:entity.zombie_horse.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_HORSE_HURT = create(key("entity.zombie_horse.hurt")); + + /** + * {@code minecraft:entity.zombie_villager.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_VILLAGER_AMBIENT = create(key("entity.zombie_villager.ambient")); + + /** + * {@code minecraft:entity.zombie_villager.converted} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_VILLAGER_CONVERTED = create(key("entity.zombie_villager.converted")); + + /** + * {@code minecraft:entity.zombie_villager.cure} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_VILLAGER_CURE = create(key("entity.zombie_villager.cure")); + + /** + * {@code minecraft:entity.zombie_villager.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_VILLAGER_DEATH = create(key("entity.zombie_villager.death")); + + /** + * {@code minecraft:entity.zombie_villager.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_VILLAGER_HURT = create(key("entity.zombie_villager.hurt")); + + /** + * {@code minecraft:entity.zombie_villager.step} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIE_VILLAGER_STEP = create(key("entity.zombie_villager.step")); + + /** + * {@code minecraft:entity.zombified_piglin.ambient} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIFIED_PIGLIN_AMBIENT = create(key("entity.zombified_piglin.ambient")); + + /** + * {@code minecraft:entity.zombified_piglin.angry} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIFIED_PIGLIN_ANGRY = create(key("entity.zombified_piglin.angry")); + + /** + * {@code minecraft:entity.zombified_piglin.death} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIFIED_PIGLIN_DEATH = create(key("entity.zombified_piglin.death")); + + /** + * {@code minecraft:entity.zombified_piglin.hurt} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ENTITY_ZOMBIFIED_PIGLIN_HURT = create(key("entity.zombified_piglin.hurt")); + + /** + * {@code minecraft:event.mob_effect.bad_omen} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> EVENT_MOB_EFFECT_BAD_OMEN = create(key("event.mob_effect.bad_omen")); + + /** + * {@code minecraft:event.mob_effect.raid_omen} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> EVENT_MOB_EFFECT_RAID_OMEN = create(key("event.mob_effect.raid_omen")); + + /** + * {@code minecraft:event.mob_effect.trial_omen} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> EVENT_MOB_EFFECT_TRIAL_OMEN = create(key("event.mob_effect.trial_omen")); + + /** + * {@code minecraft:event.raid.horn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> EVENT_RAID_HORN = create(key("event.raid.horn")); + + /** + * {@code minecraft:intentionally_empty} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> INTENTIONALLY_EMPTY = create(key("intentionally_empty")); + + /** + * {@code minecraft:item.armor.equip_chain} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_CHAIN = create(key("item.armor.equip_chain")); + + /** + * {@code minecraft:item.armor.equip_diamond} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_DIAMOND = create(key("item.armor.equip_diamond")); + + /** + * {@code minecraft:item.armor.equip_elytra} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_ELYTRA = create(key("item.armor.equip_elytra")); + + /** + * {@code minecraft:item.armor.equip_generic} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_GENERIC = create(key("item.armor.equip_generic")); + + /** + * {@code minecraft:item.armor.equip_gold} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_GOLD = create(key("item.armor.equip_gold")); + + /** + * {@code minecraft:item.armor.equip_iron} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_IRON = create(key("item.armor.equip_iron")); + + /** + * {@code minecraft:item.armor.equip_leather} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_LEATHER = create(key("item.armor.equip_leather")); + + /** + * {@code minecraft:item.armor.equip_netherite} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_NETHERITE = create(key("item.armor.equip_netherite")); + + /** + * {@code minecraft:item.armor.equip_turtle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_TURTLE = create(key("item.armor.equip_turtle")); + + /** + * {@code minecraft:item.armor.equip_wolf} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_EQUIP_WOLF = create(key("item.armor.equip_wolf")); + + /** + * {@code minecraft:item.armor.unequip_wolf} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ARMOR_UNEQUIP_WOLF = create(key("item.armor.unequip_wolf")); + + /** + * {@code minecraft:item.axe.scrape} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_AXE_SCRAPE = create(key("item.axe.scrape")); + + /** + * {@code minecraft:item.axe.strip} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_AXE_STRIP = create(key("item.axe.strip")); + + /** + * {@code minecraft:item.axe.wax_off} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_AXE_WAX_OFF = create(key("item.axe.wax_off")); + + /** + * {@code minecraft:item.bone_meal.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BONE_MEAL_USE = create(key("item.bone_meal.use")); + + /** + * {@code minecraft:item.book.page_turn} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BOOK_PAGE_TURN = create(key("item.book.page_turn")); + + /** + * {@code minecraft:item.book.put} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BOOK_PUT = create(key("item.book.put")); + + /** + * {@code minecraft:item.bottle.empty} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BOTTLE_EMPTY = create(key("item.bottle.empty")); + + /** + * {@code minecraft:item.bottle.fill} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BOTTLE_FILL = create(key("item.bottle.fill")); + + /** + * {@code minecraft:item.bottle.fill_dragonbreath} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BOTTLE_FILL_DRAGONBREATH = create(key("item.bottle.fill_dragonbreath")); + + /** + * {@code minecraft:item.brush.brushing.generic} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BRUSH_BRUSHING_GENERIC = create(key("item.brush.brushing.generic")); + + /** + * {@code minecraft:item.brush.brushing.gravel} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BRUSH_BRUSHING_GRAVEL = create(key("item.brush.brushing.gravel")); + + /** + * {@code minecraft:item.brush.brushing.gravel.complete} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BRUSH_BRUSHING_GRAVEL_COMPLETE = create(key("item.brush.brushing.gravel.complete")); + + /** + * {@code minecraft:item.brush.brushing.sand} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BRUSH_BRUSHING_SAND = create(key("item.brush.brushing.sand")); + + /** + * {@code minecraft:item.brush.brushing.sand.complete} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BRUSH_BRUSHING_SAND_COMPLETE = create(key("item.brush.brushing.sand.complete")); + + /** + * {@code minecraft:item.bucket.empty} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_EMPTY = create(key("item.bucket.empty")); + + /** + * {@code minecraft:item.bucket.empty_axolotl} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_EMPTY_AXOLOTL = create(key("item.bucket.empty_axolotl")); + + /** + * {@code minecraft:item.bucket.empty_fish} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_EMPTY_FISH = create(key("item.bucket.empty_fish")); + + /** + * {@code minecraft:item.bucket.empty_lava} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_EMPTY_LAVA = create(key("item.bucket.empty_lava")); + + /** + * {@code minecraft:item.bucket.empty_powder_snow} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_EMPTY_POWDER_SNOW = create(key("item.bucket.empty_powder_snow")); + + /** + * {@code minecraft:item.bucket.empty_tadpole} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_EMPTY_TADPOLE = create(key("item.bucket.empty_tadpole")); + + /** + * {@code minecraft:item.bucket.fill} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_FILL = create(key("item.bucket.fill")); + + /** + * {@code minecraft:item.bucket.fill_axolotl} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_FILL_AXOLOTL = create(key("item.bucket.fill_axolotl")); + + /** + * {@code minecraft:item.bucket.fill_fish} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_FILL_FISH = create(key("item.bucket.fill_fish")); + + /** + * {@code minecraft:item.bucket.fill_lava} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_FILL_LAVA = create(key("item.bucket.fill_lava")); + + /** + * {@code minecraft:item.bucket.fill_powder_snow} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_FILL_POWDER_SNOW = create(key("item.bucket.fill_powder_snow")); + + /** + * {@code minecraft:item.bucket.fill_tadpole} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUCKET_FILL_TADPOLE = create(key("item.bucket.fill_tadpole")); + + /** + * {@code minecraft:item.bundle.drop_contents} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUNDLE_DROP_CONTENTS = create(key("item.bundle.drop_contents")); + + /** + * {@code minecraft:item.bundle.insert} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUNDLE_INSERT = create(key("item.bundle.insert")); + + /** + * {@code minecraft:item.bundle.insert_fail} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUNDLE_INSERT_FAIL = create(key("item.bundle.insert_fail")); + + /** + * {@code minecraft:item.bundle.remove_one} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_BUNDLE_REMOVE_ONE = create(key("item.bundle.remove_one")); + + /** + * {@code minecraft:item.chorus_fruit.teleport} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CHORUS_FRUIT_TELEPORT = create(key("item.chorus_fruit.teleport")); + + /** + * {@code minecraft:item.crop.plant} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CROP_PLANT = create(key("item.crop.plant")); + + /** + * {@code minecraft:item.crossbow.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CROSSBOW_HIT = create(key("item.crossbow.hit")); + + /** + * {@code minecraft:item.crossbow.loading_end} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CROSSBOW_LOADING_END = create(key("item.crossbow.loading_end")); + + /** + * {@code minecraft:item.crossbow.loading_middle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CROSSBOW_LOADING_MIDDLE = create(key("item.crossbow.loading_middle")); + + /** + * {@code minecraft:item.crossbow.loading_start} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CROSSBOW_LOADING_START = create(key("item.crossbow.loading_start")); + + /** + * {@code minecraft:item.crossbow.quick_charge_1} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CROSSBOW_QUICK_CHARGE_1 = create(key("item.crossbow.quick_charge_1")); + + /** + * {@code minecraft:item.crossbow.quick_charge_2} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CROSSBOW_QUICK_CHARGE_2 = create(key("item.crossbow.quick_charge_2")); + + /** + * {@code minecraft:item.crossbow.quick_charge_3} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CROSSBOW_QUICK_CHARGE_3 = create(key("item.crossbow.quick_charge_3")); + + /** + * {@code minecraft:item.crossbow.shoot} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_CROSSBOW_SHOOT = create(key("item.crossbow.shoot")); + + /** + * {@code minecraft:item.dye.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_DYE_USE = create(key("item.dye.use")); + + /** + * {@code minecraft:item.elytra.flying} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_ELYTRA_FLYING = create(key("item.elytra.flying")); + + /** + * {@code minecraft:item.firecharge.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_FIRECHARGE_USE = create(key("item.firecharge.use")); + + /** + * {@code minecraft:item.flintandsteel.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_FLINTANDSTEEL_USE = create(key("item.flintandsteel.use")); + + /** + * {@code minecraft:item.glow_ink_sac.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_GLOW_INK_SAC_USE = create(key("item.glow_ink_sac.use")); + + /** + * {@code minecraft:item.goat_horn.sound.0} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_GOAT_HORN_SOUND_0 = create(key("item.goat_horn.sound.0")); + + /** + * {@code minecraft:item.goat_horn.sound.1} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_GOAT_HORN_SOUND_1 = create(key("item.goat_horn.sound.1")); + + /** + * {@code minecraft:item.goat_horn.sound.2} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_GOAT_HORN_SOUND_2 = create(key("item.goat_horn.sound.2")); + + /** + * {@code minecraft:item.goat_horn.sound.3} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_GOAT_HORN_SOUND_3 = create(key("item.goat_horn.sound.3")); + + /** + * {@code minecraft:item.goat_horn.sound.4} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_GOAT_HORN_SOUND_4 = create(key("item.goat_horn.sound.4")); + + /** + * {@code minecraft:item.goat_horn.sound.5} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_GOAT_HORN_SOUND_5 = create(key("item.goat_horn.sound.5")); + + /** + * {@code minecraft:item.goat_horn.sound.6} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_GOAT_HORN_SOUND_6 = create(key("item.goat_horn.sound.6")); + + /** + * {@code minecraft:item.goat_horn.sound.7} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_GOAT_HORN_SOUND_7 = create(key("item.goat_horn.sound.7")); + + /** + * {@code minecraft:item.hoe.till} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_HOE_TILL = create(key("item.hoe.till")); + + /** + * {@code minecraft:item.honey_bottle.drink} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_HONEY_BOTTLE_DRINK = create(key("item.honey_bottle.drink")); + + /** + * {@code minecraft:item.honeycomb.wax_on} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_HONEYCOMB_WAX_ON = create(key("item.honeycomb.wax_on")); + + /** + * {@code minecraft:item.ink_sac.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_INK_SAC_USE = create(key("item.ink_sac.use")); + + /** + * {@code minecraft:item.lodestone_compass.lock} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_LODESTONE_COMPASS_LOCK = create(key("item.lodestone_compass.lock")); + + /** + * {@code minecraft:item.mace.smash_air} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_MACE_SMASH_AIR = create(key("item.mace.smash_air")); + + /** + * {@code minecraft:item.mace.smash_ground} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_MACE_SMASH_GROUND = create(key("item.mace.smash_ground")); + + /** + * {@code minecraft:item.mace.smash_ground_heavy} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_MACE_SMASH_GROUND_HEAVY = create(key("item.mace.smash_ground_heavy")); + + /** + * {@code minecraft:item.nether_wart.plant} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_NETHER_WART_PLANT = create(key("item.nether_wart.plant")); + + /** + * {@code minecraft:item.ominous_bottle.dispose} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_OMINOUS_BOTTLE_DISPOSE = create(key("item.ominous_bottle.dispose")); + + /** + * {@code minecraft:item.shield.block} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_SHIELD_BLOCK = create(key("item.shield.block")); + + /** + * {@code minecraft:item.shield.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_SHIELD_BREAK = create(key("item.shield.break")); + + /** + * {@code minecraft:item.shovel.flatten} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_SHOVEL_FLATTEN = create(key("item.shovel.flatten")); + + /** + * {@code minecraft:item.spyglass.stop_using} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_SPYGLASS_STOP_USING = create(key("item.spyglass.stop_using")); + + /** + * {@code minecraft:item.spyglass.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_SPYGLASS_USE = create(key("item.spyglass.use")); + + /** + * {@code minecraft:item.totem.use} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_TOTEM_USE = create(key("item.totem.use")); + + /** + * {@code minecraft:item.trident.hit} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_TRIDENT_HIT = create(key("item.trident.hit")); + + /** + * {@code minecraft:item.trident.hit_ground} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_TRIDENT_HIT_GROUND = create(key("item.trident.hit_ground")); + + /** + * {@code minecraft:item.trident.return} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_TRIDENT_RETURN = create(key("item.trident.return")); + + /** + * {@code minecraft:item.trident.riptide_1} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_TRIDENT_RIPTIDE_1 = create(key("item.trident.riptide_1")); + + /** + * {@code minecraft:item.trident.riptide_2} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_TRIDENT_RIPTIDE_2 = create(key("item.trident.riptide_2")); + + /** + * {@code minecraft:item.trident.riptide_3} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_TRIDENT_RIPTIDE_3 = create(key("item.trident.riptide_3")); + + /** + * {@code minecraft:item.trident.throw} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_TRIDENT_THROW = create(key("item.trident.throw")); + + /** + * {@code minecraft:item.trident.thunder} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_TRIDENT_THUNDER = create(key("item.trident.thunder")); + + /** + * {@code minecraft:item.wolf_armor.break} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_WOLF_ARMOR_BREAK = create(key("item.wolf_armor.break")); + + /** + * {@code minecraft:item.wolf_armor.crack} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_WOLF_ARMOR_CRACK = create(key("item.wolf_armor.crack")); + + /** + * {@code minecraft:item.wolf_armor.damage} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_WOLF_ARMOR_DAMAGE = create(key("item.wolf_armor.damage")); + + /** + * {@code minecraft:item.wolf_armor.repair} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> ITEM_WOLF_ARMOR_REPAIR = create(key("item.wolf_armor.repair")); + + /** + * {@code minecraft:music.creative} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_CREATIVE = create(key("music.creative")); + + /** + * {@code minecraft:music.credits} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_CREDITS = create(key("music.credits")); + + /** + * {@code minecraft:music.dragon} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DRAGON = create(key("music.dragon")); + + /** + * {@code minecraft:music.end} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_END = create(key("music.end")); + + /** + * {@code minecraft:music.game} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_GAME = create(key("music.game")); + + /** + * {@code minecraft:music.menu} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_MENU = create(key("music.menu")); + + /** + * {@code minecraft:music.nether.basalt_deltas} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_NETHER_BASALT_DELTAS = create(key("music.nether.basalt_deltas")); + + /** + * {@code minecraft:music.nether.crimson_forest} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_NETHER_CRIMSON_FOREST = create(key("music.nether.crimson_forest")); + + /** + * {@code minecraft:music.nether.nether_wastes} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_NETHER_NETHER_WASTES = create(key("music.nether.nether_wastes")); + + /** + * {@code minecraft:music.nether.soul_sand_valley} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_NETHER_SOUL_SAND_VALLEY = create(key("music.nether.soul_sand_valley")); + + /** + * {@code minecraft:music.nether.warped_forest} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_NETHER_WARPED_FOREST = create(key("music.nether.warped_forest")); + + /** + * {@code minecraft:music.overworld.badlands} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_BADLANDS = create(key("music.overworld.badlands")); + + /** + * {@code minecraft:music.overworld.bamboo_jungle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_BAMBOO_JUNGLE = create(key("music.overworld.bamboo_jungle")); + + /** + * {@code minecraft:music.overworld.cherry_grove} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_CHERRY_GROVE = create(key("music.overworld.cherry_grove")); + + /** + * {@code minecraft:music.overworld.deep_dark} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_DEEP_DARK = create(key("music.overworld.deep_dark")); + + /** + * {@code minecraft:music.overworld.desert} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_DESERT = create(key("music.overworld.desert")); + + /** + * {@code minecraft:music.overworld.dripstone_caves} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_DRIPSTONE_CAVES = create(key("music.overworld.dripstone_caves")); + + /** + * {@code minecraft:music.overworld.flower_forest} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_FLOWER_FOREST = create(key("music.overworld.flower_forest")); + + /** + * {@code minecraft:music.overworld.forest} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_FOREST = create(key("music.overworld.forest")); + + /** + * {@code minecraft:music.overworld.frozen_peaks} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_FROZEN_PEAKS = create(key("music.overworld.frozen_peaks")); + + /** + * {@code minecraft:music.overworld.grove} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_GROVE = create(key("music.overworld.grove")); + + /** + * {@code minecraft:music.overworld.jagged_peaks} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_JAGGED_PEAKS = create(key("music.overworld.jagged_peaks")); + + /** + * {@code minecraft:music.overworld.jungle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_JUNGLE = create(key("music.overworld.jungle")); + + /** + * {@code minecraft:music.overworld.lush_caves} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_LUSH_CAVES = create(key("music.overworld.lush_caves")); + + /** + * {@code minecraft:music.overworld.meadow} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_MEADOW = create(key("music.overworld.meadow")); + + /** + * {@code minecraft:music.overworld.old_growth_taiga} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_OLD_GROWTH_TAIGA = create(key("music.overworld.old_growth_taiga")); + + /** + * {@code minecraft:music.overworld.snowy_slopes} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_SNOWY_SLOPES = create(key("music.overworld.snowy_slopes")); + + /** + * {@code minecraft:music.overworld.sparse_jungle} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_SPARSE_JUNGLE = create(key("music.overworld.sparse_jungle")); + + /** + * {@code minecraft:music.overworld.stony_peaks} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_STONY_PEAKS = create(key("music.overworld.stony_peaks")); + + /** + * {@code minecraft:music.overworld.swamp} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_OVERWORLD_SWAMP = create(key("music.overworld.swamp")); + + /** + * {@code minecraft:music.under_water} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_UNDER_WATER = create(key("music.under_water")); + + /** + * {@code minecraft:music_disc.11} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_11 = create(key("music_disc.11")); + + /** + * {@code minecraft:music_disc.13} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_13 = create(key("music_disc.13")); + + /** + * {@code minecraft:music_disc.5} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_5 = create(key("music_disc.5")); + + /** + * {@code minecraft:music_disc.blocks} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_BLOCKS = create(key("music_disc.blocks")); + + /** + * {@code minecraft:music_disc.cat} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_CAT = create(key("music_disc.cat")); + + /** + * {@code minecraft:music_disc.chirp} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_CHIRP = create(key("music_disc.chirp")); + + /** + * {@code minecraft:music_disc.creator} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_CREATOR = create(key("music_disc.creator")); + + /** + * {@code minecraft:music_disc.creator_music_box} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_CREATOR_MUSIC_BOX = create(key("music_disc.creator_music_box")); + + /** + * {@code minecraft:music_disc.far} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_FAR = create(key("music_disc.far")); + + /** + * {@code minecraft:music_disc.mall} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_MALL = create(key("music_disc.mall")); + + /** + * {@code minecraft:music_disc.mellohi} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_MELLOHI = create(key("music_disc.mellohi")); + + /** + * {@code minecraft:music_disc.otherside} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_OTHERSIDE = create(key("music_disc.otherside")); + + /** + * {@code minecraft:music_disc.pigstep} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_PIGSTEP = create(key("music_disc.pigstep")); + + /** + * {@code minecraft:music_disc.precipice} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_PRECIPICE = create(key("music_disc.precipice")); + + /** + * {@code minecraft:music_disc.relic} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_RELIC = create(key("music_disc.relic")); + + /** + * {@code minecraft:music_disc.stal} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_STAL = create(key("music_disc.stal")); + + /** + * {@code minecraft:music_disc.strad} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_STRAD = create(key("music_disc.strad")); + + /** + * {@code minecraft:music_disc.wait} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_WAIT = create(key("music_disc.wait")); + + /** + * {@code minecraft:music_disc.ward} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> MUSIC_DISC_WARD = create(key("music_disc.ward")); + + /** + * {@code minecraft:particle.soul_escape} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> PARTICLE_SOUL_ESCAPE = create(key("particle.soul_escape")); + + /** + * {@code minecraft:ui.button.click} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_BUTTON_CLICK = create(key("ui.button.click")); + + /** + * {@code minecraft:ui.cartography_table.take_result} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_CARTOGRAPHY_TABLE_TAKE_RESULT = create(key("ui.cartography_table.take_result")); + + /** + * {@code minecraft:ui.hud.bubble_pop} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_HUD_BUBBLE_POP = create(key("ui.hud.bubble_pop")); + + /** + * {@code minecraft:ui.loom.select_pattern} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_LOOM_SELECT_PATTERN = create(key("ui.loom.select_pattern")); + + /** + * {@code minecraft:ui.loom.take_result} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_LOOM_TAKE_RESULT = create(key("ui.loom.take_result")); + + /** + * {@code minecraft:ui.stonecutter.select_recipe} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_STONECUTTER_SELECT_RECIPE = create(key("ui.stonecutter.select_recipe")); + + /** + * {@code minecraft:ui.stonecutter.take_result} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_STONECUTTER_TAKE_RESULT = create(key("ui.stonecutter.take_result")); + + /** + * {@code minecraft:ui.toast.challenge_complete} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_TOAST_CHALLENGE_COMPLETE = create(key("ui.toast.challenge_complete")); + + /** + * {@code minecraft:ui.toast.in} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_TOAST_IN = create(key("ui.toast.in")); + + /** + * {@code minecraft:ui.toast.out} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> UI_TOAST_OUT = create(key("ui.toast.out")); + + /** + * {@code minecraft:weather.rain} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> WEATHER_RAIN = create(key("weather.rain")); + + /** + * {@code minecraft:weather.rain.above} + * + * @apiNote This field is version-dependant and may be removed in future Minecraft versions + */ + public static final TypedKey<Sound> WEATHER_RAIN_ABOVE = create(key("weather.rain.above")); + + private SoundEventKeys() { + } + + private static @NonNull TypedKey<Sound> create(final @NonNull Key key) { + return TypedKey.create(RegistryKey.SOUND_EVENT, key); + } +} diff --git a/paper-api-generator/src/main/java/io/papermc/generator/Generators.java b/paper-api-generator/src/main/java/io/papermc/generator/Generators.java index 0ff8225f51..d5ddc06fa9 100644 --- a/paper-api-generator/src/main/java/io/papermc/generator/Generators.java +++ b/paper-api-generator/src/main/java/io/papermc/generator/Generators.java @@ -8,10 +8,12 @@ import io.papermc.paper.registry.RegistryKey; import net.minecraft.core.Registry; import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceKey; +import org.bukkit.Art; import org.bukkit.Fluid; import org.bukkit.GameEvent; import org.bukkit.JukeboxSong; import org.bukkit.MusicInstrument; +import org.bukkit.Sound; import org.bukkit.attribute.Attribute; import org.bukkit.block.Biome; import org.bukkit.block.BlockType; @@ -49,6 +51,7 @@ public interface Generators { simpleKey("MenuTypeKeys", MenuType.class, Registries.MENU, RegistryKey.MENU, false), simpleKey("AttributeKeys", Attribute.class, Registries.ATTRIBUTE, RegistryKey.ATTRIBUTE, false), simpleKey("FluidKeys", Fluid.class, Registries.FLUID, RegistryKey.FLUID, false), + simpleKey("SoundEventKeys", Sound.class, Registries.SOUND_EVENT, RegistryKey.SOUND_EVENT, false), // data-driven simpleKey("BiomeKeys", Biome.class, Registries.BIOME, RegistryKey.BIOME, true), @@ -60,6 +63,7 @@ public interface Generators { simpleKey("EnchantmentKeys", Enchantment.class, Registries.ENCHANTMENT, RegistryKey.ENCHANTMENT, false), simpleKey("JukeboxSongKeys", JukeboxSong.class, Registries.JUKEBOX_SONG, RegistryKey.JUKEBOX_SONG, true), simpleKey("BannerPatternKeys", PatternType.class, Registries.BANNER_PATTERN, RegistryKey.BANNER_PATTERN, true), + simpleKey("PaintingVariantKeys", Art.class, Registries.PAINTING_VARIANT, RegistryKey.PAINTING_VARIANT, true), // tags simpleTagKey("EnchantmentTagKeys", Enchantment.class, Registries.ENCHANTMENT, RegistryKey.ENCHANTMENT), diff --git a/patches/api/0004-Code-Generation.patch b/patches/api/0004-Code-Generation.patch index e265943f63..663b52929d 100644 --- a/patches/api/0004-Code-Generation.patch +++ b/patches/api/0004-Code-Generation.patch @@ -85,10 +85,10 @@ index 0000000000000000000000000000000000000000..2512dba27edfdccbc4430815b6cba048 +} diff --git a/src/main/java/io/papermc/paper/registry/RegistryKey.java b/src/main/java/io/papermc/paper/registry/RegistryKey.java new file mode 100644 -index 0000000000000000000000000000000000000000..fdef87eec3765523b00c987d4c1ccc289882e95d +index 0000000000000000000000000000000000000000..d895b36e14f7fab6e3e78160dfa559d2c5331601 --- /dev/null +++ b/src/main/java/io/papermc/paper/registry/RegistryKey.java -@@ -0,0 +1,188 @@ +@@ -0,0 +1,196 @@ +package io.papermc.paper.registry; + +import net.kyori.adventure.key.Keyed; @@ -214,6 +214,11 @@ index 0000000000000000000000000000000000000000..fdef87eec3765523b00c987d4c1ccc28 + * @see io.papermc.paper.registry.keys.FluidKeys + */ + RegistryKey<Fluid> FLUID = create("fluid"); ++ /** ++ * Built-in registry for sound events. ++ * @see io.papermc.paper.registry.keys.SoundEventKeys ++ */ ++ RegistryKey<Sound> SOUND_EVENT = create("sound_event"); + + + @@ -265,16 +270,19 @@ index 0000000000000000000000000000000000000000..fdef87eec3765523b00c987d4c1ccc28 + * @see io.papermc.paper.registry.keys.BannerPatternKeys + */ + RegistryKey<PatternType> BANNER_PATTERN = create("banner_pattern"); ++ /** ++ * Data-driven registry for painting variants. ++ * @see io.papermc.paper.registry.keys.PaintingVariantKeys ++ */ ++ RegistryKey<Art> PAINTING_VARIANT = create("painting_variant"); + + + /* ******************* * + * API-only Registries * + * ******************* */ -+ RegistryKey<Art> PAINTING_VARIANT = create("painting_variant"); + RegistryKey<EntityType> ENTITY_TYPE = create("entity_type"); + RegistryKey<Particle> PARTICLE_TYPE = create("particle_type"); + RegistryKey<PotionType> POTION = create("potion"); -+ RegistryKey<Sound> SOUND_EVENT = create("sound_event"); + RegistryKey<MemoryKey<?>> MEMORY_MODULE_TYPE = create("memory_module_type"); +} diff --git a/src/main/java/io/papermc/paper/registry/RegistryKeyImpl.java b/src/main/java/io/papermc/paper/registry/RegistryKeyImpl.java diff --git a/patches/api/0006-Adventure.patch b/patches/api/0006-Adventure.patch index db5ecc6561..b3b749455a 100644 --- a/patches/api/0006-Adventure.patch +++ b/patches/api/0006-Adventure.patch @@ -1494,27 +1494,27 @@ index 18a53194483410c4d5ad35f901c90d44efaeef60..aff43d77f31d81b82e5fc5fea6272dda String getDisplayName(); diff --git a/src/main/java/org/bukkit/Sound.java b/src/main/java/org/bukkit/Sound.java -index 8824e83039195882fa9c2a854460b0aeedfb7d21..cf17af024b1953b6f21f18885411ea6a0baa1d4c 100644 +index 4204a7dac18c60f177a5f70693388cd4ddc3bc0c..04e890be72b18259f1af2833879b4d9af51b1f02 100644 --- a/src/main/java/org/bukkit/Sound.java +++ b/src/main/java/org/bukkit/Sound.java -@@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull; - * guarantee values will not be removed from this Enum. As such, you should not +@@ -20,7 +20,7 @@ import org.jetbrains.annotations.NotNull; + * guarantee values will not be removed from this interface. As such, you should not * depend on the ordinal values of this class. */ --public enum Sound implements Keyed { -+public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Paper - implement Sound.Type - - AMBIENT_BASALT_DELTAS_ADDITIONS("ambient.basalt_deltas.additions"), - AMBIENT_BASALT_DELTAS_LOOP("ambient.basalt_deltas.loop"), -@@ -1660,4 +1660,11 @@ public enum Sound implements Keyed { - public NamespacedKey getKey() { - return key; +-public interface Sound extends OldEnum<Sound>, Keyed { ++public interface Sound extends OldEnum<Sound>, Keyed, net.kyori.adventure.sound.Sound.Type { // Paper - implement Sound.Type + + Sound AMBIENT_BASALT_DELTAS_ADDITIONS = getSound("ambient.basalt_deltas.additions"); + Sound AMBIENT_BASALT_DELTAS_LOOP = getSound("ambient.basalt_deltas.loop"); +@@ -1698,4 +1698,11 @@ public interface Sound extends OldEnum<Sound>, Keyed { + static Sound[] values() { + return Lists.newArrayList(Registry.SOUNDS).toArray(new Sound[0]); } + + // Paper start + @Override -+ public net.kyori.adventure.key.@NotNull Key key() { -+ return this.key; ++ default net.kyori.adventure.key.@NotNull Key key() { ++ return this.getKey(); + } + // Paper end } diff --git a/patches/api/0166-Fix-Spigot-annotation-mistakes.patch b/patches/api/0166-Fix-Spigot-annotation-mistakes.patch index 300cf32990..8551ae81c5 100644 --- a/patches/api/0166-Fix-Spigot-annotation-mistakes.patch +++ b/patches/api/0166-Fix-Spigot-annotation-mistakes.patch @@ -11,34 +11,6 @@ that continues to have use (internally). These do not help plugin developers if they bring moise noise than value. -diff --git a/src/main/java/org/bukkit/Art.java b/src/main/java/org/bukkit/Art.java -index dadff073abb2dec39111e677ec77ffdb2b7ff9a9..042d1d932a33022e4fc873652f70dc6ed342d46a 100644 ---- a/src/main/java/org/bukkit/Art.java -+++ b/src/main/java/org/bukkit/Art.java -@@ -96,9 +96,9 @@ public enum Art implements Keyed { - * Get the ID of this painting. - * - * @return The ID of this painting -- * @deprecated Magic value -+ * @apiNote Internal Use Only - */ -- @Deprecated -+ @org.jetbrains.annotations.ApiStatus.Internal // Paper - public int getId() { - return id; - } -@@ -114,9 +114,9 @@ public enum Art implements Keyed { - * - * @param id The ID - * @return The painting -- * @deprecated Magic value -+ * @apiNote Internal Use Only - */ -- @Deprecated -+ @org.jetbrains.annotations.ApiStatus.Internal // Paper - @Nullable - public static Art getById(int id) { - return BY_ID.get(id); diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java index 577b4b89b50441572f0edd9325047c38e25e782e..949ffc320502e46493183cc3ef621d9c4edbe7d6 100644 --- a/src/main/java/org/bukkit/Bukkit.java @@ -453,7 +425,7 @@ index 48aecc9421c500137bbef1dfe3bec8de277c3ff9..aff858346776386f1288b648b221404f return note; } diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index 774f9bd0ef95d385dc3f715753c83e05fcc2bdff..26399345dd02031712994da1553417186b8c7370 100644 +index f0e806865910578110f4794f7ebe93640516e7c1..b4f297f90e3c1deaa1fc3f4418418588ab19b6c5 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java @@ -248,14 +248,12 @@ public interface Registry<T extends Keyed> extends Iterable<T> { @@ -932,10 +904,10 @@ index 9e0137ea412ec8c65b2903a76499ba8222446ea3..db7dafba43b50146a32d749ec043c5d5 /** diff --git a/src/main/java/org/bukkit/entity/Minecart.java b/src/main/java/org/bukkit/entity/Minecart.java -index 4910075d0fb21b4dc4fab57894f9c7cca3093e3b..9125cc9f60258938946ee30932f0299edcd9573b 100644 +index e5c43a80375624b11653b0693a7883a490d73c6d..d9ad5fd48eec569eb4aef2aaf527ba24d2db3254 100644 --- a/src/main/java/org/bukkit/entity/Minecart.java +++ b/src/main/java/org/bukkit/entity/Minecart.java -@@ -106,7 +106,9 @@ public interface Minecart extends Vehicle { +@@ -102,7 +102,9 @@ public interface Minecart extends Vehicle { * Passing a null value will set the minecart to have no display block. * * @param material the material to set as display block. @@ -945,7 +917,7 @@ index 4910075d0fb21b4dc4fab57894f9c7cca3093e3b..9125cc9f60258938946ee30932f0299e public void setDisplayBlock(@Nullable MaterialData material); /** -@@ -114,8 +116,10 @@ public interface Minecart extends Vehicle { +@@ -110,8 +112,10 @@ public interface Minecart extends Vehicle { * This function will return the type AIR if none is set. * * @return the block displayed by this minecart. diff --git a/patches/api/0225-Add-API-to-get-Material-from-Boats-and-Minecarts.patch b/patches/api/0225-Add-API-to-get-Material-from-Boats-and-Minecarts.patch index 143ac8e614..9021d13c24 100644 --- a/patches/api/0225-Add-API-to-get-Material-from-Boats-and-Minecarts.patch +++ b/patches/api/0225-Add-API-to-get-Material-from-Boats-and-Minecarts.patch @@ -24,7 +24,7 @@ index dbdd2c1ad74a4d56e282736cd06d6937701f2e5c..a0fb3c44405f6362f8a1613661d507e4 + // Paper end } diff --git a/src/main/java/org/bukkit/entity/Minecart.java b/src/main/java/org/bukkit/entity/Minecart.java -index 9125cc9f60258938946ee30932f0299edcd9573b..148d8cddba48a886eddef72a3de63d5eaa15949f 100644 +index d9ad5fd48eec569eb4aef2aaf527ba24d2db3254..c3c94a5694f1e8d79e5acc45af1cd2e0fa6a621f 100644 --- a/src/main/java/org/bukkit/entity/Minecart.java +++ b/src/main/java/org/bukkit/entity/Minecart.java @@ -1,6 +1,7 @@ @@ -35,7 +35,7 @@ index 9125cc9f60258938946ee30932f0299edcd9573b..148d8cddba48a886eddef72a3de63d5e import org.bukkit.block.data.BlockData; import org.bukkit.material.MaterialData; import org.bukkit.util.Vector; -@@ -152,4 +153,14 @@ public interface Minecart extends Vehicle { +@@ -148,4 +149,14 @@ public interface Minecart extends Vehicle { * @return the current block offset for this minecart. */ public int getDisplayBlockOffset(); diff --git a/patches/api/0236-Add-RegistryAccess-for-managing-registries.patch b/patches/api/0236-Add-RegistryAccess-for-managing-registries.patch index 5c4084cf8c..91cfa52956 100644 --- a/patches/api/0236-Add-RegistryAccess-for-managing-registries.patch +++ b/patches/api/0236-Add-RegistryAccess-for-managing-registries.patch @@ -207,10 +207,19 @@ index e0f652117e585882693736de8165ae9c689e1d68..fbe14c327ee9c1ac07893853ca7c699e return server.getRegistry(tClass); } diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index 26399345dd02031712994da1553417186b8c7370..759925decc0b66e8f5861f3f8bd9bee0ed66181e 100644 +index b4f297f90e3c1deaa1fc3f4418418588ab19b6c5..099c8acc0338dc0e6ac81f77d99cd2a02a630535 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -92,20 +92,26 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -86,26 +86,34 @@ public interface Registry<T extends Keyed> extends Iterable<T> { + * Server art. + * + * @see Art ++ * @deprecated use {@link io.papermc.paper.registry.RegistryAccess#getRegistry(io.papermc.paper.registry.RegistryKey)} with {@link io.papermc.paper.registry.RegistryKey#PAINTING_VARIANT} + */ +- Registry<Art> ART = Objects.requireNonNull(Bukkit.getRegistry(Art.class), "No registry present for Art. This is a bug."); ++ @Deprecated(since = "1.21.3") // Paper ++ Registry<Art> ART = Objects.requireNonNull(io.papermc.paper.registry.RegistryAccess.registryAccess().getRegistry(Art.class), "No registry present for Art. This is a bug."); + /** * Attribute. * * @see Attribute @@ -240,7 +249,7 @@ index 26399345dd02031712994da1553417186b8c7370..759925decc0b66e8f5861f3f8bd9bee0 /** * Server block types. * -@@ -113,7 +119,7 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -113,7 +121,7 @@ public interface Registry<T extends Keyed> extends Iterable<T> { * @apiNote BlockType is not ready for public usage yet */ @ApiStatus.Internal @@ -249,7 +258,7 @@ index 26399345dd02031712994da1553417186b8c7370..759925decc0b66e8f5861f3f8bd9bee0 /** * Custom boss bars. * -@@ -155,13 +161,15 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -155,13 +163,15 @@ public interface Registry<T extends Keyed> extends Iterable<T> { * * @see Cat.Type */ @@ -267,7 +276,7 @@ index 26399345dd02031712994da1553417186b8c7370..759925decc0b66e8f5861f3f8bd9bee0 /** * Server entity types. * -@@ -173,7 +181,7 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -173,7 +183,7 @@ public interface Registry<T extends Keyed> extends Iterable<T> { * * @see MusicInstrument */ @@ -276,7 +285,7 @@ index 26399345dd02031712994da1553417186b8c7370..759925decc0b66e8f5861f3f8bd9bee0 /** * Server item types. * -@@ -181,7 +189,7 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -181,7 +191,7 @@ public interface Registry<T extends Keyed> extends Iterable<T> { * @apiNote ItemType is not ready for public usage yet */ @ApiStatus.Internal @@ -285,7 +294,7 @@ index 26399345dd02031712994da1553417186b8c7370..759925decc0b66e8f5861f3f8bd9bee0 /** * Default server loot tables. * -@@ -200,13 +208,13 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -200,13 +210,13 @@ public interface Registry<T extends Keyed> extends Iterable<T> { * @see MenuType */ @ApiStatus.Experimental @@ -301,7 +310,7 @@ index 26399345dd02031712994da1553417186b8c7370..759925decc0b66e8f5861f3f8bd9bee0 /** * Server particles. * -@@ -229,14 +237,16 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -229,58 +239,67 @@ public interface Registry<T extends Keyed> extends Iterable<T> { * Server structures. * * @see Structure @@ -320,7 +329,11 @@ index 26399345dd02031712994da1553417186b8c7370..759925decc0b66e8f5861f3f8bd9bee0 /** * Sound keys. * -@@ -247,40 +257,47 @@ public interface Registry<T extends Keyed> extends Iterable<T> { + * @see Sound + */ +- Registry<Sound> SOUNDS = Objects.requireNonNull(Bukkit.getRegistry(Sound.class), "No registry present for Sound. This is a bug."); ++ Registry<Sound> SOUNDS = io.papermc.paper.registry.RegistryAccess.registryAccess().getRegistry(io.papermc.paper.registry.RegistryKey.SOUND_EVENT); // Paper + /** * Trim materials. * * @see TrimMaterial @@ -375,7 +388,7 @@ index 26399345dd02031712994da1553417186b8c7370..759925decc0b66e8f5861f3f8bd9bee0 /** * Memory Keys. * -@@ -320,32 +337,36 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -320,32 +339,36 @@ public interface Registry<T extends Keyed> extends Iterable<T> { * Server fluids. * * @see Fluid diff --git a/patches/api/0329-More-PotionEffectType-API.patch b/patches/api/0329-More-PotionEffectType-API.patch index 6ee4c1216b..fddc2d6886 100644 --- a/patches/api/0329-More-PotionEffectType-API.patch +++ b/patches/api/0329-More-PotionEffectType-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] More PotionEffectType API diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index 759925decc0b66e8f5861f3f8bd9bee0ed66181e..833eea6ee8c7fd8ccb3f2eed4285a3eb8311448c 100644 +index 099c8acc0338dc0e6ac81f77d99cd2a02a630535..a5db0a013921423f87abb14dc08b24f47d4093f6 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -367,6 +367,15 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -369,6 +369,15 @@ public interface Registry<T extends Keyed> extends Iterable<T> { * @see GameEvent */ Registry<GameEvent> GAME_EVENT = io.papermc.paper.registry.RegistryAccess.registryAccess().getRegistry(io.papermc.paper.registry.RegistryKey.GAME_EVENT); // Paper diff --git a/patches/api/0378-fix-Instruments.patch b/patches/api/0378-fix-Instruments.patch index 468dc80a34..0bffaca02f 100644 --- a/patches/api/0378-fix-Instruments.patch +++ b/patches/api/0378-fix-Instruments.patch @@ -99,17 +99,27 @@ index 032d7b812ddc0a85e316882c8f7de0c5a0a4fd30..8df26e0d7bea77bb257cddbc2ab9e969 public static Instrument getByType(final byte type) { return BY_DATA.get(type); diff --git a/src/test/java/org/bukkit/InstrumentTest.java b/src/test/java/org/bukkit/InstrumentTest.java -index 8c1d88885de7d56c1b7c78d2e6e059b0648c982a..b177a47a5bda05bfe3598ec5e6771b92a73f0edf 100644 +deleted file mode 100644 +index 6f27b260d9dbe76da733459c8341282e23440b8a..0000000000000000000000000000000000000000 --- a/src/test/java/org/bukkit/InstrumentTest.java -+++ b/src/test/java/org/bukkit/InstrumentTest.java -@@ -8,9 +8,7 @@ public class InstrumentTest { - @Test - public void getByType() { - for (Instrument instrument : Instrument.values()) { ++++ /dev/null +@@ -1,19 +0,0 @@ +-package org.bukkit; +- +-import static org.bukkit.support.MatcherAssert.*; +-import static org.hamcrest.CoreMatchers.*; +-import org.bukkit.support.AbstractTestingBase; +-import org.junit.jupiter.api.Test; +- +-public class InstrumentTest extends AbstractTestingBase { +- @Test +- public void getByType() { +- for (Instrument instrument : Instrument.values()) { - if (instrument.getType() < 0) { - continue; - } -+ // Paper - byte magic values are still used - - assertThat(Instrument.getByType(instrument.getType()), is(instrument)); - } +- +- assertThat(Instrument.getByType(instrument.getType()), is(instrument)); +- } +- } +-} diff --git a/patches/api/0429-Improve-Registry.patch b/patches/api/0429-Improve-Registry.patch index 13b36b1a92..0b2ade199c 100644 --- a/patches/api/0429-Improve-Registry.patch +++ b/patches/api/0429-Improve-Registry.patch @@ -10,12 +10,12 @@ getKey() methods on Keyed objects that have a registry are marked as Deprecated or Obsolete. diff --git a/src/main/java/org/bukkit/Art.java b/src/main/java/org/bukkit/Art.java -index 042d1d932a33022e4fc873652f70dc6ed342d46a..e57e34064262b90221b0621f1d13e9705e68421a 100644 +index d24bf449f58fd7c1b8ffab8dbc42f9f1fef8c4ef..00a290f1bf58cdc2238c13fd5a6048a26b7871da 100644 --- a/src/main/java/org/bukkit/Art.java +++ b/src/main/java/org/bukkit/Art.java -@@ -103,6 +103,13 @@ public enum Art implements Keyed { - return id; - } +@@ -97,6 +97,16 @@ public interface Art extends OldEnum<Art>, Keyed { + @Deprecated(since = "1.6.2") + int getId(); + // Paper start - deprecate getKey + /** @@ -23,10 +23,13 @@ index 042d1d932a33022e4fc873652f70dc6ed342d46a..e57e34064262b90221b0621f1d13e970 + * and {@link io.papermc.paper.registry.RegistryKey#PAINTING_VARIANT}. Painting variants can exist without a key. + */ + @Deprecated(since = "1.21") ++ @Override ++ @NotNull NamespacedKey getKey(); + // Paper end - deprecate getKey - @NotNull - @Override - public NamespacedKey getKey() { ++ + /** + * Get a painting by its numeric ID + * diff --git a/src/main/java/org/bukkit/MusicInstrument.java b/src/main/java/org/bukkit/MusicInstrument.java index c9f02466a04d20579fe2258bb02acf98e163ca81..bffd4ab2d08e5c3f83a49a31e1e55cc1eab7b319 100644 --- a/src/main/java/org/bukkit/MusicInstrument.java @@ -49,10 +52,10 @@ index c9f02466a04d20579fe2258bb02acf98e163ca81..bffd4ab2d08e5c3f83a49a31e1e55cc1 @Override public @NotNull String translationKey() { diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index 833eea6ee8c7fd8ccb3f2eed4285a3eb8311448c..e4d4ac6436f341f5d9de95e1ab56461fd68a3dc2 100644 +index a5db0a013921423f87abb14dc08b24f47d4093f6..9ed61b649d7e7056bd9ebcbb77f17c6c5798bf2d 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -385,6 +385,79 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -387,6 +387,79 @@ public interface Registry<T extends Keyed> extends Iterable<T> { @Nullable T get(@NotNull NamespacedKey key); @@ -132,7 +135,7 @@ index 833eea6ee8c7fd8ccb3f2eed4285a3eb8311448c..e4d4ac6436f341f5d9de95e1ab56461f /** * Get the object by its key. * -@@ -481,5 +554,12 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -483,5 +556,12 @@ public interface Registry<T extends Keyed> extends Iterable<T> { public Class<T> getType() { return this.type; } @@ -146,11 +149,11 @@ index 833eea6ee8c7fd8ccb3f2eed4285a3eb8311448c..e4d4ac6436f341f5d9de95e1ab56461f } } diff --git a/src/main/java/org/bukkit/Sound.java b/src/main/java/org/bukkit/Sound.java -index cf17af024b1953b6f21f18885411ea6a0baa1d4c..f32a035317f3f8e200bb8076e6a326cb1e87cfe1 100644 +index 04e890be72b18259f1af2833879b4d9af51b1f02..97c4fc9615e28c7268cd8340b50029c8f7de56b7 100644 --- a/src/main/java/org/bukkit/Sound.java +++ b/src/main/java/org/bukkit/Sound.java -@@ -1655,6 +1655,13 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa - this.key = NamespacedKey.minecraft(key); +@@ -1689,6 +1689,16 @@ public interface Sound extends OldEnum<Sound>, Keyed, net.kyori.adventure.sound. + return sound; } + // Paper start - deprecate getKey @@ -159,10 +162,13 @@ index cf17af024b1953b6f21f18885411ea6a0baa1d4c..f32a035317f3f8e200bb8076e6a326cb + * can exist without a key. + */ + @Deprecated(since = "1.20.5") ++ @Override ++ @NotNull NamespacedKey getKey(); + // Paper end - deprecate getKey - @NotNull - @Override - public NamespacedKey getKey() { ++ + /** + * @return an array of all known sounds. + * @deprecated use {@link Registry#iterator()}. diff --git a/src/main/java/org/bukkit/block/banner/PatternType.java b/src/main/java/org/bukkit/block/banner/PatternType.java index eaf6cd758344eeba29f00f822a50c93704af8bda..eb192030832e1741850871bec9bf999f014b6fc1 100644 --- a/src/main/java/org/bukkit/block/banner/PatternType.java diff --git a/patches/api/0471-Registry-Modification-API.patch b/patches/api/0471-Registry-Modification-API.patch index bc1c27afcd..f616c8fd1a 100644 --- a/patches/api/0471-Registry-Modification-API.patch +++ b/patches/api/0471-Registry-Modification-API.patch @@ -809,10 +809,10 @@ index 0000000000000000000000000000000000000000..bf49125acc8a0508bf59674bba3ed350 + } +} diff --git a/src/main/java/org/bukkit/Registry.java b/src/main/java/org/bukkit/Registry.java -index e4d4ac6436f341f5d9de95e1ab56461fd68a3dc2..b56e8fc3fba40637396abef27c08806f5157b3b4 100644 +index 9ed61b649d7e7056bd9ebcbb77f17c6c5798bf2d..16bef936a9aef957a73c33e45be7573584943a6b 100644 --- a/src/main/java/org/bukkit/Registry.java +++ b/src/main/java/org/bukkit/Registry.java -@@ -384,6 +384,27 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -386,6 +386,27 @@ public interface Registry<T extends Keyed> extends Iterable<T> { */ @Nullable T get(@NotNull NamespacedKey key); @@ -840,7 +840,7 @@ index e4d4ac6436f341f5d9de95e1ab56461fd68a3dc2..b56e8fc3fba40637396abef27c08806f // Paper start - improve Registry /** -@@ -458,6 +479,34 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -460,6 +481,34 @@ public interface Registry<T extends Keyed> extends Iterable<T> { } // Paper end - improve Registry @@ -875,7 +875,7 @@ index e4d4ac6436f341f5d9de95e1ab56461fd68a3dc2..b56e8fc3fba40637396abef27c08806f /** * Get the object by its key. * -@@ -561,5 +610,23 @@ public interface Registry<T extends Keyed> extends Iterable<T> { +@@ -563,5 +612,23 @@ public interface Registry<T extends Keyed> extends Iterable<T> { return value.getKey(); } // Paper end - improve Registry diff --git a/patches/server/0004-Test-changes.patch b/patches/server/0004-Test-changes.patch index 2bf3cdb566..2c3baac94d 100644 --- a/patches/server/0004-Test-changes.patch +++ b/patches/server/0004-Test-changes.patch @@ -452,3 +452,81 @@ index 5781c2fab2d407b4a22d5fc80e1c03e907617316..68ae998b30bbcacae3604fb6581ceca3 RegistryHelper.registry = layers.compositeAccess().freeze(); // Register vanilla pack RegistryHelper.dataPack = ReloadableServerResources.loadResources(ireloadableresourcemanager, layers, list, featureFlagSet, Commands.CommandSelection.DEDICATED, 0, MoreExecutors.directExecutor(), MoreExecutors.directExecutor()).join(); +diff --git a/src/test/java/org/bukkit/support/suite/AllFeaturesTestSuite.java b/src/test/java/org/bukkit/support/suite/AllFeaturesTestSuite.java +index d78661198815b78d041288eb62076514926428ad..2d268498b545db48efa106d2c7afca7f7b74c76d 100644 +--- a/src/test/java/org/bukkit/support/suite/AllFeaturesTestSuite.java ++++ b/src/test/java/org/bukkit/support/suite/AllFeaturesTestSuite.java +@@ -14,7 +14,7 @@ import org.junit.platform.suite.api.SuiteDisplayName; + @Suite(failIfNoTests = false) + @SuiteDisplayName("Test suite for test which need registry values present, with all feature flags set") + @IncludeTags("AllFeatures") +-@SelectPackages("org.bukkit") ++@SelectPackages({"org.bukkit", "io.papermc"}) + @SelectClasses({RegistryClassTest.class, PerRegistryTest.class, RegistryConversionTest.class}) // Make sure general registry tests are run first + @ExcludeClassNamePatterns("org.bukkit.craftbukkit.inventory.ItemStack.*Test") + @ConfigurationParameter(key = "TestSuite", value = "AllFeatures") +diff --git a/src/test/java/org/bukkit/support/suite/BundleFeatureTestSuite.java b/src/test/java/org/bukkit/support/suite/BundleFeatureTestSuite.java +index 8faaffd16fb05bd3d976b6a63835cfa547ec2445..c1ee709083276acb14b474993800dd4894febc47 100644 +--- a/src/test/java/org/bukkit/support/suite/BundleFeatureTestSuite.java ++++ b/src/test/java/org/bukkit/support/suite/BundleFeatureTestSuite.java +@@ -9,7 +9,7 @@ import org.junit.platform.suite.api.SuiteDisplayName; + @Suite(failIfNoTests = false) + @SuiteDisplayName("Test suite for test which need registry values present, with the bundle feature flag set") + @IncludeTags("BundleFeature") +-@SelectPackages("org.bukkit") ++@SelectPackages({"org.bukkit", "io.papermc"}) + @ConfigurationParameter(key = "TestSuite", value = "BundleFeature") + public class BundleFeatureTestSuite { + } +diff --git a/src/test/java/org/bukkit/support/suite/LegacyTestSuite.java b/src/test/java/org/bukkit/support/suite/LegacyTestSuite.java +index 576c35e086345c96325628cf1a048599f9ed6950..ac3c1c88ce5de4b623d17ab0af11a7d04caec869 100644 +--- a/src/test/java/org/bukkit/support/suite/LegacyTestSuite.java ++++ b/src/test/java/org/bukkit/support/suite/LegacyTestSuite.java +@@ -9,7 +9,7 @@ import org.junit.platform.suite.api.SuiteDisplayName; + @Suite(failIfNoTests = false) + @SuiteDisplayName("Test suite for legacy tests") + @IncludeTags("Legacy") +-@SelectPackages("org.bukkit") ++@SelectPackages({"org.bukkit", "io.papermc"}) + @ConfigurationParameter(key = "TestSuite", value = "Legacy") + public class LegacyTestSuite { + } +diff --git a/src/test/java/org/bukkit/support/suite/NormalTestSuite.java b/src/test/java/org/bukkit/support/suite/NormalTestSuite.java +index 661c49c83b9a81512cf181b50f6353dc76e9f0bc..76f61fb60612160477b7da0b095f1c7e4822d4fb 100644 +--- a/src/test/java/org/bukkit/support/suite/NormalTestSuite.java ++++ b/src/test/java/org/bukkit/support/suite/NormalTestSuite.java +@@ -9,7 +9,7 @@ import org.junit.platform.suite.api.SuiteDisplayName; + @Suite(failIfNoTests = false) + @SuiteDisplayName("Test suite for standalone tests, which don't need any registry values present") + @IncludeTags("Normal") +-@SelectPackages("org.bukkit") ++@SelectPackages({"org.bukkit", "io.papermc"}) + @ConfigurationParameter(key = "TestSuite", value = "Normal") + public class NormalTestSuite { + } +diff --git a/src/test/java/org/bukkit/support/suite/SlowTestSuite.java b/src/test/java/org/bukkit/support/suite/SlowTestSuite.java +index f95ff2e9930f4fd0ff284f714fc39afb6b7789ca..60be4c20101bbae8cf027270ff0e1e138d2fe9d2 100644 +--- a/src/test/java/org/bukkit/support/suite/SlowTestSuite.java ++++ b/src/test/java/org/bukkit/support/suite/SlowTestSuite.java +@@ -9,7 +9,7 @@ import org.junit.platform.suite.api.SuiteDisplayName; + @Suite(failIfNoTests = false) + @SuiteDisplayName("Test suite for slow tests, which don't need to run every time") + @IncludeTags("Slow") +-@SelectPackages("org.bukkit") ++@SelectPackages({"org.bukkit", "io.papermc"}) + @ConfigurationParameter(key = "TestSuite", value = "Slow") + public class SlowTestSuite { + } +diff --git a/src/test/java/org/bukkit/support/suite/VanillaFeatureTestSuite.java b/src/test/java/org/bukkit/support/suite/VanillaFeatureTestSuite.java +index 5ee48e92d2b5134a4ba15802087f6afe58c1cb8d..d0e2eacfcd487e2852eff4b1828031dd3649e41a 100644 +--- a/src/test/java/org/bukkit/support/suite/VanillaFeatureTestSuite.java ++++ b/src/test/java/org/bukkit/support/suite/VanillaFeatureTestSuite.java +@@ -9,7 +9,7 @@ import org.junit.platform.suite.api.SuiteDisplayName; + @Suite(failIfNoTests = false) + @SuiteDisplayName("Test suite for test which need vanilla registry values present") + @IncludeTags("VanillaFeature") +-@SelectPackages("org.bukkit") ++@SelectPackages({"org.bukkit", "io.papermc"}) + @ConfigurationParameter(key = "TestSuite", value = "VanillaFeature") + public class VanillaFeatureTestSuite { + } diff --git a/patches/server/0009-MC-Utils.patch b/patches/server/0009-MC-Utils.patch index f656e93a64..ede5f9988d 100644 --- a/patches/server/0009-MC-Utils.patch +++ b/patches/server/0009-MC-Utils.patch @@ -5594,7 +5594,7 @@ index a1f4ebcd0877a6d0c41493eff5d70a408bf98e59..f1725ef766c35aa623ace58fe8bf31fc public BlockState getBlockState(BlockPos pos) { return this.getChunk(SectionPos.blockToSectionCoord(pos.getX()), SectionPos.blockToSectionCoord(pos.getZ())).getBlockState(pos); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 23a611c9a83d1cea5ab2f64cdbd696c39872477d..bf660a057d135563b47e7b74d927a82a20b8ef75 100644 +index d7095aab94a9f3b9f06a033ba4d414dfae42f620..7bb87d2bdf0ead0fdca38a9685e2e15b249ec2cb 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -181,6 +181,7 @@ public abstract class PlayerList { @@ -5624,10 +5624,10 @@ index ae25aec117a7272735c824a00c1ed117fa52a921..d6e942aca1bcc769c390504a4119d661 @Override public void schedule(R runnable) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 1631ea62aab53d6e5e0ae44f63367416ac424410..c010d18061f58a583c69e85fc29305497523f569 100644 +index 4c9ff26332e2f5224d0308e4cb64b7b6c474fb3f..0fa9bcd7e7f1c4d1c8c57a061f0a782de1bfbf8b 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -342,6 +342,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -343,6 +343,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return this.level.hasChunk((int) Math.floor(this.getX()) >> 4, (int) Math.floor(this.getZ()) >> 4); } // CraftBukkit end @@ -5640,7 +5640,7 @@ index 1631ea62aab53d6e5e0ae44f63367416ac424410..c010d18061f58a583c69e85fc2930549 public Entity(EntityType<?> type, Level world) { this.id = Entity.ENTITY_COUNTER.incrementAndGet(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 47712d062ece9914de058153272ab1fa535af372..9aa4e70f1d1c4de2138d31701dceaed25062e69c 100644 +index 17f706d401154035a7f1ed47b04a38e4eef24263..1d7af970b8f5eaa46fe4cd2b7d076f3cdd371216 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -296,6 +296,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -6162,7 +6162,7 @@ index 34933c5324126f9afdc5cba9dea997ace8f01806..4eb0b0969325f39a7ae65492cccd4825 return false; } else { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 3882ae04173cd125fe490692a6bc2b4d8b20ff7b..eb61712ea067b277e7f32f887e3528faca275450 100644 +index 6c8a69b7c1b45549b2c388a8df2258184c587309..49102177454765b8e53d0d7f47fe4bf4a33549af 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2617,4 +2617,9 @@ public final class CraftServer implements Server { @@ -6386,10 +6386,10 @@ index e837d76e833d73d888bc1dad3515c2b82bc0e437..4705aed1dd98378c146bf9e346df1a17 public WorldBorder getWorldBorder() { throw new UnsupportedOperationException("Not supported yet."); diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 1bf87b4915edf341ad55f8274cef324e0bc28547..3591b79481ac17bd02e59ac3c623d1c6991abd84 100644 +index fb83cadf384712e2dff1cb001bdbeec8f5e89ada..5baf68732cb0e5ecab9d809df54a42e8252f1624 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -34,6 +34,9 @@ public class ActivationRange +@@ -35,6 +35,9 @@ public class ActivationRange public enum ActivationType { diff --git a/patches/server/0021-Hook-into-CB-plugin-rewrites.patch b/patches/server/0021-Hook-into-CB-plugin-rewrites.patch index 4b98c18cbf..213edbe281 100644 --- a/patches/server/0021-Hook-into-CB-plugin-rewrites.patch +++ b/patches/server/0021-Hook-into-CB-plugin-rewrites.patch @@ -8,7 +8,7 @@ our own relocation. Also lets us rewrite NMS calls for when we're debugging in an IDE pre-relocate. diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index 79b386af9eb2450b0a8abe3342bc53d3f0b86fd9..58df23162aed12f3058b5e0921a9e30b89f56a10 100644 +index 40fbbff1df7e65ca01bb82e213eeefbb38c85a7a..7d2d5c4ee244e7118a4c38628e2e69c79b11b98d 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java @@ -12,6 +12,7 @@ import java.util.Arrays; @@ -27,7 +27,7 @@ index 79b386af9eb2450b0a8abe3342bc53d3f0b86fd9..58df23162aed12f3058b5e0921a9e30b import joptsimple.OptionParser; import joptsimple.OptionSet; import joptsimple.OptionSpec; -@@ -126,6 +128,40 @@ public class Commodore { +@@ -128,6 +130,40 @@ public class Commodore { return this.reroutes; } @@ -68,7 +68,7 @@ index 79b386af9eb2450b0a8abe3342bc53d3f0b86fd9..58df23162aed12f3058b5e0921a9e30b public static void main(String[] args) { OptionParser parser = new OptionParser(); OptionSpec<File> inputFlag = parser.acceptsAll(Arrays.asList("i", "input")).withRequiredArg().ofType(File.class).required(); -@@ -281,9 +317,49 @@ public class Commodore { +@@ -283,9 +319,49 @@ public class Commodore { } return new MethodVisitor(this.api, super.visitMethod(access, name, desc, signature, exceptions)) { @@ -118,7 +118,7 @@ index 79b386af9eb2450b0a8abe3342bc53d3f0b86fd9..58df23162aed12f3058b5e0921a9e30b name = FieldRename.rename(pluginVersion, owner, name); if (modern) { -@@ -396,6 +472,13 @@ public class Commodore { +@@ -398,6 +474,13 @@ public class Commodore { return; } @@ -132,7 +132,7 @@ index 79b386af9eb2450b0a8abe3342bc53d3f0b86fd9..58df23162aed12f3058b5e0921a9e30b if (modern) { if (owner.equals("org/bukkit/Material") || (instantiatedMethodType != null && instantiatedMethodType.getDescriptor().startsWith("(Lorg/bukkit/Material;)"))) { switch (name) { -@@ -492,6 +575,13 @@ public class Commodore { +@@ -494,6 +577,13 @@ public class Commodore { @Override public void visitLdcInsn(Object value) { @@ -146,7 +146,7 @@ index 79b386af9eb2450b0a8abe3342bc53d3f0b86fd9..58df23162aed12f3058b5e0921a9e30b if (value instanceof String && ((String) value).equals("com.mysql.jdbc.Driver")) { super.visitLdcInsn("com.mysql.cj.jdbc.Driver"); return; -@@ -502,6 +592,14 @@ public class Commodore { +@@ -504,6 +594,14 @@ public class Commodore { @Override public void visitInvokeDynamicInsn(String name, String descriptor, Handle bootstrapMethodHandle, Object... bootstrapMethodArguments) { @@ -161,7 +161,7 @@ index 79b386af9eb2450b0a8abe3342bc53d3f0b86fd9..58df23162aed12f3058b5e0921a9e30b if (bootstrapMethodHandle.getOwner().equals("java/lang/invoke/LambdaMetafactory") && bootstrapMethodHandle.getName().equals("metafactory") && bootstrapMethodArguments.length == 3) { Type samMethodType = (Type) bootstrapMethodArguments[0]; -@@ -518,7 +616,7 @@ public class Commodore { +@@ -520,7 +618,7 @@ public class Commodore { methodArgs.add(new Handle(newOpcode, newOwner, newName, newDescription, newItf)); methodArgs.add(newInstantiated); @@ -170,7 +170,7 @@ index 79b386af9eb2450b0a8abe3342bc53d3f0b86fd9..58df23162aed12f3058b5e0921a9e30b }, implMethod.getTag(), implMethod.getOwner(), implMethod.getName(), implMethod.getDesc(), implMethod.isInterface(), samMethodType, instantiatedMethodType); return; } -@@ -569,6 +667,12 @@ public class Commodore { +@@ -571,6 +669,12 @@ public class Commodore { @Override public FieldVisitor visitField(int access, String name, String descriptor, String signature, Object value) { diff --git a/patches/server/0022-Remap-reflection-calls-in-plugins-using-internals.patch b/patches/server/0022-Remap-reflection-calls-in-plugins-using-internals.patch index d424e1f6fc..13f71c1f92 100644 --- a/patches/server/0022-Remap-reflection-calls-in-plugins-using-internals.patch +++ b/patches/server/0022-Remap-reflection-calls-in-plugins-using-internals.patch @@ -645,10 +645,10 @@ index 242811578a786e3807a1a7019d472d5a68f87116..0b65fdf53124f3dd042b2363b1b8df8e return traceElements; } diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index 58df23162aed12f3058b5e0921a9e30b89f56a10..ba104635c7713b04ce624bc4c7bd390462bc0edb 100644 +index 7d2d5c4ee244e7118a4c38628e2e69c79b11b98d..371d31266a532e59c49dbb106e354296b119fa5e 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -@@ -129,36 +129,26 @@ public class Commodore { +@@ -131,36 +131,26 @@ public class Commodore { } // Paper start - Plugin rewrites @@ -696,7 +696,7 @@ index 58df23162aed12f3058b5e0921a9e30b89f56a10..ba104635c7713b04ce624bc4c7bd3904 } // Paper end - Plugin rewrites -@@ -243,6 +233,7 @@ public class Commodore { +@@ -245,6 +235,7 @@ public class Commodore { visitor = new LimitedClassRemapper(cw, new SimpleRemapper(Commodore.ENUM_RENAMES)); } diff --git a/patches/server/0024-Remove-Spigot-timings.patch b/patches/server/0024-Remove-Spigot-timings.patch index 6913a8e21f..b3b6ebc014 100644 --- a/patches/server/0024-Remove-Spigot-timings.patch +++ b/patches/server/0024-Remove-Spigot-timings.patch @@ -330,10 +330,10 @@ index 18d56058073b6cc4f9020f0a6137e4ac26eed0b2..fddc6b5abbad66ebe556ff8565c38c60 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c010d18061f58a583c69e85fc29305497523f569..c8b8102d84119dfb6093f4b79aa3124c594f9a88 100644 +index 0fa9bcd7e7f1c4d1c8c57a061f0a782de1bfbf8b..aba3e1b5d86940f91034ee6415c909529503a184 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -148,7 +148,6 @@ import org.bukkit.command.CommandSender; +@@ -149,7 +149,6 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Hanging; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Vehicle; @@ -341,7 +341,7 @@ index c010d18061f58a583c69e85fc29305497523f569..c8b8102d84119dfb6093f4b79aa3124c import org.bukkit.event.entity.EntityCombustByEntityEvent; import org.bukkit.event.hanging.HangingBreakByEntityEvent; import org.bukkit.event.vehicle.VehicleBlockCollisionEvent; -@@ -326,7 +325,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -327,7 +326,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // Marks an entity, that it was removed by a plugin via Entity#remove // Main use case currently is for SPIGOT-7487, preventing dropping of leash when leash is removed public boolean pluginRemoved = false; @@ -349,7 +349,7 @@ index c010d18061f58a583c69e85fc29305497523f569..c8b8102d84119dfb6093f4b79aa3124c // Spigot start public final org.spigotmc.ActivationRange.ActivationType activationType = org.spigotmc.ActivationRange.initializeEntityActivationType(this); public final boolean defaultActivationState; -@@ -866,7 +864,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -867,7 +865,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void move(MoverType type, Vec3 movement) { @@ -357,7 +357,7 @@ index c010d18061f58a583c69e85fc29305497523f569..c8b8102d84119dfb6093f4b79aa3124c if (this.noPhysics) { this.setPos(this.getX() + movement.x, this.getY() + movement.y, this.getZ() + movement.z); } else { -@@ -978,7 +975,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -979,7 +976,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess gameprofilerfiller.pop(); } } @@ -366,7 +366,7 @@ index c010d18061f58a583c69e85fc29305497523f569..c8b8102d84119dfb6093f4b79aa3124c private void applyMovementEmissionAndPlaySound(Entity.MovementEmission moveEffect, Vec3 movement, BlockPos landingPos, BlockState landingState) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 9aa4e70f1d1c4de2138d31701dceaed25062e69c..6dba567e9f7a197af16598647f216b5323d1b601 100644 +index 1d7af970b8f5eaa46fe4cd2b7d076f3cdd371216..900ab23f587e9d990afe29492058390dc1c13f2d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -162,8 +162,6 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -378,7 +378,7 @@ index 9aa4e70f1d1c4de2138d31701dceaed25062e69c..6dba567e9f7a197af16598647f216b53 public abstract class LivingEntity extends Entity implements Attackable { private static final Logger LOGGER = LogUtils.getLogger(); -@@ -3090,7 +3088,6 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3091,7 +3089,6 @@ public abstract class LivingEntity extends Entity implements Attackable { @Override public void tick() { @@ -386,7 +386,7 @@ index 9aa4e70f1d1c4de2138d31701dceaed25062e69c..6dba567e9f7a197af16598647f216b53 super.tick(); this.updatingUsingItem(); this.updateSwimAmount(); -@@ -3132,9 +3129,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3133,9 +3130,7 @@ public abstract class LivingEntity extends Entity implements Attackable { } if (!this.isRemoved()) { @@ -396,7 +396,7 @@ index 9aa4e70f1d1c4de2138d31701dceaed25062e69c..6dba567e9f7a197af16598647f216b53 } double d0 = this.getX() - this.xo; -@@ -3228,7 +3223,6 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3229,7 +3224,6 @@ public abstract class LivingEntity extends Entity implements Attackable { } this.elytraAnimationState.tick(); @@ -404,7 +404,7 @@ index 9aa4e70f1d1c4de2138d31701dceaed25062e69c..6dba567e9f7a197af16598647f216b53 } public void detectEquipmentUpdatesPublic() { // CraftBukkit -@@ -3435,7 +3429,6 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3436,7 +3430,6 @@ public abstract class LivingEntity extends Entity implements Attackable { ProfilerFiller gameprofilerfiller = Profiler.get(); gameprofilerfiller.push("ai"); @@ -412,7 +412,7 @@ index 9aa4e70f1d1c4de2138d31701dceaed25062e69c..6dba567e9f7a197af16598647f216b53 if (this.isImmobile()) { this.jumping = false; this.xxa = 0.0F; -@@ -3445,7 +3438,6 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3446,7 +3439,6 @@ public abstract class LivingEntity extends Entity implements Attackable { this.serverAiStep(); gameprofilerfiller.pop(); } @@ -420,7 +420,7 @@ index 9aa4e70f1d1c4de2138d31701dceaed25062e69c..6dba567e9f7a197af16598647f216b53 gameprofilerfiller.pop(); gameprofilerfiller.push("jump"); -@@ -3488,7 +3480,6 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3489,7 +3481,6 @@ public abstract class LivingEntity extends Entity implements Attackable { this.resetFallDistance(); } @@ -428,7 +428,7 @@ index 9aa4e70f1d1c4de2138d31701dceaed25062e69c..6dba567e9f7a197af16598647f216b53 label112: { LivingEntity entityliving = this.getControllingPassenger(); -@@ -3502,7 +3493,6 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3503,7 +3494,6 @@ public abstract class LivingEntity extends Entity implements Attackable { this.travel(vec3d1); } @@ -436,7 +436,7 @@ index 9aa4e70f1d1c4de2138d31701dceaed25062e69c..6dba567e9f7a197af16598647f216b53 if (!this.level().isClientSide() || this.isControlledByLocalInstance()) { this.applyEffectsFromBlocks(); -@@ -3538,9 +3528,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3539,9 +3529,7 @@ public abstract class LivingEntity extends Entity implements Attackable { this.checkAutoSpinAttack(axisalignedbb, this.getBoundingBox()); } @@ -595,7 +595,7 @@ index d1b82dec25069a7027aaf53086b1829e511fc301..4367ccc628bb4f404d6a081083002518 }; } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7c5b0db8115dc4032a3a364299ca06c88efd9a26..5650b4cfcd4008ac7f351d5bfb1fb8cc81da4caa 100644 +index f3bc8196b43bfdfdd85e03769c4d109c2fe1930c..f401fb3261a883019083f3c6c145d0ff74f149f4 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -379,7 +379,6 @@ public final class CraftServer implements Server { @@ -919,10 +919,10 @@ index f97eccb6a17c7876e1e002d798eb67bbe80571a0..dba31a2cbcfebe1f28883545ce4a70fc + } } diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 3591b79481ac17bd02e59ac3c623d1c6991abd84..263df52c7f5e172a6b9118b4bc4672e443adedba 100644 +index 5baf68732cb0e5ecab9d809df54a42e8252f1624..0338ceaddc1a0921f5f8796d5eac75c301bafac2 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -27,7 +27,6 @@ import net.minecraft.world.entity.projectile.ThrownTrident; +@@ -28,7 +28,6 @@ import net.minecraft.world.entity.projectile.ThrownTrident; import net.minecraft.world.entity.raid.Raider; import net.minecraft.world.level.Level; import net.minecraft.world.phys.AABB; @@ -930,7 +930,7 @@ index 3591b79481ac17bd02e59ac3c623d1c6991abd84..263df52c7f5e172a6b9118b4bc4672e4 public class ActivationRange { -@@ -110,7 +109,6 @@ public class ActivationRange +@@ -111,7 +110,6 @@ public class ActivationRange */ public static void activateEntities(Level world) { @@ -938,7 +938,7 @@ index 3591b79481ac17bd02e59ac3c623d1c6991abd84..263df52c7f5e172a6b9118b4bc4672e4 final int miscActivationRange = world.spigotConfig.miscActivationRange; final int raiderActivationRange = world.spigotConfig.raiderActivationRange; final int animalActivationRange = world.spigotConfig.animalActivationRange; -@@ -137,7 +135,6 @@ public class ActivationRange +@@ -138,7 +136,6 @@ public class ActivationRange world.getEntities().get(ActivationRange.maxBB, ActivationRange::activateEntity); } @@ -946,18 +946,18 @@ index 3591b79481ac17bd02e59ac3c623d1c6991abd84..263df52c7f5e172a6b9118b4bc4672e4 } /** -@@ -232,10 +229,8 @@ public class ActivationRange +@@ -233,10 +230,8 @@ public class ActivationRange */ public static boolean checkIfActive(Entity entity) { - SpigotTimings.checkIfActiveTimer.startTiming(); - // Never safe to skip fireworks or entities not yet added to chunk - if ( entity instanceof FireworkRocketEntity ) { + // Never safe to skip fireworks or item gravity + if (entity instanceof FireworkRocketEntity || (entity instanceof ItemEntity && (entity.tickCount + entity.getId() + 1) % 4 == 0)) { - SpigotTimings.checkIfActiveTimer.stopTiming(); return true; } -@@ -259,7 +254,6 @@ public class ActivationRange +@@ -260,7 +255,6 @@ public class ActivationRange { isActive = false; } diff --git a/patches/server/0036-Entity-Origin-API.patch b/patches/server/0036-Entity-Origin-API.patch index 47721fa03d..3f9282aee9 100644 --- a/patches/server/0036-Entity-Origin-API.patch +++ b/patches/server/0036-Entity-Origin-API.patch @@ -25,10 +25,10 @@ index f3633da64f990972cddc03f2fcfd34ced2955a7a..025363e6b51ff8aa089715b1ec2a0fa1 public void onTrackingEnd(Entity entity) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c8b8102d84119dfb6093f4b79aa3124c594f9a88..e97853cbfa6da8ecdb4c92cf634831492e1fc7e3 100644 +index aba3e1b5d86940f91034ee6415c909529503a184..57960530e15f0e4b8fb40b725ff03aaf8ce6ffac 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -331,7 +331,27 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -332,7 +332,27 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public long activatedTick = Integer.MIN_VALUE; public void inactiveTick() { } // Spigot end @@ -56,7 +56,7 @@ index c8b8102d84119dfb6093f4b79aa3124c594f9a88..e97853cbfa6da8ecdb4c92cf63483149 public float getBukkitYaw() { return this.yRot; } -@@ -2269,6 +2289,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2270,6 +2290,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.bukkitEntity.storeBukkitValues(nbttagcompound); } // CraftBukkit end @@ -72,7 +72,7 @@ index c8b8102d84119dfb6093f4b79aa3124c594f9a88..e97853cbfa6da8ecdb4c92cf63483149 return nbttagcompound; } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT"); -@@ -2397,6 +2426,20 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2398,6 +2427,20 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } // CraftBukkit end diff --git a/patches/server/0038-Configurable-top-of-nether-void-damage.patch b/patches/server/0038-Configurable-top-of-nether-void-damage.patch index 5f97b3e150..07e4a617c7 100644 --- a/patches/server/0038-Configurable-top-of-nether-void-damage.patch +++ b/patches/server/0038-Configurable-top-of-nether-void-damage.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Configurable top of nether void damage Co-authored-by: Jake Potrebic <[email protected]> diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e97853cbfa6da8ecdb4c92cf634831492e1fc7e3..49df5f4b09926556986e3a45d52ff299b878af76 100644 +index 57960530e15f0e4b8fb40b725ff03aaf8ce6ffac..2828ef013fe2c35292990cccd824a76a5551c952 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -720,7 +720,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -721,7 +721,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void checkBelowWorld() { diff --git a/patches/server/0040-Add-more-entities-to-activation-range-ignore-list.patch b/patches/server/0040-Add-more-entities-to-activation-range-ignore-list.patch index 2c4e1fe578..ad1700365a 100644 --- a/patches/server/0040-Add-more-entities-to-activation-range-ignore-list.patch +++ b/patches/server/0040-Add-more-entities-to-activation-range-ignore-list.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add more entities to activation range ignore list diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 263df52c7f5e172a6b9118b4bc4672e443adedba..dd1c5bc7522a4710cbfdd4764f6431e1e28d63cc 100644 +index 0338ceaddc1a0921f5f8796d5eac75c301bafac2..bd522080d17b5b470ec3ab42aa4ecc3082248c8a 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -91,6 +91,9 @@ public class ActivationRange +@@ -92,6 +92,9 @@ public class ActivationRange || entity instanceof AbstractHurtingProjectile || entity instanceof LightningBolt || entity instanceof PrimedTnt diff --git a/patches/server/0063-Disable-Scoreboards-for-non-players-by-default.patch b/patches/server/0063-Disable-Scoreboards-for-non-players-by-default.patch index 3d53b13e30..fbca7a5ea1 100644 --- a/patches/server/0063-Disable-Scoreboards-for-non-players-by-default.patch +++ b/patches/server/0063-Disable-Scoreboards-for-non-players-by-default.patch @@ -11,10 +11,10 @@ So avoid looking up scoreboards and short circuit to the "not on a team" logic which is most likely to be true. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 49df5f4b09926556986e3a45d52ff299b878af76..8a61ca3cba2888e03e440519714705fe50b81267 100644 +index 2828ef013fe2c35292990cccd824a76a5551c952..0c2389e73e98ec48ed636f616a36e6e1cefa7b93 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3057,6 +3057,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3058,6 +3058,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @Nullable public PlayerTeam getTeam() { @@ -23,7 +23,7 @@ index 49df5f4b09926556986e3a45d52ff299b878af76..8a61ca3cba2888e03e440519714705fe } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 6dba567e9f7a197af16598647f216b5323d1b601..47403887721914b632565947efae0dfa7c841588 100644 +index 900ab23f587e9d990afe29492058390dc1c13f2d..c177e3ba30b8807eb41ad7741706d9a017ab9717 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -871,6 +871,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0073-Custom-replacement-for-eaten-items.patch b/patches/server/0073-Custom-replacement-for-eaten-items.patch index 25ce947852..bc3c20320f 100644 --- a/patches/server/0073-Custom-replacement-for-eaten-items.patch +++ b/patches/server/0073-Custom-replacement-for-eaten-items.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Custom replacement for eaten items diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 47403887721914b632565947efae0dfa7c841588..031b7f51959d1b8ca30e4a9fda0a2832516c9c0c 100644 +index c177e3ba30b8807eb41ad7741706d9a017ab9717..21a356b3c7d3dec73e5c8feaa4afda479a7ec1a2 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3982,10 +3982,11 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3983,10 +3983,11 @@ public abstract class LivingEntity extends Entity implements Attackable { if (!this.useItem.isEmpty() && this.isUsingItem()) { // CraftBukkit start - fire PlayerItemConsumeEvent ItemStack itemstack; @@ -21,7 +21,7 @@ index 47403887721914b632565947efae0dfa7c841588..031b7f51959d1b8ca30e4a9fda0a2832 this.level().getCraftServer().getPluginManager().callEvent(event); if (event.isCancelled()) { -@@ -4003,6 +4004,12 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4004,6 +4005,12 @@ public abstract class LivingEntity extends Entity implements Attackable { } else { itemstack = this.useItem.finishUsingItem(this.level(), this); } @@ -34,7 +34,7 @@ index 47403887721914b632565947efae0dfa7c841588..031b7f51959d1b8ca30e4a9fda0a2832 // CraftBukkit end if (itemstack != this.useItem) { -@@ -4010,6 +4017,11 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4011,6 +4018,11 @@ public abstract class LivingEntity extends Entity implements Attackable { } this.stopUsingItem(); diff --git a/patches/server/0074-handle-NaN-health-absorb-values-and-repair-bad-data.patch b/patches/server/0074-handle-NaN-health-absorb-values-and-repair-bad-data.patch index d019f5b8cb..3095ce36ae 100644 --- a/patches/server/0074-handle-NaN-health-absorb-values-and-repair-bad-data.patch +++ b/patches/server/0074-handle-NaN-health-absorb-values-and-repair-bad-data.patch @@ -5,7 +5,7 @@ Subject: [PATCH] handle NaN health/absorb values and repair bad data diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 031b7f51959d1b8ca30e4a9fda0a2832516c9c0c..e5d1877f570b302f0b193e77ff5fdd7e89532513 100644 +index 21a356b3c7d3dec73e5c8feaa4afda479a7ec1a2..cd7837935003775688281882b19f0808512a2e0d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -831,7 +831,13 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -34,7 +34,7 @@ index 031b7f51959d1b8ca30e4a9fda0a2832516c9c0c..e5d1877f570b302f0b193e77ff5fdd7e // CraftBukkit start - Handle scaled health if (this instanceof ServerPlayer) { org.bukkit.craftbukkit.entity.CraftPlayer player = ((ServerPlayer) this).getBukkitEntity(); -@@ -3839,7 +3849,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3840,7 +3850,7 @@ public abstract class LivingEntity extends Entity implements Attackable { } public final void setAbsorptionAmount(float absorptionAmount) { diff --git a/patches/server/0075-Use-a-Shared-Random-for-Entities.patch b/patches/server/0075-Use-a-Shared-Random-for-Entities.patch index b053616a5f..6cc939258e 100644 --- a/patches/server/0075-Use-a-Shared-Random-for-Entities.patch +++ b/patches/server/0075-Use-a-Shared-Random-for-Entities.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Use a Shared Random for Entities Reduces memory usage and provides ensures more randomness, Especially since a lot of garbage entity objects get created. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 8a61ca3cba2888e03e440519714705fe50b81267..847fd720f11e89d906430c820bc92afe0454761d 100644 +index 0c2389e73e98ec48ed636f616a36e6e1cefa7b93..27a0f0651ac961c06626df1e4beb5525b4dacd48 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -183,6 +183,79 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -184,6 +184,79 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return tag.contains("Bukkit.updateLevel") && tag.getInt("Bukkit.updateLevel") >= level; } @@ -89,7 +89,7 @@ index 8a61ca3cba2888e03e440519714705fe50b81267..847fd720f11e89d906430c820bc92afe private CraftEntity bukkitEntity; public CraftEntity getBukkitEntity() { -@@ -373,7 +446,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -374,7 +447,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.bb = Entity.INITIAL_AABB; this.stuckSpeedMultiplier = Vec3.ZERO; this.nextStep = 1.0F; diff --git a/patches/server/0126-Cap-Entity-Collisions.patch b/patches/server/0126-Cap-Entity-Collisions.patch index 0a1d097e37..fe97d68719 100644 --- a/patches/server/0126-Cap-Entity-Collisions.patch +++ b/patches/server/0126-Cap-Entity-Collisions.patch @@ -12,10 +12,10 @@ just as it does in Vanilla, but entity pushing logic will be capped. You can set this to 0 to disable collisions. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 847fd720f11e89d906430c820bc92afe0454761d..b1b26e7c0f66f0697bcfe9eb045d45f31cd9ab06 100644 +index 27a0f0651ac961c06626df1e4beb5525b4dacd48..2b5d1bc6d3b3fd04bcbf4984035a00b9151cf2ee 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -404,6 +404,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -405,6 +405,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public long activatedTick = Integer.MIN_VALUE; public void inactiveTick() { } // Spigot end @@ -24,10 +24,10 @@ index 847fd720f11e89d906430c820bc92afe0454761d..b1b26e7c0f66f0697bcfe9eb045d45f3 @javax.annotation.Nullable private org.bukkit.util.Vector origin; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 7a648a8c3f25397e1c883a42648b21a05901513f..bcc0137fec45406e70231b4e2a5bd69dc08ffb5a 100644 +index 6c29a05e91a6bac634ca3e5394b90112b65cdbd6..009539fa39c81c610ac34747cc09082a0756c79d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3640,10 +3640,12 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3641,10 +3641,12 @@ public abstract class LivingEntity extends Entity implements Attackable { } Iterator iterator1 = list.iterator(); diff --git a/patches/server/0141-Entity-fromMobSpawner.patch b/patches/server/0141-Entity-fromMobSpawner.patch index 4d78b98a0b..c03cb1fa0d 100644 --- a/patches/server/0141-Entity-fromMobSpawner.patch +++ b/patches/server/0141-Entity-fromMobSpawner.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entity#fromMobSpawner() diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b1b26e7c0f66f0697bcfe9eb045d45f31cd9ab06..99794276626d26849150d4956abbbc2296543907 100644 +index 2b5d1bc6d3b3fd04bcbf4984035a00b9151cf2ee..aa70b6437cabdd875cec446db4bcf2422ab2cbc6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -405,6 +405,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -406,6 +406,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public void inactiveTick() { } // Spigot end protected int numCollisions = 0; // Paper - Cap entity collisions @@ -16,7 +16,7 @@ index b1b26e7c0f66f0697bcfe9eb045d45f31cd9ab06..99794276626d26849150d4956abbbc22 // Paper start - Entity origin API @javax.annotation.Nullable private org.bukkit.util.Vector origin; -@@ -2375,6 +2376,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2376,6 +2377,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } nbttagcompound.put("Paper.Origin", this.newDoubleList(origin.getX(), origin.getY(), origin.getZ())); } @@ -27,7 +27,7 @@ index b1b26e7c0f66f0697bcfe9eb045d45f31cd9ab06..99794276626d26849150d4956abbbc22 // Paper end return nbttagcompound; } catch (Throwable throwable) { -@@ -2516,6 +2521,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2517,6 +2522,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.originWorld = originWorld; origin = new org.bukkit.util.Vector(originTag.getDouble(0), originTag.getDouble(1), originTag.getDouble(2)); } diff --git a/patches/server/0156-Add-PlayerArmorChangeEvent.patch b/patches/server/0156-Add-PlayerArmorChangeEvent.patch index 1f465410c3..0097500daf 100644 --- a/patches/server/0156-Add-PlayerArmorChangeEvent.patch +++ b/patches/server/0156-Add-PlayerArmorChangeEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerArmorChangeEvent diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index bcc0137fec45406e70231b4e2a5bd69dc08ffb5a..84e11e2c62e643f959f1a570a27f6ad07df165d4 100644 +index 009539fa39c81c610ac34747cc09082a0756c79d..08322f6147b78d140a2e0d6c3189ee95270c3c71 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3283,6 +3283,13 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3284,6 +3284,13 @@ public abstract class LivingEntity extends Entity implements Attackable { itemstack = this.getItemBySlot(enumitemslot); if (this.equipmentHasChanged(itemstack2, itemstack)) { diff --git a/patches/server/0176-Player.setPlayerProfile-API.patch b/patches/server/0176-Player.setPlayerProfile-API.patch index 42216ef379..fd09301185 100644 --- a/patches/server/0176-Player.setPlayerProfile-API.patch +++ b/patches/server/0176-Player.setPlayerProfile-API.patch @@ -207,10 +207,10 @@ index 128fcd537783986d816dae6d1ce2afb7af07d45a..32eeca2467189c6c97f7da5529d4fe93 public void onEntityRemove(Entity entity) { this.invertedVisibilityEntities.remove(entity.getUUID()); diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index ba104635c7713b04ce624bc4c7bd390462bc0edb..9a6857f325d72c1b5ce403c3240e0b1a3f43bc38 100644 +index 371d31266a532e59c49dbb106e354296b119fa5e..61d617d4abb9c9cf5c711459aa98c8b173597a9a 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -@@ -470,6 +470,13 @@ public class Commodore { +@@ -472,6 +472,13 @@ public class Commodore { } // Paper end - Rewrite plugins diff --git a/patches/server/0193-Add-EntityTeleportEndGatewayEvent.patch b/patches/server/0193-Add-EntityTeleportEndGatewayEvent.patch index 2a5ab478ab..48430a9c1c 100644 --- a/patches/server/0193-Add-EntityTeleportEndGatewayEvent.patch +++ b/patches/server/0193-Add-EntityTeleportEndGatewayEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add EntityTeleportEndGatewayEvent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 99794276626d26849150d4956abbbc2296543907..087f030985180b91a809fb45244e23106da62e34 100644 +index aa70b6437cabdd875cec446db4bcf2422ab2cbc6..46cb5722be10182af7af41f733405ab5fe137576 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3429,8 +3429,16 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3430,8 +3430,16 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // CraftBukkit start PositionMoveRotation absolutePosition = PositionMoveRotation.calculateAbsolute(PositionMoveRotation.of(this), PositionMoveRotation.of(teleportTarget), teleportTarget.relatives()); Location to = CraftLocation.toBukkit(absolutePosition.position(), teleportTarget.newLevel().getWorld(), absolutePosition.yRot(), absolutePosition.xRot()); diff --git a/patches/server/0198-Make-shield-blocking-delay-configurable.patch b/patches/server/0198-Make-shield-blocking-delay-configurable.patch index 0c056446f0..e1dfd5efbf 100644 --- a/patches/server/0198-Make-shield-blocking-delay-configurable.patch +++ b/patches/server/0198-Make-shield-blocking-delay-configurable.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Make shield blocking delay configurable diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 84e11e2c62e643f959f1a570a27f6ad07df165d4..08a2fbca50e26938e46e49dae7b101cfc375b02e 100644 +index 08322f6147b78d140a2e0d6c3189ee95270c3c71..9e21f77689eb246ad72cdbd7ee19211dcb2ed738 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4101,12 +4101,24 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4102,12 +4102,24 @@ public abstract class LivingEntity extends Entity implements Attackable { if (this.isUsingItem() && !this.useItem.isEmpty()) { Item item = this.useItem.getItem(); diff --git a/patches/server/0201-Add-entity-knockback-events.patch b/patches/server/0201-Add-entity-knockback-events.patch index 8615d22e3d..3e29b55d3e 100644 --- a/patches/server/0201-Add-entity-knockback-events.patch +++ b/patches/server/0201-Add-entity-knockback-events.patch @@ -11,10 +11,10 @@ Co-authored-by: aerulion <[email protected]> Co-authored-by: Jake Potrebic <[email protected]> diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 087f030985180b91a809fb45244e23106da62e34..011006bc2e88a9fec98796f939c07d884b92126b 100644 +index 46cb5722be10182af7af41f733405ab5fe137576..ab7740d1753cd8540189c77053e5ca1f71c1b024 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2050,7 +2050,21 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2051,7 +2051,21 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void push(double deltaX, double deltaY, double deltaZ) { @@ -38,7 +38,7 @@ index 087f030985180b91a809fb45244e23106da62e34..011006bc2e88a9fec98796f939c07d88 } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 08a2fbca50e26938e46e49dae7b101cfc375b02e..cfff596d720efe5f5ee4ad1990c3ee0fd6e4e836 100644 +index 9e21f77689eb246ad72cdbd7ee19211dcb2ed738..61124dfec84792fa23ce1b0f03cbd97b1a6bde5b 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1563,7 +1563,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0209-add-more-information-to-Entity.toString.patch b/patches/server/0209-add-more-information-to-Entity.toString.patch index a7a8976cca..ec05b0c235 100644 --- a/patches/server/0209-add-more-information-to-Entity.toString.patch +++ b/patches/server/0209-add-more-information-to-Entity.toString.patch @@ -6,10 +6,10 @@ Subject: [PATCH] add more information to Entity.toString() UUID, ticks lived, valid, dead diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 011006bc2e88a9fec98796f939c07d884b92126b..79a3d586ddf404c449b7c0aa1996e9b9897b2383 100644 +index ab7740d1753cd8540189c77053e5ca1f71c1b024..659ed49cebb8ed2a6e1c88fb1e4d95f0520820d4 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3406,7 +3406,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3407,7 +3407,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public String toString() { String s = this.level() == null ? "~NULL~" : this.level().toString(); diff --git a/patches/server/0239-Add-ray-tracing-methods-to-LivingEntity.patch b/patches/server/0239-Add-ray-tracing-methods-to-LivingEntity.patch index 4ad440ffa3..e9b2e45d29 100644 --- a/patches/server/0239-Add-ray-tracing-methods-to-LivingEntity.patch +++ b/patches/server/0239-Add-ray-tracing-methods-to-LivingEntity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add ray tracing methods to LivingEntity diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index cfff596d720efe5f5ee4ad1990c3ee0fd6e4e836..5b8e0931be2acb1eb4ac6f399ecc0a5ebc5db586 100644 +index 61124dfec84792fa23ce1b0f03cbd97b1a6bde5b..30343efb680edf3dc355498b04c5db9ebecbf270 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4112,6 +4112,19 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4113,6 +4113,19 @@ public abstract class LivingEntity extends Entity implements Attackable { } // Paper start - Make shield blocking delay configurable diff --git a/patches/server/0251-Add-LivingEntity-getTargetEntity.patch b/patches/server/0251-Add-LivingEntity-getTargetEntity.patch index 8f5a3aa5fa..de209ef73f 100644 --- a/patches/server/0251-Add-LivingEntity-getTargetEntity.patch +++ b/patches/server/0251-Add-LivingEntity-getTargetEntity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add LivingEntity#getTargetEntity diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 7a89c25fcd1c76e4b176c257600db89788aa0f21..3bcf2ba5f065d946ded4020b9882bc4e19af0e08 100644 +index 781568c0aef7556fd4422574d31c0ad790f0afa7..8f6f73fd6f1fce3b78e472f454e0a34043a00125 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4176,6 +4176,38 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4177,6 +4177,38 @@ public abstract class LivingEntity extends Entity implements Attackable { return this.level().clip(raytrace); } diff --git a/patches/server/0266-force-entity-dismount-during-teleportation.patch b/patches/server/0266-force-entity-dismount-during-teleportation.patch index e01ab14535..70b6f602f8 100644 --- a/patches/server/0266-force-entity-dismount-during-teleportation.patch +++ b/patches/server/0266-force-entity-dismount-during-teleportation.patch @@ -41,10 +41,10 @@ index cef054ba95ed7d2b0e2ee575edae3e94b77f58b6..8d958ac09bd9484d879eee6acb6aaea2 Iterator iterator = entityliving.getActiveEffects().iterator(); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 79a3d586ddf404c449b7c0aa1996e9b9897b2383..5d551a50e1043e369ebf3ddfe181be1e24cfd068 100644 +index 659ed49cebb8ed2a6e1c88fb1e4d95f0520820d4..2e1628a9b5507ff6b1f00ac83247fc033b2db1c4 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2821,17 +2821,28 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2822,17 +2822,28 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void removeVehicle() { @@ -75,7 +75,7 @@ index 79a3d586ddf404c449b7c0aa1996e9b9897b2383..5d551a50e1043e369ebf3ddfe181be1e } protected void addPassenger(Entity passenger) { -@@ -2856,7 +2867,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2857,7 +2868,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } @@ -87,7 +87,7 @@ index 79a3d586ddf404c449b7c0aa1996e9b9897b2383..5d551a50e1043e369ebf3ddfe181be1e if (entity.getVehicle() == this) { throw new IllegalStateException("Use x.stopRiding(y), not y.removePassenger(x)"); } else { -@@ -2866,7 +2880,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2867,7 +2881,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (this.getBukkitEntity() instanceof Vehicle && entity.getBukkitEntity() instanceof LivingEntity) { VehicleExitEvent event = new VehicleExitEvent( (Vehicle) this.getBukkitEntity(), @@ -96,7 +96,7 @@ index 79a3d586ddf404c449b7c0aa1996e9b9897b2383..5d551a50e1043e369ebf3ddfe181be1e ); // Suppress during worldgen if (this.valid) { -@@ -2879,7 +2893,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2880,7 +2894,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } @@ -106,10 +106,10 @@ index 79a3d586ddf404c449b7c0aa1996e9b9897b2383..5d551a50e1043e369ebf3ddfe181be1e if (this.valid) { Bukkit.getPluginManager().callEvent(event); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 3bcf2ba5f065d946ded4020b9882bc4e19af0e08..63d1c5e8441eb5a32fc298ff2d2f3157cbd19557 100644 +index 8f6f73fd6f1fce3b78e472f454e0a34043a00125..7e684a7df64b64e25ba602c39488712eefdfbcfa 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3756,9 +3756,15 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3757,9 +3757,15 @@ public abstract class LivingEntity extends Entity implements Attackable { @Override public void stopRiding() { diff --git a/patches/server/0278-Fixes-and-additions-to-the-spawn-reason-API.patch b/patches/server/0278-Fixes-and-additions-to-the-spawn-reason-API.patch index cc586b335c..94f0e11703 100644 --- a/patches/server/0278-Fixes-and-additions-to-the-spawn-reason-API.patch +++ b/patches/server/0278-Fixes-and-additions-to-the-spawn-reason-API.patch @@ -51,7 +51,7 @@ index 9cfd0b457f6c462921667b9439a7b3e32d019758..62412b37d4f7d37b3fec0966ab700c2a if (entity == null) { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index c75bc7427bd818e9d23ca0af2b08cb160f3c432e..fd1fe9a72a1d4e87b97a34fc79ab1429d31207e5 100644 +index 97b48186a48ca037645d4a5ae84e3a95fd413a33..a04cfa09d9f8594a7ad3120855efe1641abb7a47 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -223,6 +223,11 @@ public abstract class PlayerList { @@ -67,10 +67,10 @@ index c75bc7427bd818e9d23ca0af2b08cb160f3c432e..fd1fe9a72a1d4e87b97a34fc79ab1429 String s1 = connection.getLoggableAddress(this.server.logIPs()); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5d551a50e1043e369ebf3ddfe181be1e24cfd068..463d34e7b54efd503c4879d1386b2439474863dd 100644 +index 2e1628a9b5507ff6b1f00ac83247fc033b2db1c4..e7b4809aa7220597ae92cf8f941f61e874d45d46 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -255,6 +255,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -256,6 +256,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } // Paper end - Share random for entities to make them more random @@ -78,7 +78,7 @@ index 5d551a50e1043e369ebf3ddfe181be1e24cfd068..463d34e7b54efd503c4879d1386b2439 private CraftEntity bukkitEntity; -@@ -2390,6 +2391,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2391,6 +2392,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } nbttagcompound.put("Paper.Origin", this.newDoubleList(origin.getX(), origin.getY(), origin.getZ())); } @@ -88,7 +88,7 @@ index 5d551a50e1043e369ebf3ddfe181be1e24cfd068..463d34e7b54efd503c4879d1386b2439 // Save entity's from mob spawner status if (spawnedViaMobSpawner) { nbttagcompound.putBoolean("Paper.FromMobSpawner", true); -@@ -2537,6 +2541,26 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2538,6 +2542,26 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } spawnedViaMobSpawner = nbt.getBoolean("Paper.FromMobSpawner"); // Restore entity's from mob spawner status diff --git a/patches/server/0293-Prevent-consuming-the-wrong-itemstack.patch b/patches/server/0293-Prevent-consuming-the-wrong-itemstack.patch index ec94a92f4d..6da3d543fa 100644 --- a/patches/server/0293-Prevent-consuming-the-wrong-itemstack.patch +++ b/patches/server/0293-Prevent-consuming-the-wrong-itemstack.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Prevent consuming the wrong itemstack diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 63d1c5e8441eb5a32fc298ff2d2f3157cbd19557..ebfea3adbedd2695f645421019a276efbc73ee63 100644 +index 7e684a7df64b64e25ba602c39488712eefdfbcfa..ba78e8b73793292830f3260f9a12c50c698bb881 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3993,9 +3993,14 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3994,9 +3994,14 @@ public abstract class LivingEntity extends Entity implements Attackable { } public void startUsingItem(InteractionHand hand) { @@ -24,7 +24,7 @@ index 63d1c5e8441eb5a32fc298ff2d2f3157cbd19557..ebfea3adbedd2695f645421019a276ef this.useItem = itemstack; this.useItemRemaining = itemstack.getUseDuration(this); if (!this.level().isClientSide) { -@@ -4066,6 +4071,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4067,6 +4072,7 @@ public abstract class LivingEntity extends Entity implements Attackable { this.releaseUsingItem(); } else { if (!this.useItem.isEmpty() && this.isUsingItem()) { @@ -32,7 +32,7 @@ index 63d1c5e8441eb5a32fc298ff2d2f3157cbd19557..ebfea3adbedd2695f645421019a276ef // CraftBukkit start - fire PlayerItemConsumeEvent ItemStack itemstack; PlayerItemConsumeEvent event = null; // Paper -@@ -4103,8 +4109,8 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4104,8 +4110,8 @@ public abstract class LivingEntity extends Entity implements Attackable { } this.stopUsingItem(); diff --git a/patches/server/0302-Fix-item-EAR-ticks.patch b/patches/server/0302-Fix-item-EAR-ticks.patch index 8fd577191b..aef64b6c5a 100644 --- a/patches/server/0302-Fix-item-EAR-ticks.patch +++ b/patches/server/0302-Fix-item-EAR-ticks.patch @@ -21,15 +21,12 @@ index 75ebf09777e19645eee296a9edabac39c858ffb9..c21fa55c62d97d9511e41a1e313e9043 this.applyEffectsFromBlocks(); float f = 0.98F; diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index dd1c5bc7522a4710cbfdd4764f6431e1e28d63cc..05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6 100644 +index bd522080d17b5b470ec3ab42aa4ecc3082248c8a..964e3e81ab522ceebfceb651dfe3309d7b87c688 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -251,12 +251,11 @@ public class ActivationRange - entity.activatedTick = MinecraftServer.currentTick + 20; +@@ -253,11 +253,8 @@ public class ActivationRange } isActive = true; -+ } else if (entity instanceof net.minecraft.world.entity.item.ItemEntity && (entity.tickCount + entity.getId()) % 4 == 0) { // Paper - Needed for item gravity, see ItemEntity tick -+ isActive = true; } - // Add a little performance juice to active entities. Skip 1/4 if not immune. - } else if ( !entity.defaultActivationState && entity.tickCount % 4 == 0 && !ActivationRange.checkEntityImmunities( entity ) ) diff --git a/patches/server/0313-Entity-Jump-API.patch b/patches/server/0313-Entity-Jump-API.patch index 66167bd061..e9ef901729 100644 --- a/patches/server/0313-Entity-Jump-API.patch +++ b/patches/server/0313-Entity-Jump-API.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Entity Jump API public net.minecraft.world.entity.LivingEntity jumping diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ebfea3adbedd2695f645421019a276efbc73ee63..724fe482f1711008dc43fef96c4512a18ed54a48 100644 +index ba78e8b73793292830f3260f9a12c50c698bb881..a874913997c80c8f47f395e2ef4bb959aaa3e76d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3537,8 +3537,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3538,8 +3538,10 @@ public abstract class LivingEntity extends Entity implements Attackable { } else if (this.isInLava() && (!this.onGround() || d3 > d4)) { this.jumpInLiquid(FluidTags.LAVA); } else if ((this.onGround() || flag && d3 <= d4) && this.noJumpDelay == 0) { diff --git a/patches/server/0314-Add-option-to-nerf-pigmen-from-nether-portals.patch b/patches/server/0314-Add-option-to-nerf-pigmen-from-nether-portals.patch index 81ec1db92d..85acae1cfa 100644 --- a/patches/server/0314-Add-option-to-nerf-pigmen-from-nether-portals.patch +++ b/patches/server/0314-Add-option-to-nerf-pigmen-from-nether-portals.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add option to nerf pigmen from nether portals diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 463d34e7b54efd503c4879d1386b2439474863dd..fa80b6220aba144521dc0a2a35914c10046c1963 100644 +index e7b4809aa7220597ae92cf8f941f61e874d45d46..01ea0f81aecbf642d238e6cf6409df2cc83000f3 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -406,6 +406,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -407,6 +407,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public void inactiveTick() { } // Spigot end protected int numCollisions = 0; // Paper - Cap entity collisions @@ -16,7 +16,7 @@ index 463d34e7b54efd503c4879d1386b2439474863dd..fa80b6220aba144521dc0a2a35914c10 public boolean spawnedViaMobSpawner; // Paper - Yes this name is similar to above, upstream took the better one // Paper start - Entity origin API @javax.annotation.Nullable -@@ -2398,6 +2399,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2399,6 +2400,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (spawnedViaMobSpawner) { nbttagcompound.putBoolean("Paper.FromMobSpawner", true); } @@ -26,7 +26,7 @@ index 463d34e7b54efd503c4879d1386b2439474863dd..fa80b6220aba144521dc0a2a35914c10 // Paper end return nbttagcompound; } catch (Throwable throwable) { -@@ -2541,6 +2545,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2542,6 +2546,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } spawnedViaMobSpawner = nbt.getBoolean("Paper.FromMobSpawner"); // Restore entity's from mob spawner status diff --git a/patches/server/0336-Don-t-run-entity-collision-code-if-not-needed.patch b/patches/server/0336-Don-t-run-entity-collision-code-if-not-needed.patch index 543230b850..3f5d224512 100644 --- a/patches/server/0336-Don-t-run-entity-collision-code-if-not-needed.patch +++ b/patches/server/0336-Don-t-run-entity-collision-code-if-not-needed.patch @@ -12,10 +12,10 @@ The entity's current team collision rule causes them to NEVER collide. Co-authored-by: Owen1212055 <[email protected]> diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 724fe482f1711008dc43fef96c4512a18ed54a48..4fb99e3ee14d2e7fe2720e25af1c890004b0c250 100644 +index a874913997c80c8f47f395e2ef4bb959aaa3e76d..b01e472a8a5f05e586bfa35e33abfd3875518ab3 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3681,10 +3681,24 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3682,10 +3682,24 @@ public abstract class LivingEntity extends Entity implements Attackable { if (!(world instanceof ServerLevel worldserver)) { this.level().getEntities(EntityTypeTest.forClass(net.minecraft.world.entity.player.Player.class), this.getBoundingBox(), EntitySelector.pushableBy(this)).forEach(this::doPush); } else { diff --git a/patches/server/0340-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch b/patches/server/0340-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch index 3dae78af46..abd396810f 100644 --- a/patches/server/0340-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch +++ b/patches/server/0340-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch @@ -10,7 +10,7 @@ Co-authored-by: Wyatt Childers <[email protected]> Co-authored-by: Jake Potrebic <[email protected]> diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 4ff14dc6996634b0fcd365f76055023601ad2be0..530369764cad77466995f8f65070eec6a5de74f2 100644 +index ac5725230b04bc1a333863e251fe86580f909ea9..54de4e701adea123c0fdfb5787e951699305bb81 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -197,6 +197,7 @@ public abstract class PlayerList { @@ -84,10 +84,10 @@ index 4ff14dc6996634b0fcd365f76055023601ad2be0..530369764cad77466995f8f65070eec6 } // Paper end - Entity#getEntitySpawnReason diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index fa80b6220aba144521dc0a2a35914c10046c1963..5b8e264098f1b713de15f714bae59d3efda365cf 100644 +index 01ea0f81aecbf642d238e6cf6409df2cc83000f3..416e76f2124aba0c9ad6e6ecb052e73a8b743f37 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2502,27 +2502,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2503,27 +2503,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } // CraftBukkit end diff --git a/patches/server/0341-Add-PlayerAttackEntityCooldownResetEvent.patch b/patches/server/0341-Add-PlayerAttackEntityCooldownResetEvent.patch index 620e81e210..9d2516951e 100644 --- a/patches/server/0341-Add-PlayerAttackEntityCooldownResetEvent.patch +++ b/patches/server/0341-Add-PlayerAttackEntityCooldownResetEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerAttackEntityCooldownResetEvent diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 4fb99e3ee14d2e7fe2720e25af1c890004b0c250..25a2085ed68d393afbb658b63a1cd39af98f39fa 100644 +index b01e472a8a5f05e586bfa35e33abfd3875518ab3..33d969e09372930e740a8a4a84e5503284df9c28 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2352,7 +2352,17 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2353,7 +2353,17 @@ public abstract class LivingEntity extends Entity implements Attackable { } if (damagesource.getEntity() instanceof net.minecraft.world.entity.player.Player) { diff --git a/patches/server/0344-Fix-item-duplication-and-teleport-issues.patch b/patches/server/0344-Fix-item-duplication-and-teleport-issues.patch index fb6c0286ae..9ba828b0c5 100644 --- a/patches/server/0344-Fix-item-duplication-and-teleport-issues.patch +++ b/patches/server/0344-Fix-item-duplication-and-teleport-issues.patch @@ -16,10 +16,10 @@ So even if something NEW comes up, it would be impossible to drop the same item twice because the source was destroyed. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5b8e264098f1b713de15f714bae59d3efda365cf..e3228ad3825adedbd1a8326ac3bea329b539b18f 100644 +index 416e76f2124aba0c9ad6e6ecb052e73a8b743f37..8b4ded85500379bd7dafba51a91732dc56b815e6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2630,11 +2630,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2631,11 +2631,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } else { // CraftBukkit start - Capture drops for death event if (this instanceof net.minecraft.world.entity.LivingEntity && !((net.minecraft.world.entity.LivingEntity) this).forceDrops) { @@ -34,7 +34,7 @@ index 5b8e264098f1b713de15f714bae59d3efda365cf..e3228ad3825adedbd1a8326ac3bea329 entityitem.setDefaultPickUpDelay(); // CraftBukkit start -@@ -3462,6 +3463,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3463,6 +3464,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public Entity teleport(TeleportTransition teleportTarget) { Level world = this.level(); @@ -47,7 +47,7 @@ index 5b8e264098f1b713de15f714bae59d3efda365cf..e3228ad3825adedbd1a8326ac3bea329 if (world instanceof ServerLevel worldserver) { if (!this.isRemoved()) { // CraftBukkit start -@@ -3550,6 +3557,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3551,6 +3558,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess gameprofilerfiller.pop(); return null; } else { @@ -59,7 +59,7 @@ index 5b8e264098f1b713de15f714bae59d3efda365cf..e3228ad3825adedbd1a8326ac3bea329 entity.restoreFrom(this); this.removeAfterChangingDimensions(); // CraftBukkit start - Forward the CraftEntity to the new entity -@@ -3662,6 +3674,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3663,6 +3675,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public boolean canTeleport(Level from, Level to) { @@ -68,7 +68,7 @@ index 5b8e264098f1b713de15f714bae59d3efda365cf..e3228ad3825adedbd1a8326ac3bea329 Iterator iterator = this.getPassengers().iterator(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 25a2085ed68d393afbb658b63a1cd39af98f39fa..718ccabb46d4520ba363d21a33e06eb2c9ff62ee 100644 +index 33d969e09372930e740a8a4a84e5503284df9c28..4d39aa2fdc311acb34d7b674365141b995c324b7 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1765,9 +1765,9 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0369-Ensure-Entity-position-and-AABB-are-never-invalid.patch b/patches/server/0369-Ensure-Entity-position-and-AABB-are-never-invalid.patch index 09ccee390d..8d67ff41dd 100644 --- a/patches/server/0369-Ensure-Entity-position-and-AABB-are-never-invalid.patch +++ b/patches/server/0369-Ensure-Entity-position-and-AABB-are-never-invalid.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Ensure Entity position and AABB are never invalid Co-authored-by: Spottedleaf <[email protected]> diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index d5f96ed753e8298085e40c6181285cd6ea838ca2..8993c16254ac05d509bd8ac1cd21e7cc7c4097b8 100644 +index 8b4ded85500379bd7dafba51a91732dc56b815e6..65144603a545903b8f11ee1b2b1ac2795af81381 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -677,8 +677,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -678,8 +678,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void setPos(double x, double y, double z) { @@ -20,7 +20,7 @@ index d5f96ed753e8298085e40c6181285cd6ea838ca2..8993c16254ac05d509bd8ac1cd21e7cc } protected AABB makeBoundingBox() { -@@ -4412,7 +4412,29 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4442,7 +4442,29 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return this.getZ((2.0D * this.random.nextDouble() - 1.0D) * widthScale); } @@ -50,7 +50,7 @@ index d5f96ed753e8298085e40c6181285cd6ea838ca2..8993c16254ac05d509bd8ac1cd21e7cc if (this.position.x != x || this.position.y != y || this.position.z != z) { this.position = new Vec3(x, y, z); int i = Mth.floor(x); -@@ -4430,6 +4452,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4460,6 +4482,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.levelCallback.onMove(); } diff --git a/patches/server/0380-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch b/patches/server/0380-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch index c46cb6a919..444ff88b49 100644 --- a/patches/server/0380-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch +++ b/patches/server/0380-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Don't check chunk for portal on world gen entity add diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 718ccabb46d4520ba363d21a33e06eb2c9ff62ee..7e3670bee52407d768d1f7c0be66d7c0d0f72c46 100644 +index 4d39aa2fdc311acb34d7b674365141b995c324b7..6a2f54a70b484effb903f084a5a109981ef38114 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3796,7 +3796,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3797,7 +3797,7 @@ public abstract class LivingEntity extends Entity implements Attackable { Entity entity = this.getVehicle(); super.stopRiding(suppressCancellation); // Paper - Force entity dismount during teleportation diff --git a/patches/server/0404-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch b/patches/server/0404-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch index 4545d0671c..fe42787910 100644 --- a/patches/server/0404-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch +++ b/patches/server/0404-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch @@ -22,10 +22,10 @@ index 00ce20359f6d73acf3f1016806e5f4f3b6d01bcd..1754e413dc1b7a18b3fc0b981eae1128 this.lastGoodY = this.awaitingPositionFromClient.y; this.lastGoodZ = this.awaitingPositionFromClient.z; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 8993c16254ac05d509bd8ac1cd21e7cc7c4097b8..2c9e57436469f94beb45f656a1df71aba7b1e408 100644 +index 65144603a545903b8f11ee1b2b1ac2795af81381..906a5cc5671b707ef90d1f25d8ba5642c7a483bc 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -179,6 +179,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -180,6 +180,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // CraftBukkit start private static final int CURRENT_LEVEL = 2; @@ -33,7 +33,7 @@ index 8993c16254ac05d509bd8ac1cd21e7cc7c4097b8..2c9e57436469f94beb45f656a1df71ab static boolean isLevelAtLeast(CompoundTag tag, int level) { return tag.contains("Bukkit.updateLevel") && tag.getInt("Bukkit.updateLevel") >= level; } -@@ -1943,6 +1944,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1944,6 +1945,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void moveTo(double x, double y, double z, float yaw, float pitch) { diff --git a/patches/server/0408-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch b/patches/server/0408-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch index 71b2a9d8d1..cf630764ef 100644 --- a/patches/server/0408-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch +++ b/patches/server/0408-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Expose the Entity Counter to allow plugins to use valid and diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 2c9e57436469f94beb45f656a1df71aba7b1e408..c3e28cc070993be5afe9323c2c2d54ffc81d82f3 100644 +index 906a5cc5671b707ef90d1f25d8ba5642c7a483bc..3f0a44db707176c25e306f55fa63da9314d682a1 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4704,4 +4704,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4734,4 +4734,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess void accept(Entity entity, double x, double y, double z); } diff --git a/patches/server/0410-Entity-isTicking.patch b/patches/server/0410-Entity-isTicking.patch index ce16852635..0a46bb21ad 100644 --- a/patches/server/0410-Entity-isTicking.patch +++ b/patches/server/0410-Entity-isTicking.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entity#isTicking diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c3e28cc070993be5afe9323c2c2d54ffc81d82f3..6cefe8e0de375d3b192cc8be2b553a2dcbe098f5 100644 +index 3f0a44db707176c25e306f55fa63da9314d682a1..4a26795d22c0276980f4d0ad266861389d8471a8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4709,5 +4709,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4739,5 +4739,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public static int nextEntityId() { return ENTITY_COUNTER.incrementAndGet(); } diff --git a/patches/server/0435-Climbing-should-not-bypass-cramming-gamerule.patch b/patches/server/0435-Climbing-should-not-bypass-cramming-gamerule.patch index cb1a5d5b2a..41081acffa 100644 --- a/patches/server/0435-Climbing-should-not-bypass-cramming-gamerule.patch +++ b/patches/server/0435-Climbing-should-not-bypass-cramming-gamerule.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Climbing should not bypass cramming gamerule diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 6cefe8e0de375d3b192cc8be2b553a2dcbe098f5..7feed6383fdc367796ccb943bd086814ec989e6d 100644 +index 4a26795d22c0276980f4d0ad266861389d8471a8..9ebce90de425989014466d2c5ce68fce505d1dcd 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2195,6 +2195,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2196,6 +2196,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public boolean isPushable() { @@ -44,10 +44,10 @@ index b8d57e25851dd7da905100dfd4022e4b99fd7f02..721321a19ce056f82de2bef44a8791dc } else if (entity1 instanceof Player && entity instanceof Player && !io.papermc.paper.configuration.GlobalConfiguration.get().collisions.enablePlayerCollisions) { // Paper - Configurable player collision return false; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 7e3670bee52407d768d1f7c0be66d7c0d0f72c46..d361e39ba50958e7bdaea0b95c37d13f48a89771 100644 +index 6a2f54a70b484effb903f084a5a109981ef38114..499e4fbb919ae3875aaa371d6ee206b8b144387b 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3710,7 +3710,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3711,7 +3711,7 @@ public abstract class LivingEntity extends Entity implements Attackable { return; } // Paper end - don't run getEntities if we're not going to use its result @@ -56,7 +56,7 @@ index 7e3670bee52407d768d1f7c0be66d7c0d0f72c46..d361e39ba50958e7bdaea0b95c37d13f if (!list.isEmpty()) { // Paper - don't run getEntities if we're not going to use its result; moved up -@@ -3915,9 +3915,16 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3916,9 +3916,16 @@ public abstract class LivingEntity extends Entity implements Attackable { return !this.isRemoved() && this.collides; // CraftBukkit } @@ -142,7 +142,7 @@ index b0373df16a3e6910fb5f4a2ab7ca2523ced84a22..a9661ab34bc98c19d525eb4b60b1f0d0 } diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java -index a8fc89f78181abf9963bd1523f3bbefa911847d8..50c0055d80735313c280821991bd2a76e427f082 100644 +index a4ab0e50a245790b1767047c384859f06c3f9526..fb9f0a62201dfeccd0eec9bb399f9edc6a01f1f0 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java @@ -161,7 +161,7 @@ public abstract class AbstractMinecart extends VehicleEntity { diff --git a/patches/server/0436-Add-missing-default-perms-for-commands.patch b/patches/server/0436-Add-missing-default-perms-for-commands.patch index 0ff16975d2..95a842cb3f 100644 --- a/patches/server/0436-Add-missing-default-perms-for-commands.patch +++ b/patches/server/0436-Add-missing-default-perms-for-commands.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add missing default perms for commands diff --git a/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java b/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java -index a9ea2e38e4673686c9994a58c94ad19e59fd423c..52649f82351ab4f675c3cc3cd6640956b0f76b91 100644 +index a9ea2e38e4673686c9994a58c94ad19e59fd423c..b3169c551b8410f5861f9db0543c785439ecba7c 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java +++ b/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java -@@ -24,13 +24,75 @@ public final class CommandPermissions { +@@ -24,13 +24,76 @@ public final class CommandPermissions { DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "stop", "Allows the user to stop the server", PermissionDefault.OP, commands); DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "list", "Allows the user to list all online players", PermissionDefault.OP, commands); DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "gamemode", "Allows the user to change the gamemode of another player", PermissionDefault.OP, commands); @@ -82,6 +82,7 @@ index a9ea2e38e4673686c9994a58c94ad19e59fd423c..52649f82351ab4f675c3cc3cd6640956 + DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "place", "Allows the user to place features and structures", PermissionDefault.OP, commands); + DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "return", "Allows the user to use the /return command", PermissionDefault.OP, commands); + DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "random", "Allows the user to generate a random number", PermissionDefault.OP, commands); ++ DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "rotate", "Allows the user to change the rotation of entities", PermissionDefault.OP, commands); + // Paper end DefaultPermissions.registerPermission("minecraft.admin.command_feedback", "Receive command broadcasts when sendCommandFeedback is true", PermissionDefault.OP, commands); diff --git a/patches/server/0439-Fix-CraftSound-backwards-compatibility.patch b/patches/server/0439-Fix-CraftSound-backwards-compatibility.patch index 9ca7f86992..604e24920d 100644 --- a/patches/server/0439-Fix-CraftSound-backwards-compatibility.patch +++ b/patches/server/0439-Fix-CraftSound-backwards-compatibility.patch @@ -5,12 +5,12 @@ Subject: [PATCH] Fix CraftSound backwards compatibility diff --git a/src/main/java/org/bukkit/craftbukkit/CraftSound.java b/src/main/java/org/bukkit/craftbukkit/CraftSound.java -index 260a738d5d61cf931b939502ea9c66451855b91e..dce716b6ac407d1e1ae07272ee5c8b14f891f5fa 100644 +index e53d6d33bfe9ed14fce0f5df0ab7648f18489c39..5b6e6902db19b078bb8598014a87c06f1267acc4 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftSound.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftSound.java -@@ -40,4 +40,10 @@ public class CraftSound { - throw new IllegalArgumentException("No Reference holder found for " + bukkit - + ", this can happen if a plugin creates its own sound effect with out properly registering it."); +@@ -106,4 +106,10 @@ public class CraftSound implements Sound, Handleable<SoundEvent> { + public int hashCode() { + return this.getKey().hashCode(); } + + // Paper start diff --git a/patches/server/0446-MC-4-Fix-item-position-desync.patch b/patches/server/0446-MC-4-Fix-item-position-desync.patch index f4858b59c3..dcfe9fecf4 100644 --- a/patches/server/0446-MC-4-Fix-item-position-desync.patch +++ b/patches/server/0446-MC-4-Fix-item-position-desync.patch @@ -28,10 +28,10 @@ index 488ebd443903af812913437f1ade3002093f2470..a043ac10834562d357ef0b5aded2e916 public Vec3 decode(long x, long y, long z) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 7feed6383fdc367796ccb943bd086814ec989e6d..7c07ffaabce7a3964114b0859ad0028d52c662cc 100644 +index 9ebce90de425989014466d2c5ce68fce505d1dcd..282863951033f7e036b0e58393651e1a22fada23 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4449,6 +4449,16 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4479,6 +4479,16 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return; } // Paper end - Block invalid positions and bounding box diff --git a/patches/server/0448-API-to-get-Material-from-Boats-and-Minecarts.patch b/patches/server/0448-API-to-get-Material-from-Boats-and-Minecarts.patch index 4194a22c19..d3e0aece3c 100644 --- a/patches/server/0448-API-to-get-Material-from-Boats-and-Minecarts.patch +++ b/patches/server/0448-API-to-get-Material-from-Boats-and-Minecarts.patch @@ -25,10 +25,10 @@ index c101d01b55472efc9fc2829b8c17db5377ed57ff..5d51a49228eaee94f91cd04843e27c79 public Status getStatus() { return CraftBoat.boatStatusFromNms(this.getHandle().status); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java -index ee010d53f8c671d17d68f3f43dca9978e23ac8ab..d35c1a10e58932b19c8053c5dacdc25fd7f22e8c 100644 +index c4db7c00c66e064993b8b2158f226d063eea798c..8192ccb01ed4efe9e987cab94952c172ed876581 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java -@@ -3,6 +3,7 @@ package org.bukkit.craftbukkit.entity; +@@ -4,6 +4,7 @@ import net.minecraft.server.level.ServerLevel; import net.minecraft.world.entity.vehicle.AbstractMinecart; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.state.BlockState; @@ -36,7 +36,7 @@ index ee010d53f8c671d17d68f3f43dca9978e23ac8ab..d35c1a10e58932b19c8053c5dacdc25f import org.bukkit.block.data.BlockData; import org.bukkit.craftbukkit.CraftServer; import org.bukkit.craftbukkit.block.data.CraftBlockData; -@@ -68,6 +69,24 @@ public abstract class CraftMinecart extends CraftVehicle implements Minecart { +@@ -69,6 +70,24 @@ public abstract class CraftMinecart extends CraftVehicle implements Minecart { this.getHandle().setDerailedVelocityMod(derailed); } diff --git a/patches/server/0467-Add-RegistryAccess-for-managing-Registries.patch b/patches/server/0467-Add-RegistryAccess-for-managing-Registries.patch index 81d859b6fb..878e2016df 100644 --- a/patches/server/0467-Add-RegistryAccess-for-managing-Registries.patch +++ b/patches/server/0467-Add-RegistryAccess-for-managing-Registries.patch @@ -12,10 +12,10 @@ public net.minecraft.server.RegistryLayer STATIC_ACCESS diff --git a/src/main/java/io/papermc/paper/registry/PaperRegistries.java b/src/main/java/io/papermc/paper/registry/PaperRegistries.java new file mode 100644 -index 0000000000000000000000000000000000000000..9657c35ffbcc12061b394b97c97224e699c99b4f +index 0000000000000000000000000000000000000000..39120c63ed25d45a4083523fbfe79d871f4d892e --- /dev/null +++ b/src/main/java/io/papermc/paper/registry/PaperRegistries.java -@@ -0,0 +1,152 @@ +@@ -0,0 +1,156 @@ +package io.papermc.paper.registry; + +import io.papermc.paper.adventure.PaperAdventure; @@ -28,19 +28,23 @@ index 0000000000000000000000000000000000000000..9657c35ffbcc12061b394b97c97224e6 +import net.minecraft.core.Registry; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; ++import org.bukkit.Art; +import org.bukkit.Fluid; +import org.bukkit.GameEvent; +import org.bukkit.JukeboxSong; +import org.bukkit.Keyed; +import org.bukkit.MusicInstrument; ++import org.bukkit.Sound; +import org.bukkit.attribute.Attribute; +import org.bukkit.block.Biome; +import org.bukkit.block.BlockType; +import org.bukkit.block.banner.PatternType; ++import org.bukkit.craftbukkit.CraftArt; +import org.bukkit.craftbukkit.CraftFluid; +import org.bukkit.craftbukkit.CraftGameEvent; +import org.bukkit.craftbukkit.CraftJukeboxSong; +import org.bukkit.craftbukkit.CraftMusicInstrument; ++import org.bukkit.craftbukkit.CraftSound; +import org.bukkit.craftbukkit.attribute.CraftAttribute; +import org.bukkit.craftbukkit.block.CraftBiome; +import org.bukkit.craftbukkit.block.CraftBlockType; @@ -106,6 +110,7 @@ index 0000000000000000000000000000000000000000..9657c35ffbcc12061b394b97c97224e6 + entry(Registries.MENU, RegistryKey.MENU, MenuType.class, CraftMenuType::new), + entry(Registries.ATTRIBUTE, RegistryKey.ATTRIBUTE, Attribute.class, CraftAttribute::new), + entry(Registries.FLUID, RegistryKey.FLUID, Fluid.class, CraftFluid::new), ++ entry(Registries.SOUND_EVENT, RegistryKey.SOUND_EVENT, Sound.class, CraftSound::new), + + // data-drivens + entry(Registries.BIOME, RegistryKey.BIOME, Biome.class, CraftBiome::new).delayed(), @@ -117,13 +122,12 @@ index 0000000000000000000000000000000000000000..9657c35ffbcc12061b394b97c97224e6 + entry(Registries.ENCHANTMENT, RegistryKey.ENCHANTMENT, Enchantment.class, CraftEnchantment::new).withSerializationUpdater(FieldRename.ENCHANTMENT_RENAME).delayed(), + entry(Registries.JUKEBOX_SONG, RegistryKey.JUKEBOX_SONG, JukeboxSong.class, CraftJukeboxSong::new).delayed(), + entry(Registries.BANNER_PATTERN, RegistryKey.BANNER_PATTERN, PatternType.class, CraftPatternType::new).delayed(), ++ entry(Registries.PAINTING_VARIANT, RegistryKey.PAINTING_VARIANT, Art.class, CraftArt::new).delayed(), + + // api-only -+ apiOnly(Registries.PAINTING_VARIANT, RegistryKey.PAINTING_VARIANT, () -> org.bukkit.Registry.ART), + apiOnly(Registries.ENTITY_TYPE, RegistryKey.ENTITY_TYPE, () -> org.bukkit.Registry.ENTITY_TYPE), + apiOnly(Registries.PARTICLE_TYPE, RegistryKey.PARTICLE_TYPE, () -> org.bukkit.Registry.PARTICLE_TYPE), + apiOnly(Registries.POTION, RegistryKey.POTION, () -> org.bukkit.Registry.POTION), -+ apiOnly(Registries.SOUND_EVENT, RegistryKey.SOUND_EVENT, () -> org.bukkit.Registry.SOUNDS), + apiOnly(Registries.MEMORY_MODULE_TYPE, RegistryKey.MEMORY_MODULE_TYPE, () -> (org.bukkit.Registry<MemoryKey<?>>) (org.bukkit.Registry) org.bukkit.Registry.MEMORY_MODULE_TYPE) + ); + final Map<RegistryKey<?>, RegistryEntry<?, ?>> byRegistryKey = new IdentityHashMap<>(REGISTRY_ENTRIES.size()); @@ -749,10 +753,10 @@ index 8e8d6214adbd21a221147f0fc0d91cd9c06a080c..6fddef967b6314ca0158f5bd4b889867 String string = Registries.elementsDirPath(type.registryKey()); SimpleJsonResourceReloadListener.scanDirectory(resourceManager, string, ops, type.codec(), map); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index d7e3371ebc08b5534c259ea45d89a969dfbe491a..16985dc1f54d64c44f96b045012612f16ba9ae8a 100644 +index 0d091c7b328fb70a82f5b5ded7dec61b7cd3d59a..249f0dcad04a35244da6dab837a461bb42aad00a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -125,90 +125,12 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { +@@ -127,96 +127,12 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { + ", this can happen if a plugin creates its own registry entry with out properly registering it."); } @@ -764,6 +768,9 @@ index d7e3371ebc08b5534c259ea45d89a969dfbe491a..16985dc1f54d64c44f96b045012612f1 - * @return the bukkit registry of the provided class - */ - public static <B extends Keyed> Registry<?> createRegistry(Class<? super B> bukkitClass, RegistryAccess registryHolder) { +- if (bukkitClass == Art.class) { +- return new CraftRegistry<>(Art.class, registryHolder.lookupOrThrow(Registries.PAINTING_VARIANT), CraftArt::new, FieldRename.NONE); +- } - if (bukkitClass == Attribute.class) { - return new CraftRegistry<>(Attribute.class, registryHolder.lookupOrThrow(Registries.ATTRIBUTE), CraftAttribute::new, FieldRename.ATTRIBUTE_RENAME); - } @@ -788,6 +795,9 @@ index d7e3371ebc08b5534c259ea45d89a969dfbe491a..16985dc1f54d64c44f96b045012612f1 - if (bukkitClass == PotionEffectType.class) { - return new CraftRegistry<>(PotionEffectType.class, registryHolder.lookupOrThrow(Registries.MOB_EFFECT), CraftPotionEffectType::new, FieldRename.NONE); - } +- if (bukkitClass == Sound.class) { +- return new CraftRegistry<>(Sound.class, registryHolder.lookupOrThrow(Registries.SOUND_EVENT), CraftSound::new, FieldRename.NONE); +- } - if (bukkitClass == Structure.class) { - return new CraftRegistry<>(Structure.class, registryHolder.lookupOrThrow(Registries.STRUCTURE), CraftStructure::new, FieldRename.NONE); - } @@ -846,7 +856,7 @@ index d7e3371ebc08b5534c259ea45d89a969dfbe491a..16985dc1f54d64c44f96b045012612f1 } if (bukkit instanceof Registry.SimpleRegistry<?> simple) { -@@ -226,23 +148,21 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { +@@ -234,23 +150,21 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { return bukkit.get(namespacedKey); } @@ -930,10 +940,10 @@ index 091e11934bddb180f0b2e51efb3921c62275d41d..12fe2f8d0dcb715545e071023490a321 // PatternType private static final FieldRenameData PATTERN_TYPE_DATA = FieldRenameData.Builder.newBuilder() diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index 9a6857f325d72c1b5ce403c3240e0b1a3f43bc38..e4b79d92a8c41eb37d989248425b1e5a963b476c 100644 +index 61d617d4abb9c9cf5c711459aa98c8b173597a9a..c9b789c2a904c2caff516ee9aeff4a6b368766f4 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -@@ -218,20 +218,10 @@ public class Commodore { +@@ -220,20 +220,10 @@ public class Commodore { public byte[] convert(byte[] b, final String pluginName, final ApiVersion pluginVersion, final Set<String> activeCompatibilities) { final boolean modern = pluginVersion.isNewerThanOrSameAs(ApiVersion.FLATTENING); @@ -954,7 +964,7 @@ index 9a6857f325d72c1b5ce403c3240e0b1a3f43bc38..e4b79d92a8c41eb37d989248425b1e5a visitor = io.papermc.paper.pluginremap.reflect.ReflectionRemapper.visitor(visitor); // Paper cr.accept(new ClassRemapper(new ClassVisitor(Opcodes.ASM9, visitor) { -@@ -298,15 +288,6 @@ public class Commodore { +@@ -300,15 +290,6 @@ public class Commodore { @Override public MethodVisitor visitMethod(int access, String name, String desc, String signature, String[] exceptions) { @@ -1259,7 +1269,7 @@ index bbd5dd5b27937ddc3d8c57f2b604331495b0f311..626c3033e36897846fe84a77d05e2e91 CraftRegistry.setMinecraftRegistry(RegistryHelper.getRegistry()); } diff --git a/src/test/java/org/bukkit/support/provider/RegistriesArgumentProvider.java b/src/test/java/org/bukkit/support/provider/RegistriesArgumentProvider.java -index c0e02198200c93e3d0ff2461d267e856db087532..bbabfad54c58f74cb5d70cbce4d140ad69a56abb 100644 +index bfec6280e8b753a29ad2d9eb88808beb79ec65ea..b717a5ffa567781b0687bbe238b62844214db284 100644 --- a/src/test/java/org/bukkit/support/provider/RegistriesArgumentProvider.java +++ b/src/test/java/org/bukkit/support/provider/RegistriesArgumentProvider.java @@ -1,6 +1,7 @@ @@ -1270,11 +1280,12 @@ index c0e02198200c93e3d0ff2461d267e856db087532..bbabfad54c58f74cb5d70cbce4d140ad import java.util.List; import java.util.stream.Stream; import net.minecraft.core.registries.Registries; -@@ -67,39 +68,38 @@ public class RegistriesArgumentProvider implements ArgumentsProvider { +@@ -73,41 +74,40 @@ public class RegistriesArgumentProvider implements ArgumentsProvider { private static final List<Arguments> DATA = Lists.newArrayList(); static { - // Order: Bukkit class, Minecraft Registry key, CraftBukkit class, Minecraft class +- register(Art.class, Registries.PAINTING_VARIANT, CraftArt.class, PaintingVariant.class); - register(Attribute.class, Registries.ATTRIBUTE, CraftAttribute.class, net.minecraft.world.entity.ai.attributes.Attribute.class); - register(Biome.class, Registries.BIOME, CraftBiome.class, net.minecraft.world.level.biome.Biome.class); - register(Enchantment.class, Registries.ENCHANTMENT, CraftEnchantment.class, net.minecraft.world.item.enchantment.Enchantment.class); @@ -1283,6 +1294,7 @@ index c0e02198200c93e3d0ff2461d267e856db087532..bbabfad54c58f74cb5d70cbce4d140ad - register(MusicInstrument.class, Registries.INSTRUMENT, CraftMusicInstrument.class, Instrument.class); - register(MenuType.class, Registries.MENU, CraftMenuType.class, net.minecraft.world.inventory.MenuType.class); - register(PotionEffectType.class, Registries.MOB_EFFECT, CraftPotionEffectType.class, MobEffect.class); +- register(Sound.class, Registries.SOUND_EVENT, CraftSound.class, SoundEvent.class); - register(Structure.class, Registries.STRUCTURE, CraftStructure.class, net.minecraft.world.level.levelgen.structure.Structure.class); - register(StructureType.class, Registries.STRUCTURE_TYPE, CraftStructureType.class, net.minecraft.world.level.levelgen.structure.StructureType.class); - register(Villager.Type.class, Registries.VILLAGER_TYPE, CraftVillager.CraftType.class, VillagerType.class); @@ -1300,6 +1312,7 @@ index c0e02198200c93e3d0ff2461d267e856db087532..bbabfad54c58f74cb5d70cbce4d140ad - register(PatternType.class, Registries.BANNER_PATTERN, CraftPatternType.class, BannerPattern.class); - + // Order: RegistryKey, Bukkit class, Minecraft Registry key, CraftBukkit class, Minecraft class ++ register(RegistryKey.PAINTING_VARIANT, Art.class, Registries.PAINTING_VARIANT, CraftArt.class, PaintingVariant.class); + register(RegistryKey.ATTRIBUTE, Attribute.class, Registries.ATTRIBUTE, CraftAttribute.class, net.minecraft.world.entity.ai.attributes.Attribute.class); + register(RegistryKey.BIOME, Biome.class, Registries.BIOME, CraftBiome.class, net.minecraft.world.level.biome.Biome.class); + register(RegistryKey.ENCHANTMENT, Enchantment.class, Registries.ENCHANTMENT, CraftEnchantment.class, net.minecraft.world.item.enchantment.Enchantment.class); @@ -1307,6 +1320,7 @@ index c0e02198200c93e3d0ff2461d267e856db087532..bbabfad54c58f74cb5d70cbce4d140ad + register(RegistryKey.GAME_EVENT, GameEvent.class, Registries.GAME_EVENT, CraftGameEvent.class, net.minecraft.world.level.gameevent.GameEvent.class); + register(RegistryKey.INSTRUMENT, MusicInstrument.class, Registries.INSTRUMENT, CraftMusicInstrument.class, Instrument.class); + register(RegistryKey.MOB_EFFECT, PotionEffectType.class, Registries.MOB_EFFECT, CraftPotionEffectType.class, MobEffect.class); ++ register(RegistryKey.SOUND_EVENT, Sound.class, Registries.SOUND_EVENT, CraftSound.class, SoundEvent.class); + register(RegistryKey.STRUCTURE, Structure.class, Registries.STRUCTURE, CraftStructure.class, net.minecraft.world.level.levelgen.structure.Structure.class); + register(RegistryKey.STRUCTURE_TYPE, StructureType.class, Registries.STRUCTURE_TYPE, CraftStructureType.class, net.minecraft.world.level.levelgen.structure.StructureType.class); + register(RegistryKey.VILLAGER_TYPE, Villager.Type.class, Registries.VILLAGER_TYPE, CraftVillager.CraftType.class, VillagerType.class); diff --git a/patches/server/0469-Collision-option-for-requiring-a-player-participant.patch b/patches/server/0469-Collision-option-for-requiring-a-player-participant.patch index f939c99a24..ebae0a4ce9 100644 --- a/patches/server/0469-Collision-option-for-requiring-a-player-participant.patch +++ b/patches/server/0469-Collision-option-for-requiring-a-player-participant.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Collision option for requiring a player participant diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 7c07ffaabce7a3964114b0859ad0028d52c662cc..0d10abc918e31bf8a529706b3350c80dec11b313 100644 +index 282863951033f7e036b0e58393651e1a22fada23..fa070c7243a4d800edc7bde2905773022788fa14 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2024,6 +2024,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2025,6 +2025,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public void push(Entity entity) { if (!this.isPassengerOfSameVehicle(entity)) { if (!entity.noPhysics && !this.noPhysics) { @@ -29,7 +29,7 @@ index a9661ab34bc98c19d525eb4b60b1f0d05d73241e..3590f4bc1af829cdb6e0cfdc8fa68571 if (entity.getBoundingBox().minY < this.getBoundingBox().maxY) { // CraftBukkit start diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java -index 50c0055d80735313c280821991bd2a76e427f082..ee7350e19a86ffa115e4bce6b186a2422951e89b 100644 +index fb9f0a62201dfeccd0eec9bb399f9edc6a01f1f0..9a864b4bacc5e180f36a6af2a0d63dc6d10ab0e5 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java @@ -562,6 +562,7 @@ public abstract class AbstractMinecart extends VehicleEntity { diff --git a/patches/server/0477-Expand-EntityUnleashEvent.patch b/patches/server/0477-Expand-EntityUnleashEvent.patch index 214eb8dd8c..efca64ffff 100644 --- a/patches/server/0477-Expand-EntityUnleashEvent.patch +++ b/patches/server/0477-Expand-EntityUnleashEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Expand EntityUnleashEvent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 0d10abc918e31bf8a529706b3350c80dec11b313..3479b7c89741ba93e49e7e51fe4b45bb14fbc419 100644 +index fa070c7243a4d800edc7bde2905773022788fa14..963c190e4c445131659cc9e2e72b0272324666e2 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2689,12 +2689,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2690,12 +2690,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (leashable.getLeashHolder() == player) { if (!this.level().isClientSide()) { // CraftBukkit start - fire PlayerUnleashEntityEvent @@ -26,7 +26,7 @@ index 0d10abc918e31bf8a529706b3350c80dec11b313..3479b7c89741ba93e49e7e51fe4b45bb this.gameEvent(GameEvent.ENTITY_INTERACT, player); } -@@ -3659,9 +3662,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3660,9 +3663,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess protected void removeAfterChangingDimensions() { this.setRemoved(Entity.RemovalReason.CHANGED_DIMENSION, null); // CraftBukkit - add Bukkit remove cause @@ -140,7 +140,7 @@ index 4b44830ef5d08887274ebb39e2780606fe3a76b4..d3a7953a3f42a0020342845e9107c699 flag1 = true; } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index a25e814978a2f19fa6fe74aaa5c529a524240d71..5064dd8c97f45f0c4e2d1402500e7cf67a263dfa 100644 +index 6d1d3451054af05e2381d70d71b99869f37c0901..697c69b60aa45b6a229f3bec77dc728e50a895ce 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1596,8 +1596,10 @@ public class CraftEventFactory { diff --git a/patches/server/0480-Add-EntityMoveEvent.patch b/patches/server/0480-Add-EntityMoveEvent.patch index 0b0cf39bac..33f2f9fd9d 100644 --- a/patches/server/0480-Add-EntityMoveEvent.patch +++ b/patches/server/0480-Add-EntityMoveEvent.patch @@ -29,10 +29,10 @@ index 0e984f3521b578779dd9d0142bce7db433b78f07..1c3f41d7ed7320342fe68c5ab6eb57db public LevelChunk getChunkIfLoaded(int x, int z) { return this.chunkSource.getChunk(x, z, false); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index d361e39ba50958e7bdaea0b95c37d13f48a89771..ce9369e730ba8862cd1e6e26f8825c35b16fcfb9 100644 +index 499e4fbb919ae3875aaa371d6ee206b8b144387b..a0b90b18e8f8970e722ebd0e78113f55ff54a55b 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3626,6 +3626,20 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3627,6 +3627,20 @@ public abstract class LivingEntity extends Entity implements Attackable { this.pushEntities(); gameprofilerfiller.pop(); diff --git a/patches/server/0503-Fix-PlayerItemConsumeEvent-cancelling-properly.patch b/patches/server/0503-Fix-PlayerItemConsumeEvent-cancelling-properly.patch index fddb117aea..62877c839b 100644 --- a/patches/server/0503-Fix-PlayerItemConsumeEvent-cancelling-properly.patch +++ b/patches/server/0503-Fix-PlayerItemConsumeEvent-cancelling-properly.patch @@ -9,10 +9,10 @@ till their item is switched. This patch clears the active item when the event is cancelled diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ce9369e730ba8862cd1e6e26f8825c35b16fcfb9..502a5455533113ef580cd23399dc1dcad530b0ae 100644 +index a0b90b18e8f8970e722ebd0e78113f55ff54a55b..6eda6f62e54eefddad51033e7d69c76ffc110a6d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4141,6 +4141,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4142,6 +4142,7 @@ public abstract class LivingEntity extends Entity implements Attackable { } entityPlayer.getBukkitEntity().updateInventory(); entityPlayer.getBukkitEntity().updateScaledHealth(); diff --git a/patches/server/0548-Line-Of-Sight-Changes.patch b/patches/server/0548-Line-Of-Sight-Changes.patch index 9675120b2a..1efc0eee46 100644 --- a/patches/server/0548-Line-Of-Sight-Changes.patch +++ b/patches/server/0548-Line-Of-Sight-Changes.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Line Of Sight Changes diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 502a5455533113ef580cd23399dc1dcad530b0ae..83557da78340e3327f8c9a3050662413ecc3fc17 100644 +index 6eda6f62e54eefddad51033e7d69c76ffc110a6d..5415cade10ab36709f722cabc20ea3f1b9c285d9 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3905,7 +3905,8 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3906,7 +3906,8 @@ public abstract class LivingEntity extends Entity implements Attackable { Vec3 vec3d = new Vec3(this.getX(), this.getEyeY(), this.getZ()); Vec3 vec3d1 = new Vec3(entity.getX(), entityY.getAsDouble(), entity.getZ()); diff --git a/patches/server/0571-Optimize-indirect-passenger-iteration.patch b/patches/server/0571-Optimize-indirect-passenger-iteration.patch index dcb94ae602..2db947b001 100644 --- a/patches/server/0571-Optimize-indirect-passenger-iteration.patch +++ b/patches/server/0571-Optimize-indirect-passenger-iteration.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Optimize indirect passenger iteration diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3479b7c89741ba93e49e7e51fe4b45bb14fbc419..fe9cdd104d6203233a90068b55e0876be4964afe 100644 +index 963c190e4c445131659cc9e2e72b0272324666e2..5ddab7fde91ab1089c9ea35f441a21dfd5df2ef8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4087,20 +4087,34 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4088,20 +4088,34 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } private Stream<Entity> getIndirectPassengersStream() { @@ -43,7 +43,7 @@ index 3479b7c89741ba93e49e7e51fe4b45bb14fbc419..fe9cdd104d6203233a90068b55e0876b return () -> { return this.getIndirectPassengersStream().iterator(); }; -@@ -4113,6 +4127,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4114,6 +4128,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public boolean hasExactlyOnePlayerPassenger() { diff --git a/patches/server/0578-Add-back-EntityPortalExitEvent.patch b/patches/server/0578-Add-back-EntityPortalExitEvent.patch index 5e3f9b5ffd..9eb82702cb 100644 --- a/patches/server/0578-Add-back-EntityPortalExitEvent.patch +++ b/patches/server/0578-Add-back-EntityPortalExitEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add back EntityPortalExitEvent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index fe9cdd104d6203233a90068b55e0876be4964afe..88d3b1997bba632c5746d295bb39095f5d328369 100644 +index 5ddab7fde91ab1089c9ea35f441a21dfd5df2ef8..3d9bf236eb1535cc2547f1421ee2a09b2c44fc52 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3491,6 +3491,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3492,6 +3492,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (!this.isRemoved()) { // CraftBukkit start PositionMoveRotation absolutePosition = PositionMoveRotation.calculateAbsolute(PositionMoveRotation.of(this), PositionMoveRotation.of(teleportTarget), teleportTarget.relatives()); @@ -16,7 +16,7 @@ index fe9cdd104d6203233a90068b55e0876be4964afe..88d3b1997bba632c5746d295bb39095f Location to = CraftLocation.toBukkit(absolutePosition.position(), teleportTarget.newLevel().getWorld(), absolutePosition.yRot(), absolutePosition.xRot()); // Paper start - gateway-specific teleport event final EntityTeleportEvent teleEvent; -@@ -3507,7 +3508,29 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3508,7 +3509,29 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (!to.equals(teleEvent.getTo())) { to = teleEvent.getTo(); teleportTarget = new TeleportTransition(((CraftWorld) to.getWorld()).getHandle(), CraftLocation.toVec3D(to), Vec3.ZERO, to.getYaw(), to.getPitch(), teleportTarget.missingRespawnBlock(), teleportTarget.asPassenger(), Set.of(), teleportTarget.postTeleportTransition(), teleportTarget.cause()); diff --git a/patches/server/0582-Add-more-advancement-API.patch b/patches/server/0582-Add-more-advancement-API.patch index ac526b9045..1875c743c1 100644 --- a/patches/server/0582-Add-more-advancement-API.patch +++ b/patches/server/0582-Add-more-advancement-API.patch @@ -164,10 +164,10 @@ index 8ca86852319d7463f60832bc98b825b0b4325995..62ada73302c6b3ce3fb2dcc8c31a1d9c private final DisplayInfo handle; diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index e4b79d92a8c41eb37d989248425b1e5a963b476c..1f25fa2b2ce8fae5bce29232cbb51966b86dae85 100644 +index c9b789c2a904c2caff516ee9aeff4a6b368766f4..52a507ff2770bd46494e805956b4569f0d4d21ee 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -@@ -456,6 +456,11 @@ public class Commodore { +@@ -458,6 +458,11 @@ public class Commodore { super.visitMethodInsn(opcode, owner, name, "()Lcom/destroystokyo/paper/profile/PlayerProfile;", itf); return; } diff --git a/patches/server/0583-Add-ItemFactory-getSpawnEgg-API.patch b/patches/server/0583-Add-ItemFactory-getSpawnEgg-API.patch index 52f7274600..ec4a572edf 100644 --- a/patches/server/0583-Add-ItemFactory-getSpawnEgg-API.patch +++ b/patches/server/0583-Add-ItemFactory-getSpawnEgg-API.patch @@ -37,10 +37,10 @@ index cab7a3d21699605cb7fc480830d7529f70e69e88..ad86ee4372e55c82968fd4fc6a65deba + // Paper end - old getSpawnEgg API } diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index 1f25fa2b2ce8fae5bce29232cbb51966b86dae85..f10e7a847e9f57d2a987b118215c0ceab251a5b0 100644 +index 52a507ff2770bd46494e805956b4569f0d4d21ee..5a7aa491e0846ca8133bc4bb6e74b93cff85fb17 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -@@ -463,6 +463,15 @@ public class Commodore { +@@ -465,6 +465,15 @@ public class Commodore { } // Paper end diff --git a/patches/server/0589-Add-Raw-Byte-Entity-Serialization.patch b/patches/server/0589-Add-Raw-Byte-Entity-Serialization.patch index 404023dde8..bad6f65ffd 100644 --- a/patches/server/0589-Add-Raw-Byte-Entity-Serialization.patch +++ b/patches/server/0589-Add-Raw-Byte-Entity-Serialization.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Add Raw Byte Entity Serialization public net.minecraft.world.entity.Entity setLevel(Lnet/minecraft/world/level/Level;)V diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 88d3b1997bba632c5746d295bb39095f5d328369..900765b0129e8bf485aca93af6f523c9948e288b 100644 +index 3d9bf236eb1535cc2547f1421ee2a09b2c44fc52..9755d8a40a5a5b4863ce057f576f393773cee3e4 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2260,6 +2260,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2261,6 +2261,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } diff --git a/patches/server/0590-Vanilla-command-permission-fixes.patch b/patches/server/0590-Vanilla-command-permission-fixes.patch index 4c4787c7fc..f69e58a368 100644 --- a/patches/server/0590-Vanilla-command-permission-fixes.patch +++ b/patches/server/0590-Vanilla-command-permission-fixes.patch @@ -51,10 +51,10 @@ index 7acd7f60327106d55e8f48247650bc0064dd1b58..bee79fab7f8195e14f6bd22d9cd59bfc } diff --git a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -index 87c93ee9bbbfff785b7b6a1f0c4b932e36362943..4e81c26fdbd089961b2577168c716bf29d504d40 100644 +index 71bc74071e7bbce1d6aa5b0f0fb244c93dae168e..732655bf8dd279167f799e01b1516b4dd5fa7464 100644 --- a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java +++ b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -@@ -86,7 +86,21 @@ public final class VanillaCommandWrapper extends BukkitCommand { +@@ -91,7 +91,21 @@ public final class VanillaCommandWrapper extends BukkitCommand { } public static String getPermission(CommandNode<CommandSourceStack> vanillaCommand) { diff --git a/patches/server/0615-Update-head-rotation-in-missing-places.patch b/patches/server/0615-Update-head-rotation-in-missing-places.patch index 51b3e36d06..201c4c942d 100644 --- a/patches/server/0615-Update-head-rotation-in-missing-places.patch +++ b/patches/server/0615-Update-head-rotation-in-missing-places.patch @@ -8,10 +8,10 @@ This is because bukkit uses a separate head rotation field for yaw. This issue only applies to players. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 900765b0129e8bf485aca93af6f523c9948e288b..3903bbc53d541e66d9362eea27029ed320a74772 100644 +index 9755d8a40a5a5b4863ce057f576f393773cee3e4..2ab2cfddae9f1bb3a1ca3c3bfd0916a14409b205 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1914,6 +1914,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1915,6 +1915,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.setXRot(Mth.clamp(pitch, -90.0F, 90.0F) % 360.0F); this.yRotO = this.getYRot(); this.xRotO = this.getXRot(); @@ -19,7 +19,7 @@ index 900765b0129e8bf485aca93af6f523c9948e288b..3903bbc53d541e66d9362eea27029ed3 } public void absMoveTo(double x, double y, double z) { -@@ -1956,6 +1957,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1957,6 +1958,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.setXRot(pitch); this.setOldPosAndRot(); this.reapplyPosition(); diff --git a/patches/server/0621-don-t-attempt-to-teleport-dead-entities.patch b/patches/server/0621-don-t-attempt-to-teleport-dead-entities.patch index 92fa7ea854..08f5268772 100644 --- a/patches/server/0621-don-t-attempt-to-teleport-dead-entities.patch +++ b/patches/server/0621-don-t-attempt-to-teleport-dead-entities.patch @@ -5,10 +5,10 @@ Subject: [PATCH] don't attempt to teleport dead entities diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3903bbc53d541e66d9362eea27029ed320a74772..d6bbefe3d3b21c6fc9be3cfe3ba304226bab6883 100644 +index 2ab2cfddae9f1bb3a1ca3c3bfd0916a14409b205..d05fd90a000c723e9c3bef0fde1b59aea2367f7f 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -713,7 +713,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -714,7 +714,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // CraftBukkit start public void postTick() { // No clean way to break out of ticking once the entity has been copied to a new world, so instead we move the portalling later in the tick cycle diff --git a/patches/server/0622-Prevent-excessive-velocity-through-repeated-crits.patch b/patches/server/0622-Prevent-excessive-velocity-through-repeated-crits.patch index d138c932cb..51b492f145 100644 --- a/patches/server/0622-Prevent-excessive-velocity-through-repeated-crits.patch +++ b/patches/server/0622-Prevent-excessive-velocity-through-repeated-crits.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Prevent excessive velocity through repeated crits diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 4f13d792a2cc504f174766d4c0d924d9ca51df9c..2ae65d0303a01536bae6ef8f900b23b94d72dc22 100644 +index 924db96764ef1d0b9596be01f344065f8e1a721e..f06fe310e8dd950fa68ed3b7a7ba5e43a23b9316 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2863,17 +2863,29 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2864,17 +2864,29 @@ public abstract class LivingEntity extends Entity implements Attackable { return this.hasEffect(MobEffects.JUMP) ? 0.1F * ((float) this.getEffect(MobEffects.JUMP).getAmplifier() + 1.0F) : 0.0F; } diff --git a/patches/server/0631-Forward-CraftEntity-in-teleport-command.patch b/patches/server/0631-Forward-CraftEntity-in-teleport-command.patch index 9d0cbe0595..d7c7c656a0 100644 --- a/patches/server/0631-Forward-CraftEntity-in-teleport-command.patch +++ b/patches/server/0631-Forward-CraftEntity-in-teleport-command.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Forward CraftEntity in teleport command diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index d6bbefe3d3b21c6fc9be3cfe3ba304226bab6883..06d7aed2539a0f38fabe5b10c91d8da10c43605f 100644 +index d05fd90a000c723e9c3bef0fde1b59aea2367f7f..0eda06b3919e0cc4ddaec4b644c17011a01ccdeb 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3480,6 +3480,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3481,6 +3481,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void restoreFrom(Entity original) { @@ -22,7 +22,7 @@ index d6bbefe3d3b21c6fc9be3cfe3ba304226bab6883..06d7aed2539a0f38fabe5b10c91d8da1 CompoundTag nbttagcompound = original.saveWithoutId(new CompoundTag()); nbttagcompound.remove("Dimension"); -@@ -3617,8 +3624,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3618,8 +3625,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess entity.restoreFrom(this); this.removeAfterChangingDimensions(); // CraftBukkit start - Forward the CraftEntity to the new entity diff --git a/patches/server/0650-Freeze-Tick-Lock-API.patch b/patches/server/0650-Freeze-Tick-Lock-API.patch index db82c2c3bc..937e4ae987 100644 --- a/patches/server/0650-Freeze-Tick-Lock-API.patch +++ b/patches/server/0650-Freeze-Tick-Lock-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Freeze Tick Lock API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 06d7aed2539a0f38fabe5b10c91d8da10c43605f..4b0b768a4563281ec4ef1a16a3a21c24a1272849 100644 +index 0eda06b3919e0cc4ddaec4b644c17011a01ccdeb..a390e1791b4fb3eae5555fc9b760588e410be900 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -414,6 +414,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -415,6 +415,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess private org.bukkit.util.Vector origin; @javax.annotation.Nullable private UUID originWorld; @@ -16,7 +16,7 @@ index 06d7aed2539a0f38fabe5b10c91d8da10c43605f..4b0b768a4563281ec4ef1a16a3a21c24 public void setOrigin(@javax.annotation.Nonnull Location location) { this.origin = location.toVector(); -@@ -759,7 +760,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -760,7 +761,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.setRemainingFireTicks(this.remainingFireTicks - 1); } @@ -25,7 +25,7 @@ index 06d7aed2539a0f38fabe5b10c91d8da10c43605f..4b0b768a4563281ec4ef1a16a3a21c24 this.setTicksFrozen(0); this.level().levelEvent((Player) null, 1009, this.blockPosition, 1); } -@@ -2428,6 +2429,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2429,6 +2430,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (fromNetherPortal) { nbttagcompound.putBoolean("Paper.FromNetherPortal", true); } @@ -35,7 +35,7 @@ index 06d7aed2539a0f38fabe5b10c91d8da10c43605f..4b0b768a4563281ec4ef1a16a3a21c24 // Paper end return nbttagcompound; } catch (Throwable throwable) { -@@ -2573,6 +2577,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2574,6 +2578,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (spawnReason == null) { spawnReason = org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.DEFAULT; } @@ -46,10 +46,10 @@ index 06d7aed2539a0f38fabe5b10c91d8da10c43605f..4b0b768a4563281ec4ef1a16a3a21c24 } catch (Throwable throwable) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 2ae65d0303a01536bae6ef8f900b23b94d72dc22..f0a3a1342610966f954d8f25fd38281b2af80f06 100644 +index f06fe310e8dd950fa68ed3b7a7ba5e43a23b9316..36277d10822a4fd19b6159a90a455c237b5b177f 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3609,7 +3609,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3610,7 +3610,7 @@ public abstract class LivingEntity extends Entity implements Attackable { this.calculateEntityAnimation(this instanceof FlyingAnimal); gameprofilerfiller.pop(); gameprofilerfiller.push("freezing"); diff --git a/patches/server/0653-API-for-creating-command-sender-which-forwards-feedb.patch b/patches/server/0653-API-for-creating-command-sender-which-forwards-feedb.patch index 76a09348af..981105e5be 100644 --- a/patches/server/0653-API-for-creating-command-sender-which-forwards-feedb.patch +++ b/patches/server/0653-API-for-creating-command-sender-which-forwards-feedb.patch @@ -122,7 +122,7 @@ index 0000000000000000000000000000000000000000..e3a5f1ec376319bdfda87fa27ae217bf + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 6d32505266fef119289bcf6761c1948368238eb9..9de7978c7383f8364feba82e9cd3efbfcce00e3c 100644 +index 23b2233f7435f03902e640152cc6fe1501fb3820..c89aee30e4a4f4eec48e23b04e0558e17d95587c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2165,6 +2165,13 @@ public final class CraftServer implements Server { @@ -153,10 +153,10 @@ index 7f22950ae61436e91a59cd29a345809c42bbe739..1e3091687735b461d3b6a313ab876112 protected ServerCommandSender() { diff --git a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -index 4e81c26fdbd089961b2577168c716bf29d504d40..a35e2d2f53e8308d51e5a07b34c56d05a707bc14 100644 +index 732655bf8dd279167f799e01b1516b4dd5fa7464..4d4a1ac9d75908bbd105a1e5756d2c0932b2d238 100644 --- a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java +++ b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -@@ -81,6 +81,11 @@ public final class VanillaCommandWrapper extends BukkitCommand { +@@ -86,6 +86,11 @@ public final class VanillaCommandWrapper extends BukkitCommand { if (sender instanceof ProxiedCommandSender) { return ((ProxiedNativeCommandSender) sender).getHandle(); } diff --git a/patches/server/0680-Ensure-entity-passenger-world-matches-ridden-entity.patch b/patches/server/0680-Ensure-entity-passenger-world-matches-ridden-entity.patch index e85a7e4019..60380e62f3 100644 --- a/patches/server/0680-Ensure-entity-passenger-world-matches-ridden-entity.patch +++ b/patches/server/0680-Ensure-entity-passenger-world-matches-ridden-entity.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Ensure entity passenger world matches ridden entity Bad plugins doing this would cause some obvious problems... diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 4b0b768a4563281ec4ef1a16a3a21c24a1272849..dcd6cb204d5d19da17664e446da7f3edef104b80 100644 +index a390e1791b4fb3eae5555fc9b760588e410be900..612abe47627f0e7c69aa8bfaeee1de4fda528a57 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2802,7 +2802,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2803,7 +2803,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public boolean startRiding(Entity entity, boolean force) { diff --git a/patches/server/0693-Add-PlayerStopUsingItemEvent.patch b/patches/server/0693-Add-PlayerStopUsingItemEvent.patch index cbf893f693..b6d477aded 100644 --- a/patches/server/0693-Add-PlayerStopUsingItemEvent.patch +++ b/patches/server/0693-Add-PlayerStopUsingItemEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerStopUsingItemEvent diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index f0a3a1342610966f954d8f25fd38281b2af80f06..94cc2bc2f5e6ed32173f675c3b27ab602dbcd7f8 100644 +index 36277d10822a4fd19b6159a90a455c237b5b177f..aef73b8ebc6b7784dea32a70e972fa9adb7d303e 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4202,6 +4202,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4203,6 +4203,7 @@ public abstract class LivingEntity extends Entity implements Attackable { public void releaseUsingItem() { if (!this.useItem.isEmpty()) { diff --git a/patches/server/0701-Prevent-entity-loading-causing-async-lookups.patch b/patches/server/0701-Prevent-entity-loading-causing-async-lookups.patch index 9330384446..077b25253a 100644 --- a/patches/server/0701-Prevent-entity-loading-causing-async-lookups.patch +++ b/patches/server/0701-Prevent-entity-loading-causing-async-lookups.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Prevent entity loading causing async lookups diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index dcd6cb204d5d19da17664e446da7f3edef104b80..736b8bb59631a4e6f8639d84715a7d8cf9dbb775 100644 +index 612abe47627f0e7c69aa8bfaeee1de4fda528a57..828535741f9e39693fe9055ae1f5af2258668ae3 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -724,6 +724,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -725,6 +725,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess ProfilerFiller gameprofilerfiller = Profiler.get(); gameprofilerfiller.push("entityBaseTick"); diff --git a/patches/server/0713-Add-various-missing-EntityDropItemEvent-calls.patch b/patches/server/0713-Add-various-missing-EntityDropItemEvent-calls.patch index 9b07c23cf8..965a338282 100644 --- a/patches/server/0713-Add-various-missing-EntityDropItemEvent-calls.patch +++ b/patches/server/0713-Add-various-missing-EntityDropItemEvent-calls.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add various missing EntityDropItemEvent calls diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 736b8bb59631a4e6f8639d84715a7d8cf9dbb775..0de6c90c195439564810036c90f31e8296538666 100644 +index 828535741f9e39693fe9055ae1f5af2258668ae3..7d4817cf9d2783f7be5882748323391a8cae5673 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2672,6 +2672,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2673,6 +2673,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess stack.setCount(0); // Paper - destroy this item - if this ever leaks due to game bugs, ensure it doesn't dupe entityitem.setDefaultPickUpDelay(); diff --git a/patches/server/0728-Stop-large-look-changes-from-crashing-the-server.patch b/patches/server/0728-Stop-large-look-changes-from-crashing-the-server.patch index 0b36d67e7b..cbf9f9f9f8 100644 --- a/patches/server/0728-Stop-large-look-changes-from-crashing-the-server.patch +++ b/patches/server/0728-Stop-large-look-changes-from-crashing-the-server.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Stop large look changes from crashing the server Co-authored-by: Jaren Knodel <[email protected]> diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 94cc2bc2f5e6ed32173f675c3b27ab602dbcd7f8..079e6224c56128c0a0fc0643eeec49f2475937ea 100644 +index aef73b8ebc6b7784dea32a70e972fa9adb7d303e..5986af338ffadbfae32783178dfe0b145c875b73 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3270,37 +3270,15 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3271,37 +3271,15 @@ public abstract class LivingEntity extends Entity implements Attackable { gameprofilerfiller.pop(); gameprofilerfiller.push("rangeChecks"); diff --git a/patches/server/0735-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch b/patches/server/0735-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch index 62022124a8..3ce15af172 100644 --- a/patches/server/0735-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch +++ b/patches/server/0735-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Mitigate effects of WorldCreator#keepSpawnLoaded ret type TODO: Remove in 1.21? diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index f10e7a847e9f57d2a987b118215c0ceab251a5b0..015a2cf3e969e938158f27a04e172c837068437d 100644 +index 5a7aa491e0846ca8133bc4bb6e74b93cff85fb17..2a2e37a7c67cac657712fc20746a892097a3c4be 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -@@ -461,6 +461,12 @@ public class Commodore { +@@ -463,6 +463,12 @@ public class Commodore { super.visitMethodInsn(Opcodes.INVOKEVIRTUAL, runtimeCbPkgPrefix() + "advancement/CraftAdvancement", "getDisplay0", desc, false); return; } diff --git a/patches/server/0754-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch b/patches/server/0754-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch index 1c5db8b76d..4ff7d42404 100644 --- a/patches/server/0754-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch +++ b/patches/server/0754-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Fix EntityCombustEvent cancellation cant fully prevent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 0de6c90c195439564810036c90f31e8296538666..8b2b0cf8318f06f0fef59908ece650fb54b6a6b3 100644 +index 7d4817cf9d2783f7be5882748323391a8cae5673..9b5af1041410be058afde31d2630d8dcb3b25179 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3320,6 +3320,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3321,6 +3321,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess pluginManager.callEvent(entityCombustEvent); if (!entityCombustEvent.isCancelled()) { this.igniteForSeconds(entityCombustEvent.getDuration(), false); diff --git a/patches/server/0760-check-global-player-list-where-appropriate.patch b/patches/server/0760-check-global-player-list-where-appropriate.patch index 96d945ad74..a4e7a411b2 100644 --- a/patches/server/0760-check-global-player-list-where-appropriate.patch +++ b/patches/server/0760-check-global-player-list-where-appropriate.patch @@ -24,10 +24,10 @@ index 45e61a08152517a61260e662764d8bb0335537e3..b81d814619e4175f42aee397811b07ca + // Paper end - check global player list where appropriate } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 079e6224c56128c0a0fc0643eeec49f2475937ea..0e2b5e1dbdf671da0a4edfa77f7fb759732674cb 100644 +index 5986af338ffadbfae32783178dfe0b145c875b73..d121b28c8a79b6f5b690c53ae4fef7cd304afdaa 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3865,7 +3865,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3866,7 +3866,7 @@ public abstract class LivingEntity extends Entity implements Attackable { } public void onItemPickup(ItemEntity item) { diff --git a/patches/server/0763-Friction-API.patch b/patches/server/0763-Friction-API.patch index 0262ffef84..b2946a72b1 100644 --- a/patches/server/0763-Friction-API.patch +++ b/patches/server/0763-Friction-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Friction API diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 0e2b5e1dbdf671da0a4edfa77f7fb759732674cb..076c7828fdfa53c7453406beb937700e12b137d2 100644 +index d121b28c8a79b6f5b690c53ae4fef7cd304afdaa..29c3db84b55e82e25d60c99c87f3472b30fc9239 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -296,6 +296,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -110,12 +110,12 @@ index d555fd0b200c012f30ed0c0ec09a37b25a737b76..7a6d51020d9c6be33b4c34c0d6085595 this.discard(null); // CraftBukkit - add Bukkit remove cause } diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java -index d8fcd6d1edec1f31a861fab4b86cbeb15ddc799d..d277f56fef882313d6d21f636fafae2f26630ad7 100644 +index 1fdf2179eb768575fa49c019fb6d81f466892f98..ce91809d66007def728a127a0a9d33f6235cc94d 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java @@ -93,6 +93,7 @@ public abstract class AbstractMinecart extends VehicleEntity { private double flyingZ = 0.95; - public double maxSpeed = 0.4D; + public Double maxSpeed; // CraftBukkit end + public net.kyori.adventure.util.TriState frictionState = net.kyori.adventure.util.TriState.NOT_SET; // Paper - Friction API @@ -152,10 +152,10 @@ index d8fcd6d1edec1f31a861fab4b86cbeb15ddc799d..d277f56fef882313d6d21f636fafae2f @Override diff --git a/src/main/java/net/minecraft/world/entity/vehicle/NewMinecartBehavior.java b/src/main/java/net/minecraft/world/entity/vehicle/NewMinecartBehavior.java -index 00b0004940339dc105fb95f813bd35b16f7a9fb4..a8718ee94cd6b9a20bd1e9a49d58d39e6f3f2a7a 100644 +index 60b8d8c1ccfe7f9d1a327d1a361493e97ca9ad4c..f43439b31a14b9db4744512465d81134ebe5b3e1 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/NewMinecartBehavior.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/NewMinecartBehavior.java -@@ -548,6 +548,7 @@ public class NewMinecartBehavior extends MinecartBehavior { +@@ -554,6 +554,7 @@ public class NewMinecartBehavior extends MinecartBehavior { @Override public double getSlowdownFactor() { @@ -164,10 +164,10 @@ index 00b0004940339dc105fb95f813bd35b16f7a9fb4..a8718ee94cd6b9a20bd1e9a49d58d39e } diff --git a/src/main/java/net/minecraft/world/entity/vehicle/OldMinecartBehavior.java b/src/main/java/net/minecraft/world/entity/vehicle/OldMinecartBehavior.java -index cf871c174091139c8ad1affb84f98fcd74b60dee..23cbafcc12f6e5f5755215a72879a6cab306ad18 100644 +index 62ae79808aba4112ea845311080bb496174a68d2..04a622f52353ebcc21f41c233f5a0fd67690cf4a 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/OldMinecartBehavior.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/OldMinecartBehavior.java -@@ -522,6 +522,7 @@ public class OldMinecartBehavior extends MinecartBehavior { +@@ -528,6 +528,7 @@ public class OldMinecartBehavior extends MinecartBehavior { @Override public double getSlowdownFactor() { @@ -221,10 +221,10 @@ index 1ceaa081231a617bd87331b308c24d9c7a8dcf2b..2fd4a3068d86a37cc18c9203448823c5 + // Paper end - friction API } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java -index d35c1a10e58932b19c8053c5dacdc25fd7f22e8c..ab9d06a9a4951a5b8aa14d47818a3850433e92b8 100644 +index 8192ccb01ed4efe9e987cab94952c172ed876581..5791f9936532899b337b149a109781fba0819657 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java -@@ -137,4 +137,18 @@ public abstract class CraftMinecart extends CraftVehicle implements Minecart { +@@ -138,4 +138,18 @@ public abstract class CraftMinecart extends CraftVehicle implements Minecart { public int getDisplayBlockOffset() { return this.getHandle().getDisplayOffset(); } diff --git a/patches/server/0767-Player-Entity-Tracking-Events.patch b/patches/server/0767-Player-Entity-Tracking-Events.patch index fc9f07d3da..ca45b05945 100644 --- a/patches/server/0767-Player-Entity-Tracking-Events.patch +++ b/patches/server/0767-Player-Entity-Tracking-Events.patch @@ -21,10 +21,10 @@ index 51a6735b35e73175680e61c2d67d4adbedf305c9..8b5d11aceb77135c917c3581f4db792e } else if (this.seenBy.remove(player.connection)) { this.serverEntity.removePairing(player); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 8b2b0cf8318f06f0fef59908ece650fb54b6a6b3..429cdb83252b417c810d529125fc7343dca7990d 100644 +index 9b5af1041410be058afde31d2630d8dcb3b25179..a361480801d113b9619f7cd93b0da2332ca089dd 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4071,7 +4071,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4072,7 +4072,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public void startSeenByPlayer(ServerPlayer player) {} diff --git a/patches/server/0769-fix-Instruments.patch b/patches/server/0769-fix-Instruments.patch index b04e954595..a3ba7ec083 100644 --- a/patches/server/0769-fix-Instruments.patch +++ b/patches/server/0769-fix-Instruments.patch @@ -55,3 +55,29 @@ index 0000000000000000000000000000000000000000..cd718ed01ba5d448cdf0a2b6a39dc7ef + assertEquals(nms.getSoundEvent(), CraftSound.bukkitToMinecraftHolder(bukkit.getSound())); + } +} +diff --git a/src/test/java/org/bukkit/InstrumentTest.java b/src/test/java/org/bukkit/InstrumentTest.java +new file mode 100644 +index 0000000000000000000000000000000000000000..5da6b5c996c9a4077f309e923731e3f148e91c19 +--- /dev/null ++++ b/src/test/java/org/bukkit/InstrumentTest.java +@@ -0,0 +1,20 @@ ++package org.bukkit; ++ ++import org.bukkit.support.environment.AllFeatures; ++import org.junit.jupiter.api.Test; ++ ++import static org.bukkit.support.MatcherAssert.assertThat; ++import static org.hamcrest.CoreMatchers.is; ++ ++@AllFeatures ++public class InstrumentTest { // Paper - moved to internals as this test now access the sound registry. ++ ++ @Test ++ public void getByType() { ++ for (Instrument instrument : Instrument.values()) { ++ // Paper - byte magic values are still used ++ ++ assertThat(Instrument.getByType(instrument.getType()), is(instrument)); ++ } ++ } ++} diff --git a/patches/server/0774-Improve-PortalEvents.patch b/patches/server/0774-Improve-PortalEvents.patch index af78ad7bc0..1bced68acf 100644 --- a/patches/server/0774-Improve-PortalEvents.patch +++ b/patches/server/0774-Improve-PortalEvents.patch @@ -18,10 +18,10 @@ index 25b1e8bec23465f0e9a17f156bdff7fe716db84c..f05a9fd321a4af28e9771bbf39d73f80 // Paper start - gateway-specific teleport event if (this.portalProcess != null && this.portalProcess.isSamePortal(((net.minecraft.world.level.block.EndGatewayBlock) net.minecraft.world.level.block.Blocks.END_GATEWAY)) && this.serverLevel().getBlockEntity(this.portalProcess.getEntryPosition()) instanceof net.minecraft.world.level.block.entity.TheEndGatewayBlockEntity theEndGatewayBlockEntity) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 429cdb83252b417c810d529125fc7343dca7990d..411ffaf842841709eaef48776e2c6ce4f524af05 100644 +index a361480801d113b9619f7cd93b0da2332ca089dd..4d9680748a00df783e9611a90c31e2665ce3d736 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3742,7 +3742,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3743,7 +3743,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess org.bukkit.entity.Entity bukkitEntity = entity.getBukkitEntity(); Location enter = bukkitEntity.getLocation(); diff --git a/patches/server/0779-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch b/patches/server/0779-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch index 3af6c787db..18b9184eff 100644 --- a/patches/server/0779-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch +++ b/patches/server/0779-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Expose pre-collision moving velocity to diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 411ffaf842841709eaef48776e2c6ce4f524af05..5340d6d911a7e586468f2b7e2e74b3386d1dc72d 100644 +index 4d9680748a00df783e9611a90c31e2665ce3d736..798fd11e76326ace74035cf782be9f4218fe5edc 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -968,6 +968,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -969,6 +969,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void move(MoverType type, Vec3 movement) { @@ -17,7 +17,7 @@ index 411ffaf842841709eaef48776e2c6ce4f524af05..5340d6d911a7e586468f2b7e2e74b338 if (this.noPhysics) { this.setPos(this.getX() + movement.x, this.getY() + movement.y, this.getZ() + movement.z); } else { -@@ -1059,7 +1060,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1060,7 +1061,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } if (!bl.getType().isAir()) { diff --git a/patches/server/0792-Fix-advancement-triggers-for-entity-damage.patch b/patches/server/0792-Fix-advancement-triggers-for-entity-damage.patch index 7a76ace176..1f72ba6104 100644 --- a/patches/server/0792-Fix-advancement-triggers-for-entity-damage.patch +++ b/patches/server/0792-Fix-advancement-triggers-for-entity-damage.patch @@ -23,10 +23,10 @@ index 821bb93e1b055ba38fafe3b7079d79aa062ebe8a..221d73676fe2fd240a47cf312c1179e0 return !this.getResponse(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 879ac6ec0b429ddb89ede2d51c8ccee9090fdc49..2a587683463fb0a0770ab54125868e82c0694ca6 100644 +index 0f20301c8194dcf9f3b42429437552ca0a613b13..c6fa51118232e5875779482ed1d694b7b9c7b861 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2463,7 +2463,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2464,7 +2464,7 @@ public abstract class LivingEntity extends Entity implements Attackable { // Duplicate triggers if blocking if (event.getDamage(DamageModifier.BLOCKING) < 0) { if (this instanceof ServerPlayer) { @@ -35,7 +35,7 @@ index 879ac6ec0b429ddb89ede2d51c8ccee9090fdc49..2a587683463fb0a0770ab54125868e82 f2 = (float) -event.getDamage(DamageModifier.BLOCKING); if (f2 > 0.0F && f2 < 3.4028235E37F) { ((ServerPlayer) this).awardStat(Stats.DAMAGE_BLOCKED_BY_SHIELD, Math.round(originalDamage * 10.0F)); -@@ -2471,7 +2471,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2472,7 +2472,7 @@ public abstract class LivingEntity extends Entity implements Attackable { } if (damagesource.getEntity() instanceof ServerPlayer) { diff --git a/patches/server/0809-Refresh-ProjectileSource-for-projectiles.patch b/patches/server/0809-Refresh-ProjectileSource-for-projectiles.patch index 4e706befac..3c6865e72d 100644 --- a/patches/server/0809-Refresh-ProjectileSource-for-projectiles.patch +++ b/patches/server/0809-Refresh-ProjectileSource-for-projectiles.patch @@ -14,10 +14,10 @@ clearing the owner. Co-authored-by: Warrior <[email protected]> diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5340d6d911a7e586468f2b7e2e74b3386d1dc72d..90b47da5c6df05565b522636e08c4ebb7165c351 100644 +index 798fd11e76326ace74035cf782be9f4218fe5edc..3d4d5d23623dccb8a5be85c2205dae11509a7119 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -393,6 +393,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -394,6 +394,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public boolean inWorld = false; public boolean generation; public int maxAirTicks = this.getDefaultMaxAirSupply(); // CraftBukkit - SPIGOT-6907: re-implement LivingEntity#setMaximumAir() diff --git a/patches/server/0823-Don-t-load-chunks-for-supporting-block-checks.patch b/patches/server/0823-Don-t-load-chunks-for-supporting-block-checks.patch index 4984d9ef4c..5d7e485869 100644 --- a/patches/server/0823-Don-t-load-chunks-for-supporting-block-checks.patch +++ b/patches/server/0823-Don-t-load-chunks-for-supporting-block-checks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Don't load chunks for supporting block checks diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 90b47da5c6df05565b522636e08c4ebb7165c351..a8bb9caaf0db01d8b7cfb18e5f162c6eeada5d6a 100644 +index 3d4d5d23623dccb8a5be85c2205dae11509a7119..c26c814e9a3a54fb7b46b0e5f51843621f179d3d 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1228,7 +1228,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1229,7 +1229,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } protected BlockPos getOnPos(float offset) { diff --git a/patches/server/0829-Fix-possible-NPE-on-painting-creation.patch b/patches/server/0829-Fix-possible-NPE-on-painting-creation.patch index d5fa31bd07..cc63dc03cf 100644 --- a/patches/server/0829-Fix-possible-NPE-on-painting-creation.patch +++ b/patches/server/0829-Fix-possible-NPE-on-painting-creation.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix possible NPE on painting creation diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java -index 39ea25d2145acaa7c7b458800adc674a3e73e7c1..8715d8e790b6735610e2f880f8c1f88a89967f21 100644 +index 0b9c4f9b61651660e821735f18b4f3cc7cfd164c..e31aa2a499e894847f19800b6bceb17aba38a1c0 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java @@ -361,8 +361,13 @@ public final class CraftEntityTypes { @@ -24,7 +24,7 @@ index 39ea25d2145acaa7c7b458800adc674a3e73e7c1..8715d8e790b6735610e2f880f8c1f88a net.minecraft.world.entity.decoration.Painting entity = new net.minecraft.world.entity.decoration.Painting(net.minecraft.world.entity.EntityType.PAINTING, spawnData.minecraftWorld()); entity.absMoveTo(spawnData.x(), spawnData.y(), spawnData.z(), spawnData.yaw(), spawnData.pitch()); entity.setDirection(hangingData.direction()); -@@ -523,6 +528,7 @@ public final class CraftEntityTypes { +@@ -529,6 +534,7 @@ public final class CraftEntityTypes { AABB bb = (ItemFrame.class.isAssignableFrom(clazz)) ? net.minecraft.world.entity.decoration.ItemFrame.calculateBoundingBoxStatic(pos, CraftBlock.blockFaceToNotch(dir).getOpposite()) : net.minecraft.world.entity.decoration.Painting.calculateBoundingBoxStatic(pos, CraftBlock.blockFaceToNotch(dir).getOpposite(), width, height); diff --git a/patches/server/0835-Folia-scheduler-and-owned-region-API.patch b/patches/server/0835-Folia-scheduler-and-owned-region-API.patch index f2c0e01477..2c701102be 100644 --- a/patches/server/0835-Folia-scheduler-and-owned-region-API.patch +++ b/patches/server/0835-Folia-scheduler-and-owned-region-API.patch @@ -1173,7 +1173,7 @@ index 741b5ba321d9bd854afb9b54f0e23c739c7f929c..9312279f8f958cd1fd13e8333ca47680 gameprofilerfiller.push("commandFunctions"); this.getFunctions().tick(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index cbba549176b3acfc25ec42c2935b31ab2176e0fa..4ac0bb0ec3222ebdd3fa386696dcb0723dc162a4 100644 +index 7da3e315de67f3273997ce9160995183a3a1ce71..3a6e918e9db6397b6f1cff531041655298ce087d 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -597,6 +597,7 @@ public abstract class PlayerList { @@ -1185,10 +1185,10 @@ index cbba549176b3acfc25ec42c2935b31ab2176e0fa..4ac0bb0ec3222ebdd3fa386696dcb072 this.players.remove(entityplayer); this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index a8bb9caaf0db01d8b7cfb18e5f162c6eeada5d6a..cc4906ed08e84beaca0ba93200693a0a3730fb4c 100644 +index c26c814e9a3a54fb7b46b0e5f51843621f179d3d..638b202519b0cca5ca7ba406e6f92c51a0ef990e 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -262,10 +262,21 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -263,10 +263,21 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public CraftEntity getBukkitEntity() { if (this.bukkitEntity == null) { @@ -1211,7 +1211,7 @@ index a8bb9caaf0db01d8b7cfb18e5f162c6eeada5d6a..cc4906ed08e84beaca0ba93200693a0a // CraftBukkit - SPIGOT-6907: re-implement LivingEntity#setMaximumAir() public int getDefaultMaxAirSupply() { -@@ -4676,6 +4687,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4706,6 +4717,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public final void setRemoved(Entity.RemovalReason entity_removalreason, EntityRemoveEvent.Cause cause) { CraftEventFactory.callEntityRemoveEvent(this, cause); // CraftBukkit end @@ -1219,7 +1219,7 @@ index a8bb9caaf0db01d8b7cfb18e5f162c6eeada5d6a..cc4906ed08e84beaca0ba93200693a0a if (this.removalReason == null) { this.removalReason = entity_removalreason; } -@@ -4687,12 +4699,28 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4717,12 +4729,28 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.getPassengers().forEach(Entity::stopRiding); this.levelCallback.onRemove(entity_removalreason); this.onRemoval(entity_removalreason); @@ -1249,7 +1249,7 @@ index a8bb9caaf0db01d8b7cfb18e5f162c6eeada5d6a..cc4906ed08e84beaca0ba93200693a0a public void setLevelCallback(EntityInLevelCallback changeListener) { this.levelCallback = changeListener; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index a7b79c9ec51f037287fad609c29b240e2071f2f8..46807d5d94a0f90b230dfaf4d37378a3bfa21414 100644 +index b59dc253a086374e07338b989ba5835d138e5d72..190529d8f96b2cb4096a454aec37775388650af2 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -313,6 +313,76 @@ public final class CraftServer implements Server { diff --git a/patches/server/0844-API-for-updating-recipes-on-clients.patch b/patches/server/0844-API-for-updating-recipes-on-clients.patch index bda5ca5713..e0119725e2 100644 --- a/patches/server/0844-API-for-updating-recipes-on-clients.patch +++ b/patches/server/0844-API-for-updating-recipes-on-clients.patch @@ -5,7 +5,7 @@ Subject: [PATCH] API for updating recipes on clients diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 4ac0bb0ec3222ebdd3fa386696dcb0723dc162a4..d92fb522d88a790d9cea2e6c4edad30bb73298fc 100644 +index 3a6e918e9db6397b6f1cff531041655298ce087d..efc12d629b71ba1da664d9ecfd4575bee9b45dc3 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1448,6 +1448,13 @@ public abstract class PlayerList { @@ -15,14 +15,14 @@ index 4ac0bb0ec3222ebdd3fa386696dcb0723dc162a4..d92fb522d88a790d9cea2e6c4edad30b + // Paper start - API for updating recipes on clients + this.reloadAdvancementData(); + this.reloadTagData(); -+ this.reloadRecipeData(); ++ this.reloadRecipes(); + } + public void reloadAdvancementData() { + // Paper end - API for updating recipes on clients // CraftBukkit start /*Iterator iterator = this.advancements.values().iterator(); -@@ -1463,7 +1470,13 @@ public abstract class PlayerList { +@@ -1463,9 +1470,13 @@ public abstract class PlayerList { } // CraftBukkit end @@ -30,14 +30,15 @@ index 4ac0bb0ec3222ebdd3fa386696dcb0723dc162a4..d92fb522d88a790d9cea2e6c4edad30b + } + public void reloadTagData() { this.broadcastAll(new ClientboundUpdateTagsPacket(TagNetworkSerialization.serializeTagsToNetwork(this.registries))); -+ } -+ public void reloadRecipeData() { + // CraftBukkit start +- this.reloadRecipes(); ++ // this.reloadRecipes(); // Paper - do not reload recipes just because tag data was reloaded + // Paper end - API for updating recipes on clients - RecipeManager craftingmanager = this.server.getRecipeManager(); - ClientboundUpdateRecipesPacket packetplayoutrecipeupdate = new ClientboundUpdateRecipesPacket(craftingmanager.getSynchronizedItemProperties(), craftingmanager.getSynchronizedStonecutterRecipes()); - Iterator iterator1 = this.players.iterator(); + } + + public void reloadRecipes() { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index da3819f49b105bd98ce94b5abdf1c7652ff625a4..fa505c0714bb95b2ab08b4bbb9ea79ce98898f4b 100644 +index 87bc228c121077815bdad7942df1c9576edac21b..a618258fde1226588ea447522ba4177aa9cf9016 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1178,6 +1178,18 @@ public final class CraftServer implements Server { @@ -52,7 +53,7 @@ index da3819f49b105bd98ce94b5abdf1c7652ff625a4..fa505c0714bb95b2ab08b4bbb9ea79ce + + @Override + public void updateRecipes() { -+ this.playerList.reloadRecipeData(); ++ this.playerList.reloadRecipes(); + } + // Paper end - API for updating recipes on clients + @@ -79,7 +80,7 @@ index da3819f49b105bd98ce94b5abdf1c7652ff625a4..fa505c0714bb95b2ab08b4bbb9ea79ce toAdd.addToCraftingManager(); + // Paper start - API for updating recipes on clients + if (true || resendRecipes) { // Always needs to be resent now... TODO -+ this.playerList.reloadRecipeData(); ++ this.playerList.reloadRecipes(); + } + // Paper end - API for updating recipes on clients return true; @@ -103,7 +104,7 @@ index da3819f49b105bd98ce94b5abdf1c7652ff625a4..fa505c0714bb95b2ab08b4bbb9ea79ce + final ResourceKey<net.minecraft.world.item.crafting.Recipe<?>> minecraftKey = CraftRecipe.toMinecraft(recipeKey); + final boolean removed = this.getServer().getRecipeManager().removeRecipe(minecraftKey); + if (removed/* && resendRecipes*/) { // TODO Always need to resend them rn - deprecate this method? -+ this.playerList.reloadRecipeData(); ++ this.playerList.reloadRecipes(); + } + return removed; + // Paper end - resend recipes on successful removal diff --git a/patches/server/0858-Expand-Pose-API.patch b/patches/server/0858-Expand-Pose-API.patch index 118d446644..476fb71f73 100644 --- a/patches/server/0858-Expand-Pose-API.patch +++ b/patches/server/0858-Expand-Pose-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Expand Pose API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index cc4906ed08e84beaca0ba93200693a0a3730fb4c..67dda7d37cc4af2f09734da5653e8fa33098c7db 100644 +index 638b202519b0cca5ca7ba406e6f92c51a0ef990e..8a0b26533e6bbabe829efbf5afcef1a79cdf0adb 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -427,6 +427,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -428,6 +428,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @javax.annotation.Nullable private UUID originWorld; public boolean freezeLocked = false; // Paper - Freeze Tick Lock API @@ -16,7 +16,7 @@ index cc4906ed08e84beaca0ba93200693a0a3730fb4c..67dda7d37cc4af2f09734da5653e8fa3 public void setOrigin(@javax.annotation.Nonnull Location location) { this.origin = location.toVector(); -@@ -625,6 +626,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -626,6 +627,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public void onRemoval(Entity.RemovalReason reason) {} public void setPose(net.minecraft.world.entity.Pose pose) { diff --git a/patches/server/0865-Fix-slot-desync.patch b/patches/server/0865-Fix-slot-desync.patch index 4d13d63e2c..a1835267ae 100644 --- a/patches/server/0865-Fix-slot-desync.patch +++ b/patches/server/0865-Fix-slot-desync.patch @@ -40,10 +40,10 @@ index 38730e11118bf71d167a18b807e06c20ea0d63d0..5be7304c8417e2987837d1c6ce8b8023 if (event.isCancelled()) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 67dda7d37cc4af2f09734da5653e8fa33098c7db..56f2ac87f42572556646eb62f16274726e7ae455 100644 +index 8a0b26533e6bbabe829efbf5afcef1a79cdf0adb..4cd07d9a90885b59ef1b2be7562386d5e8c7b2ae 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2752,8 +2752,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2753,8 +2753,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (!this.level().isClientSide()) { // CraftBukkit start - fire PlayerLeashEntityEvent if (CraftEventFactory.callPlayerLeashEntityEvent(this, player, player, hand).isCancelled()) { diff --git a/patches/server/0891-Broadcast-take-item-packets-with-collector-as-source.patch b/patches/server/0891-Broadcast-take-item-packets-with-collector-as-source.patch index 3c153487e4..6c7d603b8c 100644 --- a/patches/server/0891-Broadcast-take-item-packets-with-collector-as-source.patch +++ b/patches/server/0891-Broadcast-take-item-packets-with-collector-as-source.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Broadcast take item packets with collector as source This fixes players (which can't view the collector) seeing item pickups with themselves as the target. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 2a587683463fb0a0770ab54125868e82c0694ca6..375280dd829eb2f6b98a95228250a3d87a7872cf 100644 +index c6fa51118232e5875779482ed1d694b7b9c7b861..2bff94cef4fef66b81508a2ef4b5613e76044832 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3891,7 +3891,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3892,7 +3892,7 @@ public abstract class LivingEntity extends Entity implements Attackable { public void take(Entity item, int count) { if (!item.isRemoved() && !this.level().isClientSide && (item instanceof ItemEntity || item instanceof AbstractArrow || item instanceof ExperienceOrb)) { diff --git a/patches/server/0899-Don-t-fire-sync-events-during-worldgen.patch b/patches/server/0899-Don-t-fire-sync-events-during-worldgen.patch index 6a0d1b6e72..4849f6aa02 100644 --- a/patches/server/0899-Don-t-fire-sync-events-during-worldgen.patch +++ b/patches/server/0899-Don-t-fire-sync-events-during-worldgen.patch @@ -31,10 +31,10 @@ index 7cecbac43f1cd2d9516034ea9d2633c0c76e61f4..7a985c30a973efacf3e8b70e7163c550 if (entity.valid) { MinecraftServer.LOGGER.error("Attempted Double World add on {}", entity, new Throwable()); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 56f2ac87f42572556646eb62f16274726e7ae455..5c7df0efee4a0aa078e36d3e262cd0b48a27cf47 100644 +index 4cd07d9a90885b59ef1b2be7562386d5e8c7b2ae..7657888bab53428fda9d3d10ac35bfddc5c16266 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -631,7 +631,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -632,7 +632,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (pose == this.getPose()) { return; } @@ -68,7 +68,7 @@ index 64dc0bd1900575e40ac72a98c6df371223bd244c..c2693d530be00af16b2aa4ca4afd1d13 }, () -> { EntityType.LOGGER.warn("Skipping Entity with id {}", nbt.getString("id")); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 375280dd829eb2f6b98a95228250a3d87a7872cf..e8749957c39abcd922b734a87df95b815012737a 100644 +index 2bff94cef4fef66b81508a2ef4b5613e76044832..22c565fd6b14ae018f4526b174388ed5247600f6 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1159,6 +1159,11 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0902-Restore-vanilla-entity-drops-behavior.patch b/patches/server/0902-Restore-vanilla-entity-drops-behavior.patch index 8ad8d898eb..8ab0f9fb23 100644 --- a/patches/server/0902-Restore-vanilla-entity-drops-behavior.patch +++ b/patches/server/0902-Restore-vanilla-entity-drops-behavior.patch @@ -37,10 +37,10 @@ index 419fcb4cd97cf10a2601e02024b999a51a0ff952..df21cd1bd2a3dda7169edbea18bbfdf0 loot.addAll(this.drops); this.drops.clear(); // SPIGOT-5188: make sure to clear diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5c7df0efee4a0aa078e36d3e262cd0b48a27cf47..b78395ab8f393a0f6551951731ddce7a5228b44c 100644 +index 7657888bab53428fda9d3d10ac35bfddc5c16266..b7594a0fd6fe7e25d13202c95b2c39a04e84abde 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2678,19 +2678,45 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2679,19 +2679,45 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @Nullable public ItemEntity spawnAtLocation(ServerLevel world, ItemStack stack, float yOffset) { @@ -89,7 +89,7 @@ index 5c7df0efee4a0aa078e36d3e262cd0b48a27cf47..b78395ab8f393a0f6551951731ddce7a return this.spawnAtLocation(world, entityitem); } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index e8749957c39abcd922b734a87df95b815012737a..9e105732fb765258af9154b84534234fd84eb24f 100644 +index 22c565fd6b14ae018f4526b174388ed5247600f6..8c3ec957210a259e26253dbb3a4191702ce6699c 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -289,7 +289,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -150,7 +150,7 @@ index 2bb2b36f793d25b6e49d1a72bb665cfa9f212730..63f02cdc67d9e88cc6998d0ae9d139c8 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index dbef230ae88ee1bfbc20ba53b534434c3ccac985..a0455f590d549343d6d8fd7991ba1b87a87acdb8 100644 +index b6c30bb70fb4746da024bc4d80b71aeb3558f101..1c87019f5eb8e51accef3dc7ee949cdf2bec8f72 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -973,19 +973,25 @@ public class CraftEventFactory { diff --git a/patches/server/0905-Improve-Registry.patch b/patches/server/0905-Improve-Registry.patch index 7bd4b1163b..5546233da5 100644 --- a/patches/server/0905-Improve-Registry.patch +++ b/patches/server/0905-Improve-Registry.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Improve Registry diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index 16985dc1f54d64c44f96b045012612f16ba9ae8a..002a3475c6e062071845399ed723754ce4ce9e95 100644 +index 249f0dcad04a35244da6dab837a461bb42aad00a..273844c9071b8d5cf6009c6c94a6c47a9d0cc700 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -150,6 +150,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { +@@ -152,6 +152,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { private final Class<?> bukkitClass; // Paper - relax preload class private final Map<NamespacedKey, B> cache = new HashMap<>(); @@ -16,7 +16,7 @@ index 16985dc1f54d64c44f96b045012612f16ba9ae8a..002a3475c6e062071845399ed723754c private final net.minecraft.core.Registry<M> minecraftRegistry; private final BiFunction<NamespacedKey, M, B> minecraftToBukkit; private final BiFunction<NamespacedKey, ApiVersion, NamespacedKey> serializationUpdater; // Paper - rename to make it *clear* what it is *only* for -@@ -198,6 +199,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { +@@ -200,6 +201,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { } this.cache.put(namespacedKey, bukkit); @@ -24,7 +24,7 @@ index 16985dc1f54d64c44f96b045012612f16ba9ae8a..002a3475c6e062071845399ed723754c return bukkit; } -@@ -230,4 +232,11 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { +@@ -232,4 +234,11 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { return this.minecraftToBukkit.apply(namespacedKey, minecraft); } diff --git a/patches/server/0906-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch b/patches/server/0906-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch index 636531b7e9..0889a0b322 100644 --- a/patches/server/0906-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch +++ b/patches/server/0906-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch @@ -26,10 +26,10 @@ index c6dcc37ac5fcf50bcb246f533b99983dfc5c19c2..c13b6f14c3061710c2b27034db240cc9 d3 = to.getX(); d4 = to.getY(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 9e105732fb765258af9154b84534234fd84eb24f..97a524db692b7367f22a373439c1233b143f4a17 100644 +index 8c3ec957210a259e26253dbb3a4191702ce6699c..0557a182a17a2891f2a9e0e4367d5102674e3b42 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4363,7 +4363,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4364,7 +4364,7 @@ public abstract class LivingEntity extends Entity implements Attackable { if (!(this instanceof ServerPlayer)) { EntityTeleportEvent teleport = new EntityTeleportEvent(this.getBukkitEntity(), new Location(this.level().getWorld(), d3, d4, d5), new Location(this.level().getWorld(), d0, d6, d2)); this.level().getCraftServer().getPluginManager().callEvent(teleport); diff --git a/patches/server/0912-Fixup-NamespacedKey-handling.patch b/patches/server/0912-Fixup-NamespacedKey-handling.patch index 0eee21b8d0..2de1c49d0b 100644 --- a/patches/server/0912-Fixup-NamespacedKey-handling.patch +++ b/patches/server/0912-Fixup-NamespacedKey-handling.patch @@ -18,10 +18,10 @@ index 90b82ad996b2b85628c9a5ddeef9410150b7f70c..5fd22a80e9d05afbea273471cee99173 public static NamespacedKey minecraftToBukkitKey(ResourceKey<LootTable> minecraft) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index 002a3475c6e062071845399ed723754ce4ce9e95..9245f6de141384bfc12e8dd81ce1df366c6a62aa 100644 +index 273844c9071b8d5cf6009c6c94a6c47a9d0cc700..45c78c113e881b277e1216293ad918ee40b44325 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -125,6 +125,16 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { +@@ -127,6 +127,16 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { + ", this can happen if a plugin creates its own registry entry with out properly registering it."); } @@ -68,7 +68,7 @@ index afed8bdb9bd6a135e9b5f7bd9bfc61964cb240f7..bb2d1dddca6bfe719b28df136e80a7c5 } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPainting.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPainting.java -index bcac1359c667ef1ee46384f9c7a5adf4010d2b08..98a4463c9f194f33f4f85d95a0b9fa061cf6faaf 100644 +index bcac1359c667ef1ee46384f9c7a5adf4010d2b08..b1b139b773b37e6ec2afea85c500387d6ba9800e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPainting.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPainting.java @@ -16,7 +16,7 @@ public class CraftPainting extends CraftHanging implements Painting { @@ -76,7 +76,7 @@ index bcac1359c667ef1ee46384f9c7a5adf4010d2b08..98a4463c9f194f33f4f85d95a0b9fa06 @Override public Art getArt() { - return CraftArt.minecraftHolderToBukkit(this.getHandle().getVariant()); -+ return org.bukkit.craftbukkit.CraftRegistry.unwrapAndConvertHolder(org.bukkit.Registry.ART, this.getHandle().getVariant()).orElseThrow(() -> new IllegalStateException("Inlined/custom painting variants are not supported yet in the API!")); // Paper ++ return org.bukkit.craftbukkit.CraftRegistry.unwrapAndConvertHolder(org.bukkit.Registry.ART, this.getHandle().getVariant()).orElseThrow(() -> new IllegalStateException("Inlined painting variants are not supported yet in the API!")); // Paper } @Override diff --git a/patches/server/0934-Fix-DamageSource-API.patch b/patches/server/0934-Fix-DamageSource-API.patch index bdeb62149f..d03ac9d5ef 100644 --- a/patches/server/0934-Fix-DamageSource-API.patch +++ b/patches/server/0934-Fix-DamageSource-API.patch @@ -84,10 +84,10 @@ index fddbdb7322a2063996a28c5c3d93c265188b1256..be87cb3cfa15a7d889118cdc4b87232e public DamageSource sonicBoom(Entity attacker) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b78395ab8f393a0f6551951731ddce7a5228b44c..e2322f361271712aca31c95b8b79cdf1c04945f2 100644 +index b7594a0fd6fe7e25d13202c95b2c39a04e84abde..6ebd653ea3c302f26d02f81b6718924708148e4c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3388,7 +3388,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3389,7 +3389,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return; } @@ -220,7 +220,7 @@ index 4c6e15535fa40aad8cf1920f392589404f9ba79c..35eb95ef6fb6a0f7ea63351e90741c48 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index e7749a3ef6289d73379649f2f76f4e4fdfac7a8b..96b901d07718d8926a2175925e867b4417c3947c 100644 +index ea4e1bf4bfe003c102ecce5958131aa86ec83864..937ed4e77739ff02ff1e4405047f15eac40906fe 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1092,7 +1092,7 @@ public class CraftEventFactory { diff --git a/patches/server/0945-Fix-shield-disable-inconsistency.patch b/patches/server/0945-Fix-shield-disable-inconsistency.patch index 30eef15e53..3dcabedf09 100644 --- a/patches/server/0945-Fix-shield-disable-inconsistency.patch +++ b/patches/server/0945-Fix-shield-disable-inconsistency.patch @@ -8,10 +8,10 @@ it will not disable the shield if the attacker is holding an axe item. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 2fa73a9f444628a5e0df9f54e9bcd453973f0029..e2a069d15d355e985bd80e27023c53b8ef72e0e9 100644 +index 9154f43b578176e13604a7cbd8c210ff3b0ecce9..241c0b1d509bf60104820914a32b81edfdbb33c4 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2424,7 +2424,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2425,7 +2425,7 @@ public abstract class LivingEntity extends Entity implements Attackable { this.hurtCurrentlyUsedShield((float) -event.getDamage(DamageModifier.BLOCKING)); Entity entity = damagesource.getDirectEntity(); diff --git a/patches/server/0949-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch b/patches/server/0949-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch index 3c84264fc6..ce7f3d5550 100644 --- a/patches/server/0949-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch +++ b/patches/server/0949-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Revert to vanilla handling of LivingEntity#actuallyHurt diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index e2a069d15d355e985bd80e27023c53b8ef72e0e9..ea423fd53150b4a530de673359bfcadc432e9501 100644 +index 241c0b1d509bf60104820914a32b81edfdbb33c4..fe545447bdb982355491ec83c14993325dcc799d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1455,7 +1455,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -33,7 +33,7 @@ index e2a069d15d355e985bd80e27023c53b8ef72e0e9..ea423fd53150b4a530de673359bfcadc this.lastHurt = amount; this.invulnerableTime = this.invulnerableDuration; // CraftBukkit - restore use of maxNoDamageTicks // this.actuallyHurt(worldserver, damagesource, f); -@@ -2486,12 +2488,12 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2487,12 +2489,12 @@ public abstract class LivingEntity extends Entity implements Attackable { return true; } else { diff --git a/patches/server/0956-Brigadier-based-command-API.patch b/patches/server/0956-Brigadier-based-command-API.patch index a29a06bfc2..966239124f 100644 --- a/patches/server/0956-Brigadier-based-command-API.patch +++ b/patches/server/0956-Brigadier-based-command-API.patch @@ -2376,7 +2376,7 @@ index c4ffa8519b520e0793af90e149518951d7ffb65b..688916c8fef40d4c81379ad38609a979 // CraftBukkit end diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 6136037d3d096300d93b9710dd854224b30e0738..694eacb7d3ffd28fe7684139554113e58be1ebfa 100644 +index b8c2df77ee339c0f711eb767c00cd262c0b84ff3..91ede397a5de5582fcff9d18d1d1b2be9f0909cf 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -275,11 +275,11 @@ public final class CraftServer implements Server { @@ -2559,10 +2559,10 @@ index 4b1ac1fe7ea07f419ae2818251900e7ba434ee16..90ed57a7fbcd0625b64084347460e986 public Map<String, Command> getKnownCommands() { diff --git a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -index a35e2d2f53e8308d51e5a07b34c56d05a707bc14..945878e989f136ac516eb1c539c0626547c465fb 100644 +index 4d4a1ac9d75908bbd105a1e5756d2c0932b2d238..7b9f95802071e009412c4a3e6427e34f0b4d468c 100644 --- a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java +++ b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -@@ -23,14 +23,26 @@ import org.bukkit.craftbukkit.entity.CraftEntity; +@@ -24,14 +24,26 @@ import org.bukkit.craftbukkit.entity.CraftEntity; import org.bukkit.craftbukkit.entity.CraftMinecartCommand; import org.bukkit.entity.minecart.CommandMinecart; @@ -2592,7 +2592,7 @@ index a35e2d2f53e8308d51e5a07b34c56d05a707bc14..945878e989f136ac516eb1c539c06265 this.vanillaCommand = vanillaCommand; this.setPermission(VanillaCommandWrapper.getPermission(vanillaCommand)); } -@@ -40,7 +52,7 @@ public final class VanillaCommandWrapper extends BukkitCommand { +@@ -41,7 +53,7 @@ public final class VanillaCommandWrapper extends BukkitCommand { if (!this.testPermission(sender)) return true; CommandSourceStack icommandlistener = VanillaCommandWrapper.getListener(sender); @@ -2601,7 +2601,7 @@ index a35e2d2f53e8308d51e5a07b34c56d05a707bc14..945878e989f136ac516eb1c539c06265 return true; } -@@ -51,10 +63,10 @@ public final class VanillaCommandWrapper extends BukkitCommand { +@@ -52,10 +64,10 @@ public final class VanillaCommandWrapper extends BukkitCommand { Preconditions.checkArgument(alias != null, "Alias cannot be null"); CommandSourceStack icommandlistener = VanillaCommandWrapper.getListener(sender); @@ -2614,7 +2614,7 @@ index a35e2d2f53e8308d51e5a07b34c56d05a707bc14..945878e989f136ac516eb1c539c06265 suggestions.getList().forEach((s) -> results.add(s.getText())); }); -@@ -111,4 +123,15 @@ public final class VanillaCommandWrapper extends BukkitCommand { +@@ -116,4 +128,15 @@ public final class VanillaCommandWrapper extends BukkitCommand { private String toDispatcher(String[] args, String name) { return name + ((args.length > 0) ? " " + Joiner.on(' ').join(args) : ""); } diff --git a/patches/server/0960-Prevent-sending-oversized-item-data-in-equipment-and.patch b/patches/server/0960-Prevent-sending-oversized-item-data-in-equipment-and.patch index d361fe02f7..58783adedb 100644 --- a/patches/server/0960-Prevent-sending-oversized-item-data-in-equipment-and.patch +++ b/patches/server/0960-Prevent-sending-oversized-item-data-in-equipment-and.patch @@ -222,10 +222,10 @@ index 688916c8fef40d4c81379ad38609a97993b4b702..6cf3b28749d92b4e33e2f88c6335c9a6 ServerGamePacketListenerImpl.this.player.containerMenu.sendAllDataToRemote(); // Paper - fix slot desync - always refresh player inventory diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ea423fd53150b4a530de673359bfcadc432e9501..ce686e5a98aea61979b842637ed6ebb97e64d2e1 100644 +index fe545447bdb982355491ec83c14993325dcc799d..6feab3d1b85857ab2c5b2228f2b0d5e6c2a5518d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3460,7 +3460,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3461,7 +3461,7 @@ public abstract class LivingEntity extends Entity implements Attackable { } }); diff --git a/patches/server/0970-Configurable-damage-tick-when-blocking-with-shield.patch b/patches/server/0970-Configurable-damage-tick-when-blocking-with-shield.patch index 63023e73f0..a161fd71b6 100644 --- a/patches/server/0970-Configurable-damage-tick-when-blocking-with-shield.patch +++ b/patches/server/0970-Configurable-damage-tick-when-blocking-with-shield.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable damage tick when blocking with shield diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ce686e5a98aea61979b842637ed6ebb97e64d2e1..cebb05310502cd1e2277896e75fddab268a3fdf1 100644 +index 6feab3d1b85857ab2c5b2228f2b0d5e6c2a5518d..ff7616e1d6d6c821a75649812ec69e0dc6a8e378 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2486,7 +2486,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2487,7 +2487,7 @@ public abstract class LivingEntity extends Entity implements Attackable { CriteriaTriggers.PLAYER_HURT_ENTITY.trigger((ServerPlayer) damagesource.getEntity(), this, damagesource, originalDamage, f, true); // Paper - fix taken/dealt param order } diff --git a/patches/server/0978-Entity-Activation-Range-2.0.patch b/patches/server/0978-Entity-Activation-Range-2.0.patch index 13245e49f4..051ceaf599 100644 --- a/patches/server/0978-Entity-Activation-Range-2.0.patch +++ b/patches/server/0978-Entity-Activation-Range-2.0.patch @@ -87,10 +87,10 @@ index ce148cf5930cdcf0163c7f6416cbbd89e4d22720..cd00b534e4c527e0b4a5ad78cde87c22 } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e2322f361271712aca31c95b8b79cdf1c04945f2..4c76002af5eee553b92a026688c83ab36429fe4f 100644 +index 6ebd653ea3c302f26d02f81b6718924708148e4c..72dbee3795eb634b3ff3f063a226a1965bc988fb 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -420,6 +420,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -421,6 +421,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // Spigot end protected int numCollisions = 0; // Paper - Cap entity collisions public boolean fromNetherPortal; // Paper - Add option to nerf pigmen from nether portals @@ -99,7 +99,7 @@ index e2322f361271712aca31c95b8b79cdf1c04945f2..4c76002af5eee553b92a026688c83ab3 public boolean spawnedViaMobSpawner; // Paper - Yes this name is similar to above, upstream took the better one // Paper start - Entity origin API @javax.annotation.Nullable -@@ -992,6 +994,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -993,6 +995,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } else { this.wasOnFire = this.isOnFire(); if (type == MoverType.PISTON) { @@ -108,7 +108,7 @@ index e2322f361271712aca31c95b8b79cdf1c04945f2..4c76002af5eee553b92a026688c83ab3 movement = this.limitPistonMovement(movement); if (movement.equals(Vec3.ZERO)) { return; -@@ -1006,6 +1010,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1007,6 +1011,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.stuckSpeedMultiplier = Vec3.ZERO; this.setDeltaMovement(Vec3.ZERO); } @@ -349,10 +349,10 @@ index 46afba838cf12eeb1bbccaa260131a76f090364b..e1c9a961064887070b29207efd7af478 } } diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e8568265007 100644 +index 964e3e81ab522ceebfceb651dfe3309d7b87c688..c1f753f7c4530a772fb408db83fc8c78675cbec2 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -1,26 +1,35 @@ +@@ -1,14 +1,22 @@ package org.spigotmc; +import net.minecraft.core.BlockPos; @@ -375,7 +375,8 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 import net.minecraft.world.entity.boss.EnderDragonPart; import net.minecraft.world.entity.boss.enderdragon.EndCrystal; import net.minecraft.world.entity.boss.enderdragon.EnderDragon; - import net.minecraft.world.entity.boss.wither.WitherBoss; +@@ -16,12 +24,13 @@ import net.minecraft.world.entity.boss.wither.WitherBoss; + import net.minecraft.world.entity.item.ItemEntity; import net.minecraft.world.entity.item.PrimedTnt; import net.minecraft.world.entity.monster.Creeper; -import net.minecraft.world.entity.monster.Monster; @@ -390,7 +391,7 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 import net.minecraft.world.entity.projectile.FireworkRocketEntity; import net.minecraft.world.entity.projectile.ThrowableProjectile; import net.minecraft.world.entity.projectile.ThrownTrident; -@@ -43,6 +52,43 @@ public class ActivationRange +@@ -44,6 +53,43 @@ public class ActivationRange AABB boundingBox = new AABB( 0, 0, 0, 0, 0, 0 ); } @@ -434,7 +435,7 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 static AABB maxBB = new AABB( 0, 0, 0, 0, 0, 0 ); -@@ -55,10 +101,13 @@ public class ActivationRange +@@ -56,10 +102,13 @@ public class ActivationRange */ public static ActivationType initializeEntityActivationType(Entity entity) { @@ -449,7 +450,7 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 { return ActivationType.MONSTER; } else if ( entity instanceof PathfinderMob || entity instanceof AmbientCreature ) -@@ -79,10 +128,14 @@ public class ActivationRange +@@ -80,10 +129,14 @@ public class ActivationRange */ public static boolean initializeEntityActivationState(Entity entity, SpigotWorldConfig config) { @@ -468,7 +469,7 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 || entity instanceof Player || entity instanceof ThrowableProjectile || entity instanceof EnderDragon -@@ -116,10 +169,25 @@ public class ActivationRange +@@ -117,10 +170,25 @@ public class ActivationRange final int raiderActivationRange = world.spigotConfig.raiderActivationRange; final int animalActivationRange = world.spigotConfig.animalActivationRange; final int monsterActivationRange = world.spigotConfig.monsterActivationRange; @@ -494,7 +495,7 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 maxRange = Math.min( ( world.spigotConfig.simulationDistance << 4 ) - 8, maxRange ); for ( Player player : world.players() ) -@@ -130,13 +198,30 @@ public class ActivationRange +@@ -131,13 +199,30 @@ public class ActivationRange continue; } @@ -531,7 +532,7 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 } } -@@ -168,60 +253,118 @@ public class ActivationRange +@@ -169,60 +254,118 @@ public class ActivationRange * @param entity * @return */ @@ -667,8 +668,8 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 } /** -@@ -236,8 +379,19 @@ public class ActivationRange - if ( entity instanceof FireworkRocketEntity ) { +@@ -237,8 +380,19 @@ public class ActivationRange + if (entity instanceof FireworkRocketEntity || (entity instanceof ItemEntity && (entity.tickCount + entity.getId() + 1) % 4 == 0)) { return true; } + // Paper start - special case always immunities @@ -688,7 +689,7 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 // Should this entity tick? if ( !isActive ) -@@ -245,11 +399,14 @@ public class ActivationRange +@@ -246,11 +400,14 @@ public class ActivationRange if ( ( MinecraftServer.currentTick - entity.activatedTick - 1 ) % 20 == 0 ) { // Check immunities every 20 ticks. @@ -705,8 +706,8 @@ index 05ad15fc40ccb7feed5c51ad0ad0a98bd0d02af6..133bcf639a45bd7fa1a2d02410ea3e85 } + // Paper end isActive = true; - } else if (entity instanceof net.minecraft.world.entity.item.ItemEntity && (entity.tickCount + entity.getId()) % 4 == 0) { // Paper - Needed for item gravity, see ItemEntity tick - isActive = true; + } + } diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java index 2b263246135c85aa225120519e9702a628773935..2c408fa4abcbe1171c58aee8799c8cf7867d0f0a 100644 --- a/src/main/java/org/spigotmc/SpigotWorldConfig.java diff --git a/patches/server/0981-Optimize-Collision-to-not-load-chunks.patch b/patches/server/0981-Optimize-Collision-to-not-load-chunks.patch index 1dc4b385f4..391381dabf 100644 --- a/patches/server/0981-Optimize-Collision-to-not-load-chunks.patch +++ b/patches/server/0981-Optimize-Collision-to-not-load-chunks.patch @@ -14,7 +14,7 @@ movement will load only the chunk the player enters anyways and avoids loading massive amounts of surrounding chunks due to large AABB lookups. diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 7097d87dead028c8dd44cefc97694bada93f608b..751fc4b0fe60c6d26ea0f768f3d66031a4bad963 100644 +index 3e03d65ac4ef267de67684d24c6f9c303b1a0bf0..b451842d6848af883cc3abf200f03c9a4680106c 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -826,6 +826,7 @@ public abstract class PlayerList { @@ -26,10 +26,10 @@ index 7097d87dead028c8dd44cefc97694bada93f608b..751fc4b0fe60c6d26ea0f768f3d66031 if (teleporttransition.missingRespawnBlock()) { entityplayer1.connection.send(new ClientboundGameEventPacket(ClientboundGameEventPacket.NO_RESPAWN_BLOCK_AVAILABLE, 0.0F)); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 4c76002af5eee553b92a026688c83ab36429fe4f..7fbaaed892b39ca920b15e08d6c44943a69a35d7 100644 +index 72dbee3795eb634b3ff3f063a226a1965bc988fb..430addbb5c3d84f4354a89a9ec8fa15bca4d2a60 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -258,6 +258,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -259,6 +259,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // Paper end - Share random for entities to make them more random public org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason spawnReason; // Paper - Entity#getEntitySpawnReason diff --git a/patches/server/0990-Check-distance-in-entity-interactions.patch b/patches/server/0990-Check-distance-in-entity-interactions.patch index bfc89098b0..2c49ce329c 100644 --- a/patches/server/0990-Check-distance-in-entity-interactions.patch +++ b/patches/server/0990-Check-distance-in-entity-interactions.patch @@ -17,7 +17,7 @@ index 57223285860f61119b6cf348aa78e59384a04e22..ccfe9ef24dce9f34613692adb13738d3 }; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index cebb05310502cd1e2277896e75fddab268a3fdf1..40697022b64100fcf7f5c079c6863cd0eabfb0b8 100644 +index ff7616e1d6d6c821a75649812ec69e0dc6a8e378..bd34c878d8ca6fb4e4f526761fd657b250c26d80 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1467,7 +1467,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -44,7 +44,7 @@ index cebb05310502cd1e2277896e75fddab268a3fdf1..40697022b64100fcf7f5c079c6863cd0 this.knockback(0.4000000059604645D, d0, d1, entity1, entity1 == null ? io.papermc.paper.event.entity.EntityKnockbackEvent.Cause.DAMAGE : io.papermc.paper.event.entity.EntityKnockbackEvent.Cause.ENTITY_ATTACK); // CraftBukkit // Paper - knockback events if (!flag) { -@@ -2426,7 +2434,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2427,7 +2435,7 @@ public abstract class LivingEntity extends Entity implements Attackable { this.hurtCurrentlyUsedShield((float) -event.getDamage(DamageModifier.BLOCKING)); Entity entity = damagesource.getDirectEntity(); diff --git a/patches/server/0992-Properly-resend-entities.patch b/patches/server/0992-Properly-resend-entities.patch index 3963567da9..9bb9004b32 100644 --- a/patches/server/0992-Properly-resend-entities.patch +++ b/patches/server/0992-Properly-resend-entities.patch @@ -102,7 +102,7 @@ index da719576b2c7e992b74266c7fbe5c9728d238dcf..c93aa97abd46b3ad87e284feac51487e } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 751fc4b0fe60c6d26ea0f768f3d66031a4bad963..700ab5ef2f8ab1466c4f659cd34679dc809efbaf 100644 +index b451842d6848af883cc3abf200f03c9a4680106c..88299abf563a041ade1683b66b43103b0eeeea0d 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -396,7 +396,7 @@ public abstract class PlayerList { @@ -134,10 +134,10 @@ index 751fc4b0fe60c6d26ea0f768f3d66031a4bad963..700ab5ef2f8ab1466c4f659cd34679dc } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 7fbaaed892b39ca920b15e08d6c44943a69a35d7..ddfc4818f091802e5999c6b99e5bc57c6f370648 100644 +index 430addbb5c3d84f4354a89a9ec8fa15bca4d2a60..7093a7383c93f172fb7674799d7efe4c563fc99c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -598,13 +598,45 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -599,13 +599,45 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // CraftBukkit start public void refreshEntityData(ServerPlayer to) { @@ -186,10 +186,10 @@ index 7fbaaed892b39ca920b15e08d6c44943a69a35d7..ddfc4818f091802e5999c6b99e5bc57c public boolean equals(Object object) { return object instanceof Entity ? ((Entity) object).id == this.id : false; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 40697022b64100fcf7f5c079c6863cd0eabfb0b8..61d4515cce2b5ed73a2202d43b8f96bb63b9a459 100644 +index bd34c878d8ca6fb4e4f526761fd657b250c26d80..016be3addd3bf0ae3dd5f6094de3902206c5b43a 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4029,6 +4029,11 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4030,6 +4030,11 @@ public abstract class LivingEntity extends Entity implements Attackable { return ((Byte) this.entityData.get(LivingEntity.DATA_LIVING_ENTITY_FLAGS) & 2) > 0 ? InteractionHand.OFF_HAND : InteractionHand.MAIN_HAND; } diff --git a/patches/server/0993-Registry-Modification-API.patch b/patches/server/0993-Registry-Modification-API.patch index 8c62f4ec9b..8dbd5f3ff2 100644 --- a/patches/server/0993-Registry-Modification-API.patch +++ b/patches/server/0993-Registry-Modification-API.patch @@ -9,7 +9,7 @@ public net.minecraft.resources.RegistryOps lookupProvider public net.minecraft.resources.RegistryOps$HolderLookupAdapter diff --git a/src/main/java/io/papermc/paper/registry/PaperRegistries.java b/src/main/java/io/papermc/paper/registry/PaperRegistries.java -index b5df90b500a64ee3ba1026fa3449ca6441293367..36bc8d005de14622eb8a0bf4736d964276c95344 100644 +index 39120c63ed25d45a4083523fbfe79d871f4d892e..f563e6e7a558d22f571154640e99cc86718c89f5 100644 --- a/src/main/java/io/papermc/paper/registry/PaperRegistries.java +++ b/src/main/java/io/papermc/paper/registry/PaperRegistries.java @@ -2,6 +2,7 @@ package io.papermc.paper.registry; @@ -20,7 +20,7 @@ index b5df90b500a64ee3ba1026fa3449ca6441293367..36bc8d005de14622eb8a0bf4736d9642 import java.util.Collections; import java.util.IdentityHashMap; import java.util.List; -@@ -64,6 +65,7 @@ import org.checkerframework.framework.qual.DefaultQualifier; +@@ -68,6 +69,7 @@ import org.checkerframework.framework.qual.DefaultQualifier; import static io.papermc.paper.registry.entry.RegistryEntry.apiOnly; import static io.papermc.paper.registry.entry.RegistryEntry.entry; @@ -28,7 +28,7 @@ index b5df90b500a64ee3ba1026fa3449ca6441293367..36bc8d005de14622eb8a0bf4736d9642 @DefaultQualifier(NonNull.class) public final class PaperRegistries { -@@ -147,6 +149,15 @@ public final class PaperRegistries { +@@ -151,6 +153,15 @@ public final class PaperRegistries { return ResourceKey.create((ResourceKey<? extends Registry<M>>) PaperRegistries.registryToNms(typedKey.registryKey()), PaperAdventure.asVanilla(typedKey.key())); } @@ -1323,10 +1323,10 @@ index 6fddef967b6314ca0158f5bd4b8898670ea5e9ec..b5ca1a0acb16d0cd8dccc854f309d425 return writableRegistry; }, prepareExecutor); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -index 9245f6de141384bfc12e8dd81ce1df366c6a62aa..d97ddbcb5efdae5f848c77bee52058b16316b3dc 100644 +index 45c78c113e881b277e1216293ad918ee40b44325..8314059455d91f01b986c5c0a239f41817834bd6 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java -@@ -162,11 +162,11 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { +@@ -164,11 +164,11 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { private final Map<NamespacedKey, B> cache = new HashMap<>(); private final Map<B, NamespacedKey> byValue = new java.util.IdentityHashMap<>(); // Paper - improve Registry private final net.minecraft.core.Registry<M> minecraftRegistry; @@ -1340,7 +1340,7 @@ index 9245f6de141384bfc12e8dd81ce1df366c6a62aa..d97ddbcb5efdae5f848c77bee52058b1 this.bukkitClass = bukkitClass; this.minecraftRegistry = minecraftRegistry; this.minecraftToBukkit = minecraftToBukkit; -@@ -249,4 +249,17 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { +@@ -251,4 +251,17 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> { return this.byValue.get(value); } // Paper end - improve Registry diff --git a/patches/server/0994-Add-registry-entry-and-builders.patch b/patches/server/0994-Add-registry-entry-and-builders.patch index 1b4049eaa9..478f6366df 100644 --- a/patches/server/0994-Add-registry-entry-and-builders.patch +++ b/patches/server/0994-Add-registry-entry-and-builders.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add registry entry and builders diff --git a/src/main/java/io/papermc/paper/registry/PaperRegistries.java b/src/main/java/io/papermc/paper/registry/PaperRegistries.java -index 3c48848a2628d07c470425d1c70d10b45db346a1..97fceb4de04d6756bd9b18b650e3325f21854f40 100644 +index f563e6e7a558d22f571154640e99cc86718c89f5..a2d26151b5d1ae413e1e588520ecf13fe479de94 100644 --- a/src/main/java/io/papermc/paper/registry/PaperRegistries.java +++ b/src/main/java/io/papermc/paper/registry/PaperRegistries.java @@ -1,6 +1,8 @@ @@ -17,7 +17,7 @@ index 3c48848a2628d07c470425d1c70d10b45db346a1..97fceb4de04d6756bd9b18b650e3325f import io.papermc.paper.registry.entry.RegistryEntry; import io.papermc.paper.registry.tag.TagKey; import java.util.Collections; -@@ -76,7 +78,7 @@ public final class PaperRegistries { +@@ -80,7 +82,7 @@ public final class PaperRegistries { static { REGISTRY_ENTRIES = List.of( // built-ins @@ -26,7 +26,7 @@ index 3c48848a2628d07c470425d1c70d10b45db346a1..97fceb4de04d6756bd9b18b650e3325f entry(Registries.STRUCTURE_TYPE, RegistryKey.STRUCTURE_TYPE, StructureType.class, CraftStructureType::new), entry(Registries.INSTRUMENT, RegistryKey.INSTRUMENT, MusicInstrument.class, CraftMusicInstrument::new), entry(Registries.MOB_EFFECT, RegistryKey.MOB_EFFECT, PotionEffectType.class, CraftPotionEffectType::new), -@@ -98,7 +100,7 @@ public final class PaperRegistries { +@@ -103,7 +105,7 @@ public final class PaperRegistries { entry(Registries.TRIM_PATTERN, RegistryKey.TRIM_PATTERN, TrimPattern.class, CraftTrimPattern::new).delayed(), entry(Registries.DAMAGE_TYPE, RegistryKey.DAMAGE_TYPE, DamageType.class, CraftDamageType::new).delayed(), entry(Registries.WOLF_VARIANT, RegistryKey.WOLF_VARIANT, Wolf.Variant.class, CraftWolf.CraftVariant::new).delayed(), @@ -34,7 +34,7 @@ index 3c48848a2628d07c470425d1c70d10b45db346a1..97fceb4de04d6756bd9b18b650e3325f + writable(Registries.ENCHANTMENT, RegistryKey.ENCHANTMENT, Enchantment.class, CraftEnchantment::new, PaperEnchantmentRegistryEntry.PaperBuilder::new).withSerializationUpdater(FieldRename.ENCHANTMENT_RENAME).delayed(), entry(Registries.JUKEBOX_SONG, RegistryKey.JUKEBOX_SONG, JukeboxSong.class, CraftJukeboxSong::new).delayed(), entry(Registries.BANNER_PATTERN, RegistryKey.BANNER_PATTERN, PatternType.class, CraftPatternType::new).delayed(), - + entry(Registries.PAINTING_VARIANT, RegistryKey.PAINTING_VARIANT, Art.class, CraftArt::new).delayed(), diff --git a/src/main/java/io/papermc/paper/registry/data/PaperEnchantmentRegistryEntry.java b/src/main/java/io/papermc/paper/registry/data/PaperEnchantmentRegistryEntry.java new file mode 100644 index 0000000000000000000000000000000000000000..481f5f0cfae1fada3bc3f873fb7e04c3086ea9bf diff --git a/patches/server/1032-Void-damage-configuration-API.patch b/patches/server/1032-Void-damage-configuration-API.patch index f295b3373b..30f8cf9c5a 100644 --- a/patches/server/1032-Void-damage-configuration-API.patch +++ b/patches/server/1032-Void-damage-configuration-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Void damage configuration API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index ddfc4818f091802e5999c6b99e5bc57c6f370648..e5466be840ef32e4fa17c0e9446c4d0b30a56e26 100644 +index 7093a7383c93f172fb7674799d7efe4c563fc99c..ed276c599890d9db11130d8ae0844ca364a824a6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -853,8 +853,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -854,8 +854,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void checkBelowWorld() { @@ -20,10 +20,10 @@ index ddfc4818f091802e5999c6b99e5bc57c6f370648..e5466be840ef32e4fa17c0e9446c4d0b && (!(this instanceof Player player) || !player.getAbilities().invulnerable))) { // Paper end - Configurable nether ceiling damage diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 4d75ce205d5a0d61780936aa522710f5f753b271..22bb0aaf3aebdc60a8894dc473cbeb0e58ca37b8 100644 +index 99c98a91fe7471791fca8233acf6eeba516b10ed..4836b01323abb125289982ef3ceca09d6a9cfc3b 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2700,7 +2700,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2701,7 +2701,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @Override protected void onBelowWorld() { diff --git a/patches/server/1038-Moonrise-optimisation-patches.patch b/patches/server/1038-Moonrise-optimisation-patches.patch index 2ed5270818..492290e894 100644 --- a/patches/server/1038-Moonrise-optimisation-patches.patch +++ b/patches/server/1038-Moonrise-optimisation-patches.patch @@ -28026,7 +28026,7 @@ index b7d29389a357f142237cecd75f8ca91cf1eb6b5b..e4b0dc3121101d54394a0c3a413dabf8 this.generatingStep = generationStep; this.cache = chunks; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 700ab5ef2f8ab1466c4f659cd34679dc809efbaf..b28b23c69512b054e856388f2f94d27d35347b8c 100644 +index 88299abf563a041ade1683b66b43103b0eeeea0d..61f3ee42aaad1641c92df3eb60d699b9dd5679e3 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1420,7 +1420,7 @@ public abstract class PlayerList { @@ -28416,10 +28416,10 @@ index 50040c497a819cd1229042ab3cb057d34a32cacc..1f9c436a632e4f110be61cf76fcfc3b7 + // Paper end - block counting } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb69b63c75 100644 +index ed276c599890d9db11130d8ae0844ca364a824a6..86e3d37ac9b4d5efe240c07289f88a070543b30d 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -175,7 +175,7 @@ import org.bukkit.event.player.PlayerTeleportEvent; +@@ -176,7 +176,7 @@ import org.bukkit.event.player.PlayerTeleportEvent; import org.bukkit.plugin.PluginManager; // CraftBukkit end @@ -28428,7 +28428,7 @@ index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb // CraftBukkit start private static final int CURRENT_LEVEL = 2; -@@ -460,6 +460,156 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -461,6 +461,156 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return this.dimensions.makeBoundingBox(x, y, z); } // Paper end @@ -28585,7 +28585,7 @@ index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb public Entity(EntityType<?> type, Level world) { this.id = Entity.ENTITY_COUNTER.incrementAndGet(); -@@ -1365,41 +1515,76 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1366,41 +1516,76 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } private Vec3 collide(Vec3 movement) { @@ -28690,7 +28690,7 @@ index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb } private static float[] collectCandidateStepUpHeights(AABB collisionBox, List<VoxelShape> collisions, float f, float stepHeight) { -@@ -2787,18 +2972,110 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2788,18 +2973,110 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public boolean isInWall() { @@ -28808,7 +28808,7 @@ index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb } public InteractionResult interact(Player player, InteractionHand hand) { -@@ -4271,14 +4548,17 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4272,14 +4549,17 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public Iterable<Entity> getIndirectPassengers() { @@ -28833,7 +28833,7 @@ index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb } private Iterable<Entity> getIndirectPassengers_old() { // Paper end - Optimize indirect passenger iteration -@@ -4407,82 +4687,136 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4437,82 +4717,136 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return Mth.lerp(delta, this.yRotO, this.yRot); } @@ -29028,7 +29028,7 @@ index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb public boolean touchingUnloadedChunk() { AABB axisalignedbb = this.getBoundingBox().inflate(1.0D); -@@ -4634,6 +4968,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4664,6 +4998,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.setPosRaw(x, y, z, false); } public final void setPosRaw(double x, double y, double z, boolean forceBoundingBoxUpdate) { @@ -29044,7 +29044,7 @@ index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb if (!checkPosition(this, x, y, z)) { return; } -@@ -4763,6 +5106,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4793,6 +5136,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @Override public final void setRemoved(Entity.RemovalReason entity_removalreason, EntityRemoveEvent.Cause cause) { @@ -29057,7 +29057,7 @@ index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb CraftEventFactory.callEntityRemoveEvent(this, cause); // CraftBukkit end final boolean alreadyRemoved = this.removalReason != null; // Paper - Folia schedulers -@@ -4774,7 +5123,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4804,7 +5153,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.stopRiding(); } @@ -29066,7 +29066,7 @@ index 0b7aea178cd6097a7dfefd1435b70333c6a2e0ff..6cdb0460c2d232f022ee6ea8dcbe4dcb this.levelCallback.onRemove(entity_removalreason); this.onRemoval(entity_removalreason); // Paper start - Folia schedulers -@@ -4806,7 +5155,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4836,7 +5185,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @Override public boolean shouldBeSaved() { @@ -36006,7 +36006,7 @@ index f65cc95ab28e8a3b21eac2b16bd9ebe97e56e571..0074bc0e7147dc3a8c538e796f14ac9b @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 02ee599dff305d63b44c724a2f6807d91362f675..97ebe3852f34b88e727083b539d94de62dc1ca80 100644 +index 4a1fa5b7597a06e57619bbc336d8ca117bc6f5b2..c814b68933155fe7391b325260052d9affb6841c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1432,7 +1432,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/1043-Detail-more-information-in-watchdog-dumps.patch b/patches/server/1043-Detail-more-information-in-watchdog-dumps.patch index c14568a5d7..983806d780 100644 --- a/patches/server/1043-Detail-more-information-in-watchdog-dumps.patch +++ b/patches/server/1043-Detail-more-information-in-watchdog-dumps.patch @@ -121,10 +121,10 @@ index 70efc63102b3d3727be376d42f1bef70174468a3..7b936a01888d71fe305863054471b6b4 private void tickPassenger(Entity vehicle, Entity passenger, boolean isActive) { // Paper - EAR 2 diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 88543de6e51acbe76b89aef4a84de20337d616e4..6574219da33a7b9a4906883e65b78d7806f6e67b 100644 +index 86e3d37ac9b4d5efe240c07289f88a070543b30d..a0876d3f88620bb24ef69101fc67b0dcd5dca0d2 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1171,8 +1171,43 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1172,8 +1172,43 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return this.onGround; } @@ -168,7 +168,7 @@ index 88543de6e51acbe76b89aef4a84de20337d616e4..6574219da33a7b9a4906883e65b78d78 if (this.noPhysics) { this.setPos(this.getX() + movement.x, this.getY() + movement.y, this.getZ() + movement.z); } else { -@@ -1293,6 +1328,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1294,6 +1329,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess gameprofilerfiller.pop(); } } @@ -182,7 +182,7 @@ index 88543de6e51acbe76b89aef4a84de20337d616e4..6574219da33a7b9a4906883e65b78d78 } private void applyMovementEmissionAndPlaySound(Entity.MovementEmission moveEffect, Vec3 movement, BlockPos landingPos, BlockState landingState) { -@@ -4886,7 +4928,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4916,7 +4958,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void setDeltaMovement(Vec3 velocity) { @@ -192,7 +192,7 @@ index 88543de6e51acbe76b89aef4a84de20337d616e4..6574219da33a7b9a4906883e65b78d78 } public void addDeltaMovement(Vec3 velocity) { -@@ -4992,7 +5036,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5022,7 +5066,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } // Paper end - Fix MC-4 if (this.position.x != x || this.position.y != y || this.position.z != z) { diff --git a/patches/server/1051-Lag-compensation-ticks.patch b/patches/server/1051-Lag-compensation-ticks.patch index 009e900964..4a89c2d30a 100644 --- a/patches/server/1051-Lag-compensation-ticks.patch +++ b/patches/server/1051-Lag-compensation-ticks.patch @@ -8,7 +8,7 @@ Areas affected by lag comepnsation: - Eating food items diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 196d7ffb8b362873f93224ccdd37e7efc656fd78..9dfa6bb83469620a446509656ea1ad140b2e683f 100644 +index b33b68649e67de08719b30e98650c84f4c3c18d6..e636a96ea6220fda671a31d3d9cdea468a558768 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -331,6 +331,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -63,10 +63,10 @@ index 504c996220b278c194c93e001a3b326d549868ec..a96f859a5d0c6ec692d4627a69f3c9ee if (this.hasDelayedDestroy) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 22bb0aaf3aebdc60a8894dc473cbeb0e58ca37b8..9c61225a728a2ca91a1c71dead75fc7cd93668b6 100644 +index 4836b01323abb125289982ef3ceca09d6a9cfc3b..e86314de8d908a0c3e9f17d3e163c11180cf3f59 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4050,6 +4050,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4051,6 +4051,10 @@ public abstract class LivingEntity extends Entity implements Attackable { this.resendPossiblyDesyncedDataValues(java.util.List.of(DATA_LIVING_ENTITY_FLAGS), serverPlayer); } // Paper end - Properly cancel usable items @@ -77,7 +77,7 @@ index 22bb0aaf3aebdc60a8894dc473cbeb0e58ca37b8..9c61225a728a2ca91a1c71dead75fc7c private void updatingUsingItem() { if (this.isUsingItem()) { if (ItemStack.isSameItem(this.getItemInHand(this.getUsedItemHand()), this.useItem)) { -@@ -4064,7 +4068,12 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4065,7 +4069,12 @@ public abstract class LivingEntity extends Entity implements Attackable { protected void updateUsingItem(ItemStack stack) { stack.onUseTick(this.level(), this, this.getUseItemRemainingTicks()); @@ -91,7 +91,7 @@ index 22bb0aaf3aebdc60a8894dc473cbeb0e58ca37b8..9c61225a728a2ca91a1c71dead75fc7c this.completeUsingItem(); } -@@ -4102,7 +4111,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4103,7 +4112,10 @@ public abstract class LivingEntity extends Entity implements Attackable { if (!itemstack.isEmpty() && !this.isUsingItem() || forceUpdate) { // Paper - Prevent consuming the wrong itemstack this.useItem = itemstack; @@ -103,7 +103,7 @@ index 22bb0aaf3aebdc60a8894dc473cbeb0e58ca37b8..9c61225a728a2ca91a1c71dead75fc7c if (!this.level().isClientSide) { this.setLivingEntityFlag(1, true); this.setLivingEntityFlag(2, hand == InteractionHand.OFF_HAND); -@@ -4127,7 +4139,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4128,7 +4140,10 @@ public abstract class LivingEntity extends Entity implements Attackable { } } else if (!this.isUsingItem() && !this.useItem.isEmpty()) { this.useItem = ItemStack.EMPTY; @@ -115,7 +115,7 @@ index 22bb0aaf3aebdc60a8894dc473cbeb0e58ca37b8..9c61225a728a2ca91a1c71dead75fc7c } } -@@ -4258,7 +4273,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4259,7 +4274,10 @@ public abstract class LivingEntity extends Entity implements Attackable { } this.useItem = ItemStack.EMPTY; diff --git a/work/Bukkit b/work/Bukkit -Subproject 97c5926140420c7b9e8a06b2b8348b1816f2a6b +Subproject b9df8e9f23bd025e9f99e9ebe0d46deff75717a diff --git a/work/CraftBukkit b/work/CraftBukkit -Subproject 7235ad7b04542ce214869eb1ec1966bb392aedc +Subproject df1efc0bbfc40d10132d440345c8b28aa713090 diff --git a/work/Spigot b/work/Spigot -Subproject 5eb8a94b2f4dfefed5c71a40f87a84c34d1c882 +Subproject e65d67a7a97d6502296109d5c295255ecbc0457 |