From a2248b5eede34ae8355d15129ea22e213bf40f24 Mon Sep 17 00:00:00 2001 From: Gabriel Harris-Rouquette Date: Sun, 20 Apr 2025 11:13:03 -0700 Subject: [PATCH 1/8] feat!(minecraft): update to 25w16a Breaking Changes: - BlockTypeTags.PLAYS_AMBIENT_DESERT_BLOCK_SOUNDS is split into two other tags Additions: - Added HappyGhast - Colored Harness Items - Harness related tags - HappyGhast related tags See https://minecraft.wiki/w/Java_Edition_25w16a and https://minecraft.wiki/w/Java_Edition_25w15a --- .../spongepowered/api/block/BlockTypes.java | 2 + .../api/data/BlockStateKeys.java | 2 + .../spongepowered/api/data/type/CatTypes.java | 2 +- .../api/data/type/ChickenVariants.java | 2 +- .../api/data/type/CowVariants.java | 2 +- .../api/data/type/FrogTypes.java | 2 +- .../spongepowered/api/data/type/PigTypes.java | 2 +- .../api/data/type/WolfSoundVariants.java | 2 +- .../api/effect/sound/SoundTypes.java | 50 +++++++++++++++++-- .../spongepowered/api/entity/EntityTypes.java | 3 ++ .../entity/attribute/type/AttributeTypes.java | 6 +++ .../api/entity/living/animal/HappyGhast.java | 36 +++++++++++++ .../org/spongepowered/api/item/ItemTypes.java | 36 +++++++++++++ .../api/state/IntegerStateProperties.java | 4 ++ .../api/statistic/Statistics.java | 2 + .../spongepowered/api/tag/BlockTypeTags.java | 6 ++- .../spongepowered/api/tag/EntityTypeTags.java | 4 ++ .../spongepowered/api/tag/ItemTypeTags.java | 6 +++ .../api/world/gamerule/GameRules.java | 2 + 19 files changed, 159 insertions(+), 12 deletions(-) create mode 100644 src/main/java/org/spongepowered/api/entity/living/animal/HappyGhast.java diff --git a/src/main/java/org/spongepowered/api/block/BlockTypes.java b/src/main/java/org/spongepowered/api/block/BlockTypes.java index 60c26f0052..4b74d7886b 100644 --- a/src/main/java/org/spongepowered/api/block/BlockTypes.java +++ b/src/main/java/org/spongepowered/api/block/BlockTypes.java @@ -740,6 +740,8 @@ public final class BlockTypes { public static final DefaultedRegistryReference DRAGON_WALL_HEAD = BlockTypes.key(ResourceKey.minecraft("dragon_wall_head")); + public static final DefaultedRegistryReference DRIED_GHAST = BlockTypes.key(ResourceKey.minecraft("dried_ghast")); + public static final DefaultedRegistryReference DRIED_KELP_BLOCK = BlockTypes.key(ResourceKey.minecraft("dried_kelp_block")); public static final DefaultedRegistryReference DRIPSTONE_BLOCK = BlockTypes.key(ResourceKey.minecraft("dripstone_block")); diff --git a/src/main/java/org/spongepowered/api/data/BlockStateKeys.java b/src/main/java/org/spongepowered/api/data/BlockStateKeys.java index 962179fa4a..8795f231b7 100644 --- a/src/main/java/org/spongepowered/api/data/BlockStateKeys.java +++ b/src/main/java/org/spongepowered/api/data/BlockStateKeys.java @@ -134,6 +134,8 @@ public final class BlockStateKeys { public static final Key> DRAG = BlockStateKeys.key(ResourceKey.minecraft("property/drag"), Boolean.class); + public static final Key> DRIED_GHAST_HYDRATION_LEVELS = BlockStateKeys.key(ResourceKey.minecraft("property/hydration"), Integer.class); + public static final Key> DRIPSTONE_THICKNESS = BlockStateKeys.key(ResourceKey.minecraft("property/thickness"), DripstoneSegment.class); public static final Key> DUSTED = BlockStateKeys.key(ResourceKey.minecraft("property/dusted"), Integer.class); diff --git a/src/main/java/org/spongepowered/api/data/type/CatTypes.java b/src/main/java/org/spongepowered/api/data/type/CatTypes.java index ce521f2437..65a9e8ffdd 100644 --- a/src/main/java/org/spongepowered/api/data/type/CatTypes.java +++ b/src/main/java/org/spongepowered/api/data/type/CatTypes.java @@ -70,6 +70,6 @@ public static Registry registry() { } private static DefaultedRegistryReference key(final ResourceKey location) { - return RegistryKey.of(RegistryTypes.CAT_TYPE, location).asDefaultedReference(Sponge::server); + return RegistryKey.of(RegistryTypes.CAT_TYPE, location).asScopedReference(); } } diff --git a/src/main/java/org/spongepowered/api/data/type/ChickenVariants.java b/src/main/java/org/spongepowered/api/data/type/ChickenVariants.java index 6dfb850ff4..cf512eda97 100644 --- a/src/main/java/org/spongepowered/api/data/type/ChickenVariants.java +++ b/src/main/java/org/spongepowered/api/data/type/ChickenVariants.java @@ -51,6 +51,6 @@ public static Registry registry() { } private static DefaultedRegistryReference key(final ResourceKey location) { - return RegistryKey.of(RegistryTypes.CHICKEN_VARIANT, location).asDefaultedReference(Sponge::server); + return RegistryKey.of(RegistryTypes.CHICKEN_VARIANT, location).asScopedReference(); } } diff --git a/src/main/java/org/spongepowered/api/data/type/CowVariants.java b/src/main/java/org/spongepowered/api/data/type/CowVariants.java index e5409fcc9f..e48c3ec5de 100644 --- a/src/main/java/org/spongepowered/api/data/type/CowVariants.java +++ b/src/main/java/org/spongepowered/api/data/type/CowVariants.java @@ -54,6 +54,6 @@ public static Registry registry() { } private static DefaultedRegistryReference key(final ResourceKey location) { - return RegistryKey.of(RegistryTypes.COW_VARIANT, location).asDefaultedReference(Sponge::server); + return RegistryKey.of(RegistryTypes.COW_VARIANT, location).asScopedReference(); } } diff --git a/src/main/java/org/spongepowered/api/data/type/FrogTypes.java b/src/main/java/org/spongepowered/api/data/type/FrogTypes.java index bea643eb3d..9819d8c4d0 100644 --- a/src/main/java/org/spongepowered/api/data/type/FrogTypes.java +++ b/src/main/java/org/spongepowered/api/data/type/FrogTypes.java @@ -54,6 +54,6 @@ public static Registry registry() { } private static DefaultedRegistryReference key(final ResourceKey location) { - return RegistryKey.of(RegistryTypes.FROG_TYPE, location).asDefaultedReference(Sponge::server); + return RegistryKey.of(RegistryTypes.FROG_TYPE, location).asScopedReference(); } } diff --git a/src/main/java/org/spongepowered/api/data/type/PigTypes.java b/src/main/java/org/spongepowered/api/data/type/PigTypes.java index 5712660a4a..4d3b41c9ea 100644 --- a/src/main/java/org/spongepowered/api/data/type/PigTypes.java +++ b/src/main/java/org/spongepowered/api/data/type/PigTypes.java @@ -54,6 +54,6 @@ public static Registry registry() { } private static DefaultedRegistryReference key(final ResourceKey location) { - return RegistryKey.of(RegistryTypes.PIG_TYPE, location).asDefaultedReference(Sponge::server); + return RegistryKey.of(RegistryTypes.PIG_TYPE, location).asScopedReference(); } } diff --git a/src/main/java/org/spongepowered/api/data/type/WolfSoundVariants.java b/src/main/java/org/spongepowered/api/data/type/WolfSoundVariants.java index 22e6ccf331..c01464b067 100644 --- a/src/main/java/org/spongepowered/api/data/type/WolfSoundVariants.java +++ b/src/main/java/org/spongepowered/api/data/type/WolfSoundVariants.java @@ -59,6 +59,6 @@ public static Registry registry() { } private static DefaultedRegistryReference key(final ResourceKey location) { - return RegistryKey.of(RegistryTypes.WOLF_SOUND_VARIANT, location).asDefaultedReference(Sponge::server); + return RegistryKey.of(RegistryTypes.WOLF_SOUND_VARIANT, location).asScopedReference(); } } diff --git a/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java b/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java index cc1872a110..653ebee992 100644 --- a/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java +++ b/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java @@ -584,6 +584,24 @@ public final class SoundTypes { public static final DefaultedRegistryReference BLOCK_DISPENSER_LAUNCH = SoundTypes.key(ResourceKey.minecraft("block.dispenser.launch")); + public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_AMBIENT = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.ambient")); + + public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_AMBIENT_WATER = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.ambient_water")); + + public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_BREAK = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.break")); + + public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_FALL = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.fall")); + + public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_HIT = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.hit")); + + public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_PLACE = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.place")); + + public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_PLACE_IN_WATER = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.place_in_water")); + + public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_STEP = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.step")); + + public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_TRANSITION = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.transition")); + public static final DefaultedRegistryReference BLOCK_DRIPSTONE_BLOCK_BREAK = SoundTypes.key(ResourceKey.minecraft("block.dripstone_block.break")); public static final DefaultedRegistryReference BLOCK_DRIPSTONE_BLOCK_FALL = SoundTypes.key(ResourceKey.minecraft("block.dripstone_block.fall")); @@ -594,6 +612,8 @@ public final class SoundTypes { public static final DefaultedRegistryReference BLOCK_DRIPSTONE_BLOCK_STEP = SoundTypes.key(ResourceKey.minecraft("block.dripstone_block.step")); + public static final DefaultedRegistryReference BLOCK_DRY_GRASS_AMBIENT = SoundTypes.key(ResourceKey.minecraft("block.dry_grass.ambient")); + public static final DefaultedRegistryReference BLOCK_ENCHANTMENT_TABLE_USE = SoundTypes.key(ResourceKey.minecraft("block.enchantment_table.use")); public static final DefaultedRegistryReference BLOCK_ENDER_CHEST_CLOSE = SoundTypes.key(ResourceKey.minecraft("block.ender_chest.close")); @@ -1208,8 +1228,6 @@ public final class SoundTypes { public static final DefaultedRegistryReference BLOCK_SAND_STEP = SoundTypes.key(ResourceKey.minecraft("block.sand.step")); - public static final DefaultedRegistryReference BLOCK_SAND_WIND = SoundTypes.key(ResourceKey.minecraft("block.sand.wind")); - public static final DefaultedRegistryReference BLOCK_SCAFFOLDING_BREAK = SoundTypes.key(ResourceKey.minecraft("block.scaffolding.break")); public static final DefaultedRegistryReference BLOCK_SCAFFOLDING_FALL = SoundTypes.key(ResourceKey.minecraft("block.scaffolding.fall")); @@ -2080,6 +2098,14 @@ public final class SoundTypes { public static final DefaultedRegistryReference ENTITY_GENERIC_SWIM = SoundTypes.key(ResourceKey.minecraft("entity.generic.swim")); + public static final DefaultedRegistryReference ENTITY_GHASTLING_AMBIENT = SoundTypes.key(ResourceKey.minecraft("entity.ghastling.ambient")); + + public static final DefaultedRegistryReference ENTITY_GHASTLING_DEATH = SoundTypes.key(ResourceKey.minecraft("entity.ghastling.death")); + + public static final DefaultedRegistryReference ENTITY_GHASTLING_HURT = SoundTypes.key(ResourceKey.minecraft("entity.ghastling.hurt")); + + public static final DefaultedRegistryReference ENTITY_GHASTLING_SPAWN = SoundTypes.key(ResourceKey.minecraft("entity.ghastling.spawn")); + public static final DefaultedRegistryReference ENTITY_GHAST_AMBIENT = SoundTypes.key(ResourceKey.minecraft("entity.ghast.ambient")); public static final DefaultedRegistryReference ENTITY_GHAST_DEATH = SoundTypes.key(ResourceKey.minecraft("entity.ghast.death")); @@ -2162,6 +2188,22 @@ public final class SoundTypes { public static final DefaultedRegistryReference ENTITY_GUARDIAN_HURT_LAND = SoundTypes.key(ResourceKey.minecraft("entity.guardian.hurt_land")); + public static final DefaultedRegistryReference ENTITY_HAPPY_GHAST_AMBIENT = SoundTypes.key(ResourceKey.minecraft("entity.happy_ghast.ambient")); + + public static final DefaultedRegistryReference ENTITY_HAPPY_GHAST_DEATH = SoundTypes.key(ResourceKey.minecraft("entity.happy_ghast.death")); + + public static final DefaultedRegistryReference ENTITY_HAPPY_GHAST_EQUIP = SoundTypes.key(ResourceKey.minecraft("entity.happy_ghast.equip")); + + public static final DefaultedRegistryReference ENTITY_HAPPY_GHAST_HARNESS_GOGGLES_DOWN = SoundTypes.key(ResourceKey.minecraft("entity.happy_ghast.harness_goggles_down")); + + public static final DefaultedRegistryReference ENTITY_HAPPY_GHAST_HARNESS_GOGGLES_UP = SoundTypes.key(ResourceKey.minecraft("entity.happy_ghast.harness_goggles_up")); + + public static final DefaultedRegistryReference ENTITY_HAPPY_GHAST_HURT = SoundTypes.key(ResourceKey.minecraft("entity.happy_ghast.hurt")); + + public static final DefaultedRegistryReference ENTITY_HAPPY_GHAST_RIDING = SoundTypes.key(ResourceKey.minecraft("entity.happy_ghast.riding")); + + public static final DefaultedRegistryReference ENTITY_HAPPY_GHAST_UNEQUIP = SoundTypes.key(ResourceKey.minecraft("entity.happy_ghast.unequip")); + public static final DefaultedRegistryReference ENTITY_HOGLIN_AMBIENT = SoundTypes.key(ResourceKey.minecraft("entity.hoglin.ambient")); public static final DefaultedRegistryReference ENTITY_HOGLIN_ANGRY = SoundTypes.key(ResourceKey.minecraft("entity.hoglin.angry")); @@ -2570,8 +2612,6 @@ public final class SoundTypes { public static final DefaultedRegistryReference ENTITY_POLAR_BEAR_WARNING = SoundTypes.key(ResourceKey.minecraft("entity.polar_bear.warning")); - public static final DefaultedRegistryReference ENTITY_PUFFER_FISH_AMBIENT = SoundTypes.key(ResourceKey.minecraft("entity.puffer_fish.ambient")); - public static final DefaultedRegistryReference ENTITY_PUFFER_FISH_BLOW_OUT = SoundTypes.key(ResourceKey.minecraft("entity.puffer_fish.blow_out")); public static final DefaultedRegistryReference ENTITY_PUFFER_FISH_BLOW_UP = SoundTypes.key(ResourceKey.minecraft("entity.puffer_fish.blow_up")); @@ -3282,6 +3322,8 @@ public final class SoundTypes { public static final DefaultedRegistryReference ITEM_OMINOUS_BOTTLE_DISPOSE = SoundTypes.key(ResourceKey.minecraft("item.ominous_bottle.dispose")); + public static final DefaultedRegistryReference ITEM_SHEARS_SNIP = SoundTypes.key(ResourceKey.minecraft("item.shears.snip")); + public static final DefaultedRegistryReference ITEM_SHIELD_BLOCK = SoundTypes.key(ResourceKey.minecraft("item.shield.block")); public static final DefaultedRegistryReference ITEM_SHIELD_BREAK = SoundTypes.key(ResourceKey.minecraft("item.shield.break")); diff --git a/src/main/java/org/spongepowered/api/entity/EntityTypes.java b/src/main/java/org/spongepowered/api/entity/EntityTypes.java index 98493c7bd6..5cd693e52e 100644 --- a/src/main/java/org/spongepowered/api/entity/EntityTypes.java +++ b/src/main/java/org/spongepowered/api/entity/EntityTypes.java @@ -46,6 +46,7 @@ import org.spongepowered.api.entity.living.animal.Chicken; import org.spongepowered.api.entity.living.animal.Fox; import org.spongepowered.api.entity.living.animal.Goat; +import org.spongepowered.api.entity.living.animal.HappyGhast; import org.spongepowered.api.entity.living.animal.Hoglin; import org.spongepowered.api.entity.living.animal.Ocelot; import org.spongepowered.api.entity.living.animal.Panda; @@ -290,6 +291,8 @@ public final class EntityTypes { public static final DefaultedRegistryReference> GUARDIAN = EntityTypes.key(ResourceKey.minecraft("guardian")); + public static final DefaultedRegistryReference> HAPPY_GHAST = EntityTypes.key(ResourceKey.minecraft("happy_ghast")); + public static final DefaultedRegistryReference> HOGLIN = EntityTypes.key(ResourceKey.minecraft("hoglin")); public static final DefaultedRegistryReference> HOPPER_MINECART = EntityTypes.key(ResourceKey.minecraft("hopper_minecart")); diff --git a/src/main/java/org/spongepowered/api/entity/attribute/type/AttributeTypes.java b/src/main/java/org/spongepowered/api/entity/attribute/type/AttributeTypes.java index 182ac2f1ec..ec1034f990 100644 --- a/src/main/java/org/spongepowered/api/entity/attribute/type/AttributeTypes.java +++ b/src/main/java/org/spongepowered/api/entity/attribute/type/AttributeTypes.java @@ -56,6 +56,8 @@ public final class AttributeTypes { public static final DefaultedRegistryReference BURNING_TIME = AttributeTypes.key(ResourceKey.minecraft("burning_time")); + public static final DefaultedRegistryReference CAMERA_DISTANCE = AttributeTypes.key(ResourceKey.minecraft("camera_distance")); + public static final DefaultedRegistryReference ENTITY_INTERACTION_RANGE = AttributeTypes.key(ResourceKey.minecraft("entity_interaction_range")); public static final DefaultedRegistryReference EXPLOSION_KNOCKBACK_RESISTANCE = AttributeTypes.key(ResourceKey.minecraft("explosion_knockback_resistance")); @@ -104,6 +106,10 @@ public final class AttributeTypes { public static final DefaultedRegistryReference WATER_MOVEMENT_EFFICIENCY = AttributeTypes.key(ResourceKey.minecraft("water_movement_efficiency")); + public static final DefaultedRegistryReference WAYPOINT_RECEIVE_RANGE = AttributeTypes.key(ResourceKey.minecraft("waypoint_receive_range")); + + public static final DefaultedRegistryReference WAYPOINT_TRANSMIT_RANGE = AttributeTypes.key(ResourceKey.minecraft("waypoint_transmit_range")); + private AttributeTypes() { } diff --git a/src/main/java/org/spongepowered/api/entity/living/animal/HappyGhast.java b/src/main/java/org/spongepowered/api/entity/living/animal/HappyGhast.java new file mode 100644 index 0000000000..a425258ab8 --- /dev/null +++ b/src/main/java/org/spongepowered/api/entity/living/animal/HappyGhast.java @@ -0,0 +1,36 @@ +/* + * This file is part of SpongeAPI, licensed under the MIT License (MIT). + * + * Copyright (c) SpongePowered + * Copyright (c) contributors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package org.spongepowered.api.entity.living.animal; + +import org.spongepowered.api.util.annotation.Experimental; + +/** + * A Happy Ghast that is passive and normally does not attack players. + * + * @see Minecraft Wiki + */ +@Experimental("summer_drop") +public interface HappyGhast extends Animal { +} diff --git a/src/main/java/org/spongepowered/api/item/ItemTypes.java b/src/main/java/org/spongepowered/api/item/ItemTypes.java index 8908b8a29b..0657d9a706 100644 --- a/src/main/java/org/spongepowered/api/item/ItemTypes.java +++ b/src/main/java/org/spongepowered/api/item/ItemTypes.java @@ -254,6 +254,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference BLACK_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("black_glazed_terracotta")); + public static final DefaultedRegistryReference BLACK_HARNESS = ItemTypes.key(ResourceKey.minecraft("black_harness")); + public static final DefaultedRegistryReference BLACK_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("black_shulker_box")); public static final DefaultedRegistryReference BLACK_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("black_stained_glass")); @@ -294,6 +296,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference BLUE_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("blue_glazed_terracotta")); + public static final DefaultedRegistryReference BLUE_HARNESS = ItemTypes.key(ResourceKey.minecraft("blue_harness")); + public static final DefaultedRegistryReference BLUE_ICE = ItemTypes.key(ResourceKey.minecraft("blue_ice")); public static final DefaultedRegistryReference BLUE_ORCHID = ItemTypes.key(ResourceKey.minecraft("blue_orchid")); @@ -374,6 +378,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference BROWN_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("brown_glazed_terracotta")); + public static final DefaultedRegistryReference BROWN_HARNESS = ItemTypes.key(ResourceKey.minecraft("brown_harness")); + public static final DefaultedRegistryReference BROWN_MUSHROOM = ItemTypes.key(ResourceKey.minecraft("brown_mushroom")); public static final DefaultedRegistryReference BROWN_MUSHROOM_BLOCK = ItemTypes.key(ResourceKey.minecraft("brown_mushroom_block")); @@ -706,6 +712,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference CYAN_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("cyan_glazed_terracotta")); + public static final DefaultedRegistryReference CYAN_HARNESS = ItemTypes.key(ResourceKey.minecraft("cyan_harness")); + public static final DefaultedRegistryReference CYAN_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("cyan_shulker_box")); public static final DefaultedRegistryReference CYAN_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("cyan_stained_glass")); @@ -888,6 +896,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference DRAGON_HEAD = ItemTypes.key(ResourceKey.minecraft("dragon_head")); + public static final DefaultedRegistryReference DRIED_GHAST = ItemTypes.key(ResourceKey.minecraft("dried_ghast")); + public static final DefaultedRegistryReference DRIED_KELP = ItemTypes.key(ResourceKey.minecraft("dried_kelp")); public static final DefaultedRegistryReference DRIED_KELP_BLOCK = ItemTypes.key(ResourceKey.minecraft("dried_kelp_block")); @@ -1130,6 +1140,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference GRAY_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("gray_glazed_terracotta")); + public static final DefaultedRegistryReference GRAY_HARNESS = ItemTypes.key(ResourceKey.minecraft("gray_harness")); + public static final DefaultedRegistryReference GRAY_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("gray_shulker_box")); public static final DefaultedRegistryReference GRAY_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("gray_stained_glass")); @@ -1158,6 +1170,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference GREEN_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("green_glazed_terracotta")); + public static final DefaultedRegistryReference GREEN_HARNESS = ItemTypes.key(ResourceKey.minecraft("green_harness")); + public static final DefaultedRegistryReference GREEN_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("green_shulker_box")); public static final DefaultedRegistryReference GREEN_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("green_stained_glass")); @@ -1180,6 +1194,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference HANGING_ROOTS = ItemTypes.key(ResourceKey.minecraft("hanging_roots")); + public static final DefaultedRegistryReference HAPPY_GHAST_SPAWN_EGG = ItemTypes.key(ResourceKey.minecraft("happy_ghast_spawn_egg")); + public static final DefaultedRegistryReference HAY_BLOCK = ItemTypes.key(ResourceKey.minecraft("hay_block")); public static final DefaultedRegistryReference HEARTBREAK_POTTERY_SHERD = ItemTypes.key(ResourceKey.minecraft("heartbreak_pottery_sherd")); @@ -1378,6 +1394,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference LIGHT_BLUE_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("light_blue_glazed_terracotta")); + public static final DefaultedRegistryReference LIGHT_BLUE_HARNESS = ItemTypes.key(ResourceKey.minecraft("light_blue_harness")); + public static final DefaultedRegistryReference LIGHT_BLUE_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("light_blue_shulker_box")); public static final DefaultedRegistryReference LIGHT_BLUE_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("light_blue_stained_glass")); @@ -1406,6 +1424,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference LIGHT_GRAY_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("light_gray_glazed_terracotta")); + public static final DefaultedRegistryReference LIGHT_GRAY_HARNESS = ItemTypes.key(ResourceKey.minecraft("light_gray_harness")); + public static final DefaultedRegistryReference LIGHT_GRAY_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("light_gray_shulker_box")); public static final DefaultedRegistryReference LIGHT_GRAY_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("light_gray_stained_glass")); @@ -1442,6 +1462,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference LIME_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("lime_glazed_terracotta")); + public static final DefaultedRegistryReference LIME_HARNESS = ItemTypes.key(ResourceKey.minecraft("lime_harness")); + public static final DefaultedRegistryReference LIME_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("lime_shulker_box")); public static final DefaultedRegistryReference LIME_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("lime_stained_glass")); @@ -1480,6 +1502,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference MAGENTA_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("magenta_glazed_terracotta")); + public static final DefaultedRegistryReference MAGENTA_HARNESS = ItemTypes.key(ResourceKey.minecraft("magenta_harness")); + public static final DefaultedRegistryReference MAGENTA_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("magenta_shulker_box")); public static final DefaultedRegistryReference MAGENTA_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("magenta_stained_glass")); @@ -1758,6 +1782,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference ORANGE_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("orange_glazed_terracotta")); + public static final DefaultedRegistryReference ORANGE_HARNESS = ItemTypes.key(ResourceKey.minecraft("orange_harness")); + public static final DefaultedRegistryReference ORANGE_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("orange_shulker_box")); public static final DefaultedRegistryReference ORANGE_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("orange_stained_glass")); @@ -1882,6 +1908,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference PINK_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("pink_glazed_terracotta")); + public static final DefaultedRegistryReference PINK_HARNESS = ItemTypes.key(ResourceKey.minecraft("pink_harness")); + public static final DefaultedRegistryReference PINK_PETALS = ItemTypes.key(ResourceKey.minecraft("pink_petals")); public static final DefaultedRegistryReference PINK_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("pink_shulker_box")); @@ -2034,6 +2062,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference PURPLE_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("purple_glazed_terracotta")); + public static final DefaultedRegistryReference PURPLE_HARNESS = ItemTypes.key(ResourceKey.minecraft("purple_harness")); + public static final DefaultedRegistryReference PURPLE_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("purple_shulker_box")); public static final DefaultedRegistryReference PURPLE_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("purple_stained_glass")); @@ -2122,6 +2152,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference RED_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("red_glazed_terracotta")); + public static final DefaultedRegistryReference RED_HARNESS = ItemTypes.key(ResourceKey.minecraft("red_harness")); + public static final DefaultedRegistryReference RED_MUSHROOM = ItemTypes.key(ResourceKey.minecraft("red_mushroom")); public static final DefaultedRegistryReference RED_MUSHROOM_BLOCK = ItemTypes.key(ResourceKey.minecraft("red_mushroom_block")); @@ -2746,6 +2778,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference WHITE_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("white_glazed_terracotta")); + public static final DefaultedRegistryReference WHITE_HARNESS = ItemTypes.key(ResourceKey.minecraft("white_harness")); + public static final DefaultedRegistryReference WHITE_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("white_shulker_box")); public static final DefaultedRegistryReference WHITE_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("white_stained_glass")); @@ -2810,6 +2844,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference YELLOW_GLAZED_TERRACOTTA = ItemTypes.key(ResourceKey.minecraft("yellow_glazed_terracotta")); + public static final DefaultedRegistryReference YELLOW_HARNESS = ItemTypes.key(ResourceKey.minecraft("yellow_harness")); + public static final DefaultedRegistryReference YELLOW_SHULKER_BOX = ItemTypes.key(ResourceKey.minecraft("yellow_shulker_box")); public static final DefaultedRegistryReference YELLOW_STAINED_GLASS = ItemTypes.key(ResourceKey.minecraft("yellow_stained_glass")); diff --git a/src/main/java/org/spongepowered/api/state/IntegerStateProperties.java b/src/main/java/org/spongepowered/api/state/IntegerStateProperties.java index 726a10583c..4ecc6fc9d3 100644 --- a/src/main/java/org/spongepowered/api/state/IntegerStateProperties.java +++ b/src/main/java/org/spongepowered/api/state/IntegerStateProperties.java @@ -81,6 +81,10 @@ public static IntegerStateProperty property_DISTANCE() { return IntegerStateProperty.of("DISTANCE"); } + public static IntegerStateProperty property_DRIED_GHAST_HYDRATION_LEVELS() { + return IntegerStateProperty.of("DRIED_GHAST_HYDRATION_LEVELS"); + } + public static IntegerStateProperty property_DUSTED() { return IntegerStateProperty.of("DUSTED"); } diff --git a/src/main/java/org/spongepowered/api/statistic/Statistics.java b/src/main/java/org/spongepowered/api/statistic/Statistics.java index 228d0426ab..003d4f8d24 100644 --- a/src/main/java/org/spongepowered/api/statistic/Statistics.java +++ b/src/main/java/org/spongepowered/api/statistic/Statistics.java @@ -88,6 +88,8 @@ public final class Statistics { public static final DefaultedRegistryReference FLY_ONE_CM = Statistics.key(ResourceKey.minecraft("fly_one_cm")); + public static final DefaultedRegistryReference HAPPY_GHAST_ONE_CM = Statistics.key(ResourceKey.minecraft("happy_ghast_one_cm")); + public static final DefaultedRegistryReference HORSE_ONE_CM = Statistics.key(ResourceKey.minecraft("horse_one_cm")); public static final DefaultedRegistryReference INSPECT_DISPENSER = Statistics.key(ResourceKey.minecraft("inspect_dispenser")); diff --git a/src/main/java/org/spongepowered/api/tag/BlockTypeTags.java b/src/main/java/org/spongepowered/api/tag/BlockTypeTags.java index e2f0c26bc1..c566fdffc6 100644 --- a/src/main/java/org/spongepowered/api/tag/BlockTypeTags.java +++ b/src/main/java/org/spongepowered/api/tag/BlockTypeTags.java @@ -289,8 +289,6 @@ public final class BlockTypeTags { public static final Tag PLANKS = BlockTypeTags.key(ResourceKey.minecraft("planks")); - public static final Tag PLAYS_AMBIENT_DESERT_BLOCK_SOUNDS = BlockTypeTags.key(ResourceKey.minecraft("plays_ambient_desert_block_sounds")); - public static final Tag POLAR_BEARS_SPAWNABLE_ON_ALTERNATE = BlockTypeTags.key(ResourceKey.minecraft("polar_bears_spawnable_on_alternate")); public static final Tag PORTALS = BlockTypeTags.key(ResourceKey.minecraft("portals")); @@ -373,6 +371,10 @@ public final class BlockTypeTags { public static final Tag TRAPDOORS = BlockTypeTags.key(ResourceKey.minecraft("trapdoors")); + public static final Tag TRIGGERS_AMBIENT_DESERT_DRY_VEGETATION_BLOCK_SOUNDS = BlockTypeTags.key(ResourceKey.minecraft("triggers_ambient_desert_dry_vegetation_block_sounds")); + + public static final Tag TRIGGERS_AMBIENT_DESERT_SAND_BLOCK_SOUNDS = BlockTypeTags.key(ResourceKey.minecraft("triggers_ambient_desert_sand_block_sounds")); + public static final Tag UNDERWATER_BONEMEALS = BlockTypeTags.key(ResourceKey.minecraft("underwater_bonemeals")); public static final Tag UNSTABLE_BOTTOM_CENTER = BlockTypeTags.key(ResourceKey.minecraft("unstable_bottom_center")); diff --git a/src/main/java/org/spongepowered/api/tag/EntityTypeTags.java b/src/main/java/org/spongepowered/api/tag/EntityTypeTags.java index ee2893a9b2..bd259c088f 100644 --- a/src/main/java/org/spongepowered/api/tag/EntityTypeTags.java +++ b/src/main/java/org/spongepowered/api/tag/EntityTypeTags.java @@ -53,6 +53,8 @@ public final class EntityTypeTags { public static final Tag> CAN_BREATHE_UNDER_WATER = EntityTypeTags.key(ResourceKey.minecraft("can_breathe_under_water")); + public static final Tag> CAN_EQUIP_HARNESS = EntityTypeTags.key(ResourceKey.minecraft("can_equip_harness")); + public static final Tag> CAN_EQUIP_SADDLE = EntityTypeTags.key(ResourceKey.minecraft("can_equip_saddle")); public static final Tag> CAN_TURN_IN_BOATS = EntityTypeTags.key(ResourceKey.minecraft("can_turn_in_boats")); @@ -65,6 +67,8 @@ public final class EntityTypeTags { public static final Tag> FALL_DAMAGE_IMMUNE = EntityTypeTags.key(ResourceKey.minecraft("fall_damage_immune")); + public static final Tag> FOLLOWABLE_FRIENDLY_MOBS = EntityTypeTags.key(ResourceKey.minecraft("followable_friendly_mobs")); + public static final Tag> FREEZE_HURTS_EXTRA_TYPES = EntityTypeTags.key(ResourceKey.minecraft("freeze_hurts_extra_types")); public static final Tag> FREEZE_IMMUNE_ENTITY_TYPES = EntityTypeTags.key(ResourceKey.minecraft("freeze_immune_entity_types")); diff --git a/src/main/java/org/spongepowered/api/tag/ItemTypeTags.java b/src/main/java/org/spongepowered/api/tag/ItemTypeTags.java index 69148331d2..11ed1cbe71 100644 --- a/src/main/java/org/spongepowered/api/tag/ItemTypeTags.java +++ b/src/main/java/org/spongepowered/api/tag/ItemTypeTags.java @@ -201,6 +201,12 @@ public final class ItemTypeTags { public static final Tag HANGING_SIGNS = ItemTypeTags.key(ResourceKey.minecraft("hanging_signs")); + public static final Tag HAPPY_GHAST_FOOD = ItemTypeTags.key(ResourceKey.minecraft("happy_ghast_food")); + + public static final Tag HAPPY_GHAST_TEMPT_ITEMS = ItemTypeTags.key(ResourceKey.minecraft("happy_ghast_tempt_items")); + + public static final Tag HARNESSES = ItemTypeTags.key(ResourceKey.minecraft("harnesses")); + public static final Tag HEAD_ARMOR = ItemTypeTags.key(ResourceKey.minecraft("head_armor")); public static final Tag HOES = ItemTypeTags.key(ResourceKey.minecraft("hoes")); diff --git a/src/main/java/org/spongepowered/api/world/gamerule/GameRules.java b/src/main/java/org/spongepowered/api/world/gamerule/GameRules.java index 53c243e622..06638f3d6a 100644 --- a/src/main/java/org/spongepowered/api/world/gamerule/GameRules.java +++ b/src/main/java/org/spongepowered/api/world/gamerule/GameRules.java @@ -148,6 +148,8 @@ public final class GameRules { public static final DefaultedRegistryReference> UNIVERSAL_ANGER = GameRules.key(ResourceKey.sponge("universal_anger")); + public static final DefaultedRegistryReference> USE_LOCATOR_BAR = GameRules.key(ResourceKey.sponge("use_locator_bar")); + public static final DefaultedRegistryReference> WATER_SOURCE_CONVERSION = GameRules.key(ResourceKey.sponge("water_source_conversion")); private GameRules() { From faf25d0f6ca8f9fdf490fafea2c7b91f3e25e322 Mon Sep 17 00:00:00 2001 From: Gabriel Harris-Rouquette Date: Sun, 20 Apr 2025 11:13:39 -0700 Subject: [PATCH 2/8] chore: bump towards the next major API version --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index bf4d9f5bc6..5b6a538ff3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,5 @@ group=org.spongepowered -version=15.0.0-SNAPSHOT +version=16.0.0-SNAPSHOT organization=SpongePowered projectUrl=https://www.spongepowered.org projectDescription=A plugin API for Minecraft: Java Edition From 3762c5eb4725052705efdab2ffa9791368a7d66e Mon Sep 17 00:00:00 2001 From: Gabriel Harris-Rouquette Date: Sat, 10 May 2025 17:41:13 -0700 Subject: [PATCH 3/8] feat!(minecraft): update to 25w17a Mainly additions/changes from the previous snapshot. See: https://minecraft.wiki/w/Java_Edition_25w17a --- src/main/java/org/spongepowered/api/tag/BlockTypeTags.java | 4 ++++ .../java/org/spongepowered/api/world/gamerule/GameRules.java | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/spongepowered/api/tag/BlockTypeTags.java b/src/main/java/org/spongepowered/api/tag/BlockTypeTags.java index c566fdffc6..b1d80fcbae 100644 --- a/src/main/java/org/spongepowered/api/tag/BlockTypeTags.java +++ b/src/main/java/org/spongepowered/api/tag/BlockTypeTags.java @@ -195,6 +195,8 @@ public final class BlockTypeTags { public static final Tag GUARDED_BY_PIGLINS = BlockTypeTags.key(ResourceKey.minecraft("guarded_by_piglins")); + public static final Tag HAPPY_GHAST_AVOIDS = BlockTypeTags.key(ResourceKey.minecraft("happy_ghast_avoids")); + public static final Tag HOGLIN_REPELLENTS = BlockTypeTags.key(ResourceKey.minecraft("hoglin_repellents")); public static final Tag ICE = BlockTypeTags.key(ResourceKey.minecraft("ice")); @@ -375,6 +377,8 @@ public final class BlockTypeTags { public static final Tag TRIGGERS_AMBIENT_DESERT_SAND_BLOCK_SOUNDS = BlockTypeTags.key(ResourceKey.minecraft("triggers_ambient_desert_sand_block_sounds")); + public static final Tag TRIGGERS_AMBIENT_DRIED_GHAST_BLOCK_SOUNDS = BlockTypeTags.key(ResourceKey.minecraft("triggers_ambient_dried_ghast_block_sounds")); + public static final Tag UNDERWATER_BONEMEALS = BlockTypeTags.key(ResourceKey.minecraft("underwater_bonemeals")); public static final Tag UNSTABLE_BOTTOM_CENTER = BlockTypeTags.key(ResourceKey.minecraft("unstable_bottom_center")); diff --git a/src/main/java/org/spongepowered/api/world/gamerule/GameRules.java b/src/main/java/org/spongepowered/api/world/gamerule/GameRules.java index 06638f3d6a..3a41dda626 100644 --- a/src/main/java/org/spongepowered/api/world/gamerule/GameRules.java +++ b/src/main/java/org/spongepowered/api/world/gamerule/GameRules.java @@ -102,6 +102,8 @@ public final class GameRules { public static final DefaultedRegistryReference> LAVA_SOURCE_CONVERSION = GameRules.key(ResourceKey.sponge("lava_source_conversion")); + public static final DefaultedRegistryReference> LOCATOR_BAR = GameRules.key(ResourceKey.sponge("locator_bar")); + public static final DefaultedRegistryReference> LOG_ADMIN_COMMANDS = GameRules.key(ResourceKey.sponge("log_admin_commands")); public static final DefaultedRegistryReference> MAX_COMMAND_CHAIN_LENGTH = GameRules.key(ResourceKey.sponge("max_command_chain_length")); @@ -148,8 +150,6 @@ public final class GameRules { public static final DefaultedRegistryReference> UNIVERSAL_ANGER = GameRules.key(ResourceKey.sponge("universal_anger")); - public static final DefaultedRegistryReference> USE_LOCATOR_BAR = GameRules.key(ResourceKey.sponge("use_locator_bar")); - public static final DefaultedRegistryReference> WATER_SOURCE_CONVERSION = GameRules.key(ResourceKey.sponge("water_source_conversion")); private GameRules() { From 7ec9a87f889f0f4331438d5faa72b08a3026d873 Mon Sep 17 00:00:00 2001 From: Gabriel Harris-Rouquette Date: Sun, 11 May 2025 10:14:36 -0700 Subject: [PATCH 4/8] feat(minecraft): update to 25w19a Small breaking change within the snapshot series for sound type See: https://minecraft.wiki/w/Java_Edition_25w19a --- .../java/org/spongepowered/api/effect/sound/SoundTypes.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java b/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java index 653ebee992..960e48774d 100644 --- a/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java +++ b/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java @@ -592,8 +592,6 @@ public final class SoundTypes { public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_FALL = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.fall")); - public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_HIT = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.hit")); - public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_PLACE = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.place")); public static final DefaultedRegistryReference BLOCK_DRIED_GHAST_PLACE_IN_WATER = SoundTypes.key(ResourceKey.minecraft("block.dried_ghast.place_in_water")); From a7a3f062111befd90329c32e14bf9229cb99f1bd Mon Sep 17 00:00:00 2001 From: Gabriel Harris-Rouquette Date: Sat, 7 Jun 2025 13:01:09 -0700 Subject: [PATCH 5/8] feat(minecraft): update to 25w20a Mainly adding the new music disc references See: https://minecraft.wiki/w/Java_Edition_25w20a --- .../java/org/spongepowered/api/effect/sound/SoundTypes.java | 2 ++ .../org/spongepowered/api/effect/sound/music/MusicDiscs.java | 2 ++ src/main/java/org/spongepowered/api/item/ItemTypes.java | 2 ++ 3 files changed, 6 insertions(+) diff --git a/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java b/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java index 960e48774d..738ef23a1f 100644 --- a/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java +++ b/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java @@ -3396,6 +3396,8 @@ public final class SoundTypes { public static final DefaultedRegistryReference MUSIC_DISC_STRAD = SoundTypes.key(ResourceKey.minecraft("music_disc.strad")); + public static final DefaultedRegistryReference MUSIC_DISC_TEARS = SoundTypes.key(ResourceKey.minecraft("music_disc.tears")); + public static final DefaultedRegistryReference MUSIC_DISC_WAIT = SoundTypes.key(ResourceKey.minecraft("music_disc.wait")); public static final DefaultedRegistryReference MUSIC_DISC_WARD = SoundTypes.key(ResourceKey.minecraft("music_disc.ward")); diff --git a/src/main/java/org/spongepowered/api/effect/sound/music/MusicDiscs.java b/src/main/java/org/spongepowered/api/effect/sound/music/MusicDiscs.java index 4c20a109fb..bdd4473a8b 100644 --- a/src/main/java/org/spongepowered/api/effect/sound/music/MusicDiscs.java +++ b/src/main/java/org/spongepowered/api/effect/sound/music/MusicDiscs.java @@ -72,6 +72,8 @@ public final class MusicDiscs { public static final DefaultedRegistryReference STRAD = MusicDiscs.key(ResourceKey.minecraft("strad")); + public static final DefaultedRegistryReference TEARS = MusicDiscs.key(ResourceKey.minecraft("tears")); + public static final DefaultedRegistryReference THIRTEEN = MusicDiscs.key(ResourceKey.minecraft("13")); public static final DefaultedRegistryReference WAIT = MusicDiscs.key(ResourceKey.minecraft("wait")); diff --git a/src/main/java/org/spongepowered/api/item/ItemTypes.java b/src/main/java/org/spongepowered/api/item/ItemTypes.java index 0657d9a706..81a5aa8947 100644 --- a/src/main/java/org/spongepowered/api/item/ItemTypes.java +++ b/src/main/java/org/spongepowered/api/item/ItemTypes.java @@ -1650,6 +1650,8 @@ public final class ItemTypes { public static final DefaultedRegistryReference MUSIC_DISC_STRAD = ItemTypes.key(ResourceKey.minecraft("music_disc_strad")); + public static final DefaultedRegistryReference MUSIC_DISC_TEARS = ItemTypes.key(ResourceKey.minecraft("music_disc_tears")); + public static final DefaultedRegistryReference MUSIC_DISC_WAIT = ItemTypes.key(ResourceKey.minecraft("music_disc_wait")); public static final DefaultedRegistryReference MUSIC_DISC_WARD = ItemTypes.key(ResourceKey.minecraft("music_disc_ward")); From b09d5dcb1e6f1111f0809686938b34d5f86a0bef Mon Sep 17 00:00:00 2001 From: Gabriel Harris-Rouquette Date: Sat, 7 Jun 2025 13:20:18 -0700 Subject: [PATCH 6/8] feat(minecraft): update to 25w21a Small changes to leash sound registered names. See: https://minecraft.wiki/w/Java_Edition_25w21a --- .../api/effect/sound/SoundTypes.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java b/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java index 738ef23a1f..bfbdba93a6 100644 --- a/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java +++ b/src/main/java/org/spongepowered/api/effect/sound/SoundTypes.java @@ -2306,10 +2306,6 @@ public final class SoundTypes { public static final DefaultedRegistryReference ENTITY_ITEM_PICKUP = SoundTypes.key(ResourceKey.minecraft("entity.item.pickup")); - public static final DefaultedRegistryReference ENTITY_LEASH_KNOT_BREAK = SoundTypes.key(ResourceKey.minecraft("entity.leash_knot.break")); - - public static final DefaultedRegistryReference ENTITY_LEASH_KNOT_PLACE = SoundTypes.key(ResourceKey.minecraft("entity.leash_knot.place")); - public static final DefaultedRegistryReference ENTITY_LIGHTNING_BOLT_IMPACT = SoundTypes.key(ResourceKey.minecraft("entity.lightning_bolt.impact")); public static final DefaultedRegistryReference ENTITY_LIGHTNING_BOLT_THUNDER = SoundTypes.key(ResourceKey.minecraft("entity.lightning_bolt.thunder")); @@ -3306,8 +3302,18 @@ public final class SoundTypes { public static final DefaultedRegistryReference ITEM_HONEY_BOTTLE_DRINK = SoundTypes.key(ResourceKey.minecraft("item.honey_bottle.drink")); + public static final DefaultedRegistryReference ITEM_HORSE_ARMOR_UNEQUIP = SoundTypes.key(ResourceKey.minecraft("item.horse_armor.unequip")); + public static final DefaultedRegistryReference ITEM_INK_SAC_USE = SoundTypes.key(ResourceKey.minecraft("item.ink_sac.use")); + public static final DefaultedRegistryReference ITEM_LEAD_BREAK = SoundTypes.key(ResourceKey.minecraft("item.lead.break")); + + public static final DefaultedRegistryReference ITEM_LEAD_TIED = SoundTypes.key(ResourceKey.minecraft("item.lead.tied")); + + public static final DefaultedRegistryReference ITEM_LEAD_UNTIED = SoundTypes.key(ResourceKey.minecraft("item.lead.untied")); + + public static final DefaultedRegistryReference ITEM_LLAMA_CARPET_UNEQUIP = SoundTypes.key(ResourceKey.minecraft("item.llama_carpet.unequip")); + public static final DefaultedRegistryReference ITEM_LODESTONE_COMPASS_LOCK = SoundTypes.key(ResourceKey.minecraft("item.lodestone_compass.lock")); public static final DefaultedRegistryReference ITEM_MACE_SMASH_AIR = SoundTypes.key(ResourceKey.minecraft("item.mace.smash_air")); @@ -3320,6 +3326,8 @@ public final class SoundTypes { public static final DefaultedRegistryReference ITEM_OMINOUS_BOTTLE_DISPOSE = SoundTypes.key(ResourceKey.minecraft("item.ominous_bottle.dispose")); + public static final DefaultedRegistryReference ITEM_SADDLE_UNEQUIP = SoundTypes.key(ResourceKey.minecraft("item.saddle.unequip")); + public static final DefaultedRegistryReference ITEM_SHEARS_SNIP = SoundTypes.key(ResourceKey.minecraft("item.shears.snip")); public static final DefaultedRegistryReference ITEM_SHIELD_BLOCK = SoundTypes.key(ResourceKey.minecraft("item.shield.block")); From 9bc0fc9edc9caf957ba1972fa7184bec068374e7 Mon Sep 17 00:00:00 2001 From: Gabriel Harris-Rouquette Date: Sat, 7 Jun 2025 14:34:35 -0700 Subject: [PATCH 7/8] feat(adventure): update adventure to 4.21 Notably 4.21 includes component enhancements since 1.21.5 See changes from https://docs.advntr.dev/version-history/adventure.html#release-v4-19-0 https://docs.advntr.dev/version-history/adventure.html#release-v4-20-0 https://docs.advntr.dev/version-history/adventure.html#release-v4-21-0 --- gradle/libs.versions.toml | 2 +- gradle/verification-metadata.xml | 144 +++++++++++++++++++++++++++++++ 2 files changed, 145 insertions(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f778e3114b..1773b1197c 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -2,7 +2,7 @@ format = { version = "1.1" } [versions] -adventure = "4.18.0" +adventure = "4.21.0" caffeine = "3.1.8" checker = "3.42.0" checkstyle = "10.12.7" diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 90908f07da..4ede6a7ca4 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -892,6 +892,22 @@ + + + + + + + + + + + + + + + + @@ -916,6 +932,22 @@ + + + + + + + + + + + + + + + + @@ -949,6 +981,22 @@ + + + + + + + + + + + + + + + + @@ -982,6 +1030,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1015,6 +1095,22 @@ + + + + + + + + + + + + + + + + @@ -1048,6 +1144,22 @@ + + + + + + + + + + + + + + + + @@ -1081,6 +1193,22 @@ + + + + + + + + + + + + + + + + @@ -1114,6 +1242,22 @@ + + + + + + + + + + + + + + + + From 20b50cf36e97b6009f45365bac3ea6df9c7537ec Mon Sep 17 00:00:00 2001 From: Gabriel Harris-Rouquette Date: Wed, 18 Jun 2025 17:52:49 -0700 Subject: [PATCH 8/8] feat(minecraft): update to 1.21.6-rc1 Adds a trigger that was missed in a previous version. See: https://minecraft.wiki/w/Java_Edition_1.21.6_Release_Candidate_1 --- .../api/advancement/criteria/trigger/Triggers.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/org/spongepowered/api/advancement/criteria/trigger/Triggers.java b/src/main/java/org/spongepowered/api/advancement/criteria/trigger/Triggers.java index 5ab296e371..893202b41f 100644 --- a/src/main/java/org/spongepowered/api/advancement/criteria/trigger/Triggers.java +++ b/src/main/java/org/spongepowered/api/advancement/criteria/trigger/Triggers.java @@ -116,6 +116,8 @@ public final class Triggers { public static final DefaultedRegistryReference> PLAYER_KILLED_ENTITY = Triggers.key(ResourceKey.minecraft("player_killed_entity")); + public static final DefaultedRegistryReference> PLAYER_SHEARED_EQUIPMENT = Triggers.key(ResourceKey.minecraft("player_sheared_equipment")); + public static final DefaultedRegistryReference> RECIPE_CRAFTED = Triggers.key(ResourceKey.minecraft("recipe_crafted")); public static final DefaultedRegistryReference> RECIPE_UNLOCKED = Triggers.key(ResourceKey.minecraft("recipe_unlocked"));