mirror of
https://github.com/GeyserMC/Geyser.git
synced 2025-12-19 14:59:27 +00:00
Support 1.21.130 (#6022)
* Initial 1.21.130 support
* Fix custom block collisions on 1.21.130+, temporarily disable command suggestions
* a bit too much debug
* Update integrated pack
* Update Bedrock protocol / networking libraries
Pulls in:
- a30f21345a
- https://github.com/CloudburstMC/Network/pull/57
This commit is contained in:
@@ -15,7 +15,7 @@ The ultimate goal of this project is to allow Minecraft: Bedrock Edition users t
|
|||||||
Special thanks to the DragonProxy project for being a trailblazer in protocol translation and for all the team members who have joined us here!
|
Special thanks to the DragonProxy project for being a trailblazer in protocol translation and for all the team members who have joined us here!
|
||||||
|
|
||||||
## Supported Versions
|
## Supported Versions
|
||||||
Geyser is currently supporting Minecraft Bedrock 1.21.90 - 1.21.124 and Minecraft Java 1.21.9 - 1.21.10. For more information, please see [here](https://geysermc.org/wiki/geyser/supported-versions/).
|
Geyser is currently supporting Minecraft Bedrock 1.21.90 - 1.21.130 and Minecraft Java 1.21.9 - 1.21.10. For more information, please see [here](https://geysermc.org/wiki/geyser/supported-versions/).
|
||||||
|
|
||||||
## Setting Up
|
## Setting Up
|
||||||
Take a look [here](https://geysermc.org/wiki/geyser/setup/) for how to set up Geyser.
|
Take a look [here](https://geysermc.org/wiki/geyser/setup/) for how to set up Geyser.
|
||||||
|
|||||||
@@ -29,7 +29,6 @@ import lombok.Getter;
|
|||||||
import org.cloudburstmc.math.vector.Vector3f;
|
import org.cloudburstmc.math.vector.Vector3f;
|
||||||
import org.cloudburstmc.protocol.bedrock.data.entity.EntityDataTypes;
|
import org.cloudburstmc.protocol.bedrock.data.entity.EntityDataTypes;
|
||||||
import org.cloudburstmc.protocol.bedrock.data.entity.EntityFlag;
|
import org.cloudburstmc.protocol.bedrock.data.entity.EntityFlag;
|
||||||
import org.cloudburstmc.protocol.bedrock.packet.AnimatePacket;
|
|
||||||
import org.cloudburstmc.protocol.bedrock.packet.MoveEntityAbsolutePacket;
|
import org.cloudburstmc.protocol.bedrock.packet.MoveEntityAbsolutePacket;
|
||||||
import org.geysermc.geyser.entity.EntityDefinition;
|
import org.geysermc.geyser.entity.EntityDefinition;
|
||||||
import org.geysermc.geyser.entity.EntityDefinitions;
|
import org.geysermc.geyser.entity.EntityDefinitions;
|
||||||
@@ -220,14 +219,6 @@ public class BoatEntity extends Entity implements Leashable, Tickable {
|
|||||||
return leashHolderBedrockId;
|
return leashHolderBedrockId;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendAnimationPacket(GeyserSession session, Entity rower, AnimatePacket.Action action, float rowTime) {
|
|
||||||
AnimatePacket packet = new AnimatePacket();
|
|
||||||
packet.setRuntimeEntityId(rower.getGeyserId());
|
|
||||||
packet.setAction(action);
|
|
||||||
packet.setRowingTime(rowTime);
|
|
||||||
session.sendUpstreamPacket(packet);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Ordered by Bedrock ordinal
|
* Ordered by Bedrock ordinal
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ public class GeyserCustomBlockComponents implements CustomBlockComponents {
|
|||||||
protected boolean placeAir = false;
|
protected boolean placeAir = false;
|
||||||
protected Set<String> tags = new HashSet<>();
|
protected Set<String> tags = new HashSet<>();
|
||||||
|
|
||||||
private void validateBox(BoxComponent box) {
|
private void validateBox(BoxComponent box, boolean collision) {
|
||||||
if (box == null) {
|
if (box == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -181,21 +181,28 @@ public class GeyserCustomBlockComponents implements CustomBlockComponents {
|
|||||||
float maxX = minX + box.sizeX();
|
float maxX = minX + box.sizeX();
|
||||||
float maxY = minY + box.sizeY();
|
float maxY = minY + box.sizeY();
|
||||||
float maxZ = minZ + box.sizeZ();
|
float maxZ = minZ + box.sizeZ();
|
||||||
if (minX < 0 || minY < 0 || minZ < 0 || maxX > 16 || maxY > 16 || maxZ > 16) {
|
if (collision) {
|
||||||
throw new IllegalArgumentException("Box bounds must be within (0, 0, 0) and (16, 16, 16). Recieved: (" + minX + ", " + minY + ", " + minZ + ") to (" + maxX + ", " + maxY + ", " + maxZ + ")");
|
// Since 1.21.130, max y of collisions is 24
|
||||||
|
if (minX < 0 || minY < 0 || minZ < 0 || maxX > 16 || maxY > 24 || maxZ > 16) {
|
||||||
|
throw new IllegalArgumentException("Collision box bounds must be within (0, 0, 0) and (16, 24, 16). Received: (" + minX + ", " + minY + ", " + minZ + ") to (" + maxX + ", " + maxY + ", " + maxZ + ")");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (minX < 0 || minY < 0 || minZ < 0 || maxX > 16 || maxY > 16 || maxZ > 16) {
|
||||||
|
throw new IllegalArgumentException("Box bounds must be within (0, 0, 0) and (16, 16, 16). Received: (" + minX + ", " + minY + ", " + minZ + ") to (" + maxX + ", " + maxY + ", " + maxZ + ")");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Builder selectionBox(BoxComponent selectionBox) {
|
public Builder selectionBox(BoxComponent selectionBox) {
|
||||||
validateBox(selectionBox);
|
validateBox(selectionBox, false);
|
||||||
this.selectionBox = selectionBox;
|
this.selectionBox = selectionBox;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Builder collisionBox(BoxComponent collisionBox) {
|
public Builder collisionBox(BoxComponent collisionBox) {
|
||||||
validateBox(collisionBox);
|
validateBox(collisionBox, true);
|
||||||
this.collisionBox = collisionBox;
|
this.collisionBox = collisionBox;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,6 +34,8 @@ import org.cloudburstmc.protocol.bedrock.codec.v819.Bedrock_v819;
|
|||||||
import org.cloudburstmc.protocol.bedrock.codec.v827.Bedrock_v827;
|
import org.cloudburstmc.protocol.bedrock.codec.v827.Bedrock_v827;
|
||||||
import org.cloudburstmc.protocol.bedrock.codec.v844.Bedrock_v844;
|
import org.cloudburstmc.protocol.bedrock.codec.v844.Bedrock_v844;
|
||||||
import org.cloudburstmc.protocol.bedrock.codec.v859.Bedrock_v859;
|
import org.cloudburstmc.protocol.bedrock.codec.v859.Bedrock_v859;
|
||||||
|
import org.cloudburstmc.protocol.bedrock.codec.v860.Bedrock_v860;
|
||||||
|
import org.cloudburstmc.protocol.bedrock.codec.v897.Bedrock_v897;
|
||||||
import org.cloudburstmc.protocol.bedrock.netty.codec.packet.BedrockPacketCodec;
|
import org.cloudburstmc.protocol.bedrock.netty.codec.packet.BedrockPacketCodec;
|
||||||
import org.geysermc.geyser.api.util.MinecraftVersion;
|
import org.geysermc.geyser.api.util.MinecraftVersion;
|
||||||
import org.geysermc.geyser.impl.MinecraftVersionImpl;
|
import org.geysermc.geyser.impl.MinecraftVersionImpl;
|
||||||
@@ -89,7 +91,8 @@ public final class GameProtocol {
|
|||||||
register(Bedrock_v827.CODEC, "1.21.100", "1.21.101");
|
register(Bedrock_v827.CODEC, "1.21.100", "1.21.101");
|
||||||
register(Bedrock_v844.CODEC, "1.21.111", "1.21.112", "1.21.113", "1.21.114");
|
register(Bedrock_v844.CODEC, "1.21.111", "1.21.112", "1.21.113", "1.21.114");
|
||||||
register(Bedrock_v859.CODEC, "1.21.120", "1.21.121", "1.21.122", "1.21.123");
|
register(Bedrock_v859.CODEC, "1.21.120", "1.21.121", "1.21.122", "1.21.123");
|
||||||
register(Bedrock_v859.CODEC.toBuilder().protocolVersion(860).minecraftVersion("1.21.124").build());
|
register(Bedrock_v860.CODEC);
|
||||||
|
register(Bedrock_v897.CODEC);
|
||||||
|
|
||||||
MinecraftVersion latestBedrock = SUPPORTED_BEDROCK_VERSIONS.get(SUPPORTED_BEDROCK_VERSIONS.size() - 1);
|
MinecraftVersion latestBedrock = SUPPORTED_BEDROCK_VERSIONS.get(SUPPORTED_BEDROCK_VERSIONS.size() - 1);
|
||||||
DEFAULT_BEDROCK_VERSION = latestBedrock.versionString();
|
DEFAULT_BEDROCK_VERSION = latestBedrock.versionString();
|
||||||
@@ -153,6 +156,10 @@ public final class GameProtocol {
|
|||||||
return protocolVersion >= Bedrock_v844.CODEC.getProtocolVersion();
|
return protocolVersion >= Bedrock_v844.CODEC.getProtocolVersion();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean is1_21_130orHigher(int protocolVersion) {
|
||||||
|
return protocolVersion >= Bedrock_v897.CODEC.getProtocolVersion();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the supported Minecraft: Java Edition version names.
|
* Gets the supported Minecraft: Java Edition version names.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -49,6 +49,8 @@ import org.cloudburstmc.protocol.bedrock.codec.v819.Bedrock_v819;
|
|||||||
import org.cloudburstmc.protocol.bedrock.codec.v827.Bedrock_v827;
|
import org.cloudburstmc.protocol.bedrock.codec.v827.Bedrock_v827;
|
||||||
import org.cloudburstmc.protocol.bedrock.codec.v844.Bedrock_v844;
|
import org.cloudburstmc.protocol.bedrock.codec.v844.Bedrock_v844;
|
||||||
import org.cloudburstmc.protocol.bedrock.codec.v859.Bedrock_v859;
|
import org.cloudburstmc.protocol.bedrock.codec.v859.Bedrock_v859;
|
||||||
|
import org.cloudburstmc.protocol.bedrock.codec.v860.Bedrock_v860;
|
||||||
|
import org.cloudburstmc.protocol.bedrock.codec.v897.Bedrock_v897;
|
||||||
import org.cloudburstmc.protocol.bedrock.data.BlockPropertyData;
|
import org.cloudburstmc.protocol.bedrock.data.BlockPropertyData;
|
||||||
import org.cloudburstmc.protocol.bedrock.data.definitions.BlockDefinition;
|
import org.cloudburstmc.protocol.bedrock.data.definitions.BlockDefinition;
|
||||||
import org.geysermc.geyser.GeyserImpl;
|
import org.geysermc.geyser.GeyserImpl;
|
||||||
@@ -129,7 +131,9 @@ public final class BlockRegistryPopulator {
|
|||||||
.put(ObjectIntPair.of("1_21_110", Bedrock_v844.CODEC.getProtocolVersion()), tag -> tag)
|
.put(ObjectIntPair.of("1_21_110", Bedrock_v844.CODEC.getProtocolVersion()), tag -> tag)
|
||||||
// 1.21.110 -> 1.21.12x doesn't change the block palette
|
// 1.21.110 -> 1.21.12x doesn't change the block palette
|
||||||
.put(ObjectIntPair.of("1_21_110", Bedrock_v859.CODEC.getProtocolVersion()), tag -> tag)
|
.put(ObjectIntPair.of("1_21_110", Bedrock_v859.CODEC.getProtocolVersion()), tag -> tag)
|
||||||
.put(ObjectIntPair.of("1_21_110", 860), tag -> tag)
|
.put(ObjectIntPair.of("1_21_110", Bedrock_v860.CODEC.getProtocolVersion()), tag -> tag)
|
||||||
|
// No changes in .130 block palette either!
|
||||||
|
.put(ObjectIntPair.of("1_21_110", Bedrock_v897.CODEC.getProtocolVersion()), tag -> tag)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
// We can keep this strong as nothing should be garbage collected
|
// We can keep this strong as nothing should be garbage collected
|
||||||
|
|||||||
@@ -419,12 +419,14 @@ public class CustomBlockRegistryPopulator {
|
|||||||
.build());
|
.build());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (components.selectionBox() != null) {
|
BoxComponent selectionBox = components.selectionBox();
|
||||||
builder.putCompound("minecraft:selection_box", convertBox(components.selectionBox()));
|
if (selectionBox != null) {
|
||||||
|
builder.putCompound("minecraft:selection_box", convertBox(selectionBox));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (components.collisionBox() != null) {
|
BoxComponent collisionBox = components.collisionBox();
|
||||||
builder.putCompound("minecraft:collision_box", convertBox(components.collisionBox()));
|
if (collisionBox != null) {
|
||||||
|
builder.putCompound("minecraft:collision_box", convertCollisionBox(collisionBox, protocolVersion));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (components.geometry() != null) {
|
if (components.geometry() != null) {
|
||||||
@@ -541,6 +543,32 @@ public class CustomBlockRegistryPopulator {
|
|||||||
return builder.build();
|
return builder.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Converts the provided COLLISION box component to an {@link NbtMap}
|
||||||
|
*
|
||||||
|
* @param boxComponent the box component to convert
|
||||||
|
* @return the NBT representation of the provided box component
|
||||||
|
*/
|
||||||
|
private static NbtMap convertCollisionBox(BoxComponent boxComponent, int protocolVersion) {
|
||||||
|
if (GameProtocol.is1_21_130orHigher(protocolVersion)) {
|
||||||
|
float minX = 8f + boxComponent.originX();
|
||||||
|
float minY = boxComponent.originY();
|
||||||
|
float minZ = 8f + boxComponent.originZ();
|
||||||
|
return NbtMap.builder()
|
||||||
|
.putBoolean("enabled", !boxComponent.isEmpty())
|
||||||
|
.putList("boxes", NbtType.COMPOUND, NbtMap.builder()
|
||||||
|
.putFloat("minX", minX)
|
||||||
|
.putFloat("minY", minY)
|
||||||
|
.putFloat("minZ", minZ)
|
||||||
|
.putFloat("maxX", minX + boxComponent.sizeX())
|
||||||
|
.putFloat("maxY", minY + boxComponent.sizeY())
|
||||||
|
.putFloat("maxZ", minZ + boxComponent.sizeZ())
|
||||||
|
.build()).build();
|
||||||
|
} else {
|
||||||
|
return convertBox(boxComponent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Converts the provided box component to an {@link NbtMap}
|
* Converts the provided box component to an {@link NbtMap}
|
||||||
*
|
*
|
||||||
@@ -551,7 +579,8 @@ public class CustomBlockRegistryPopulator {
|
|||||||
return NbtMap.builder()
|
return NbtMap.builder()
|
||||||
.putBoolean("enabled", !boxComponent.isEmpty())
|
.putBoolean("enabled", !boxComponent.isEmpty())
|
||||||
.putList("origin", NbtType.FLOAT, boxComponent.originX(), boxComponent.originY(), boxComponent.originZ())
|
.putList("origin", NbtType.FLOAT, boxComponent.originX(), boxComponent.originY(), boxComponent.originZ())
|
||||||
.putList("size", NbtType.FLOAT, boxComponent.sizeX(), boxComponent.sizeY(), boxComponent.sizeZ())
|
// TODO remove after 1.21.130 - collision boxes sent to below 1.21.130 must be capped
|
||||||
|
.putList("size", NbtType.FLOAT, boxComponent.sizeX(), Math.min(boxComponent.sizeY(), 16), boxComponent.sizeZ())
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -50,6 +50,8 @@ import org.cloudburstmc.protocol.bedrock.codec.v819.Bedrock_v819;
|
|||||||
import org.cloudburstmc.protocol.bedrock.codec.v827.Bedrock_v827;
|
import org.cloudburstmc.protocol.bedrock.codec.v827.Bedrock_v827;
|
||||||
import org.cloudburstmc.protocol.bedrock.codec.v844.Bedrock_v844;
|
import org.cloudburstmc.protocol.bedrock.codec.v844.Bedrock_v844;
|
||||||
import org.cloudburstmc.protocol.bedrock.codec.v859.Bedrock_v859;
|
import org.cloudburstmc.protocol.bedrock.codec.v859.Bedrock_v859;
|
||||||
|
import org.cloudburstmc.protocol.bedrock.codec.v860.Bedrock_v860;
|
||||||
|
import org.cloudburstmc.protocol.bedrock.codec.v897.Bedrock_v897;
|
||||||
import org.cloudburstmc.protocol.bedrock.data.definitions.BlockDefinition;
|
import org.cloudburstmc.protocol.bedrock.data.definitions.BlockDefinition;
|
||||||
import org.cloudburstmc.protocol.bedrock.data.definitions.ItemDefinition;
|
import org.cloudburstmc.protocol.bedrock.data.definitions.ItemDefinition;
|
||||||
import org.cloudburstmc.protocol.bedrock.data.definitions.SimpleItemDefinition;
|
import org.cloudburstmc.protocol.bedrock.data.definitions.SimpleItemDefinition;
|
||||||
@@ -200,7 +202,8 @@ public class ItemRegistryPopulator {
|
|||||||
paletteVersions.add(new PaletteVersion("1_21_100", Bedrock_v827.CODEC.getProtocolVersion(), eightTwoSevenFallbacks, Conversion844_827::remapItem));
|
paletteVersions.add(new PaletteVersion("1_21_100", Bedrock_v827.CODEC.getProtocolVersion(), eightTwoSevenFallbacks, Conversion844_827::remapItem));
|
||||||
paletteVersions.add(new PaletteVersion("1_21_110", Bedrock_v844.CODEC.getProtocolVersion()));
|
paletteVersions.add(new PaletteVersion("1_21_110", Bedrock_v844.CODEC.getProtocolVersion()));
|
||||||
paletteVersions.add(new PaletteVersion("1_21_120", Bedrock_v859.CODEC.getProtocolVersion()));
|
paletteVersions.add(new PaletteVersion("1_21_120", Bedrock_v859.CODEC.getProtocolVersion()));
|
||||||
paletteVersions.add(new PaletteVersion("1_21_120", 860));
|
paletteVersions.add(new PaletteVersion("1_21_120", Bedrock_v860.CODEC.getProtocolVersion()));
|
||||||
|
paletteVersions.add(new PaletteVersion("1_21_130", Bedrock_v897.CODEC.getProtocolVersion()));
|
||||||
|
|
||||||
GeyserBootstrap bootstrap = GeyserImpl.getInstance().getBootstrap();
|
GeyserBootstrap bootstrap = GeyserImpl.getInstance().getBootstrap();
|
||||||
|
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ import org.cloudburstmc.protocol.bedrock.codec.v818.Bedrock_v818;
|
|||||||
import org.cloudburstmc.protocol.bedrock.codec.v819.Bedrock_v819;
|
import org.cloudburstmc.protocol.bedrock.codec.v819.Bedrock_v819;
|
||||||
import org.cloudburstmc.protocol.bedrock.codec.v827.Bedrock_v827;
|
import org.cloudburstmc.protocol.bedrock.codec.v827.Bedrock_v827;
|
||||||
import org.cloudburstmc.protocol.bedrock.codec.v844.Bedrock_v844;
|
import org.cloudburstmc.protocol.bedrock.codec.v844.Bedrock_v844;
|
||||||
|
import org.cloudburstmc.protocol.bedrock.codec.v859.Bedrock_v859;
|
||||||
import org.geysermc.geyser.GeyserBootstrap;
|
import org.geysermc.geyser.GeyserBootstrap;
|
||||||
import org.geysermc.geyser.GeyserImpl;
|
import org.geysermc.geyser.GeyserImpl;
|
||||||
import org.geysermc.geyser.item.type.Item;
|
import org.geysermc.geyser.item.type.Item;
|
||||||
@@ -73,7 +74,9 @@ public final class TagRegistryPopulator {
|
|||||||
// Not a typo, it's the same file
|
// Not a typo, it's the same file
|
||||||
ObjectIntPair.of("1_21_90", Bedrock_v819.CODEC.getProtocolVersion()),
|
ObjectIntPair.of("1_21_90", Bedrock_v819.CODEC.getProtocolVersion()),
|
||||||
ObjectIntPair.of("1_21_100", Bedrock_v827.CODEC.getProtocolVersion()),
|
ObjectIntPair.of("1_21_100", Bedrock_v827.CODEC.getProtocolVersion()),
|
||||||
ObjectIntPair.of("1_21_110", Bedrock_v844.CODEC.getProtocolVersion())
|
ObjectIntPair.of("1_21_110", Bedrock_v844.CODEC.getProtocolVersion()),
|
||||||
|
ObjectIntPair.of("1_21_120", Bedrock_v859.CODEC.getProtocolVersion())
|
||||||
|
// TODO .130!
|
||||||
);
|
);
|
||||||
Type type = new TypeToken<Map<String, List<String>>>() {}.getType();
|
Type type = new TypeToken<Map<String, List<String>>>() {}.getType();
|
||||||
|
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ import org.geysermc.geyser.GeyserImpl;
|
|||||||
import org.geysermc.geyser.api.event.java.ServerDefineCommandsEvent;
|
import org.geysermc.geyser.api.event.java.ServerDefineCommandsEvent;
|
||||||
import org.geysermc.geyser.api.util.PlatformType;
|
import org.geysermc.geyser.api.util.PlatformType;
|
||||||
import org.geysermc.geyser.command.CommandRegistry;
|
import org.geysermc.geyser.command.CommandRegistry;
|
||||||
|
import org.geysermc.geyser.network.GameProtocol;
|
||||||
import org.geysermc.geyser.registry.BlockRegistries;
|
import org.geysermc.geyser.registry.BlockRegistries;
|
||||||
import org.geysermc.geyser.registry.Registries;
|
import org.geysermc.geyser.registry.Registries;
|
||||||
import org.geysermc.geyser.session.GeyserSession;
|
import org.geysermc.geyser.session.GeyserSession;
|
||||||
@@ -123,7 +124,7 @@ public class JavaCommandsTranslator extends PacketTranslator<ClientboundCommands
|
|||||||
@Override
|
@Override
|
||||||
public void translate(GeyserSession session, ClientboundCommandsPacket packet) {
|
public void translate(GeyserSession session, ClientboundCommandsPacket packet) {
|
||||||
// Don't send command suggestions if they are disabled
|
// Don't send command suggestions if they are disabled
|
||||||
if (!session.getGeyser().config().gameplay().commandSuggestions()) {
|
if (GameProtocol.is1_21_130orHigher(session.protocolVersion()) || !session.getGeyser().config().gameplay().commandSuggestions()) {
|
||||||
session.getGeyser().getLogger().debug("Not sending translated command suggestions as they are disabled.");
|
session.getGeyser().getLogger().debug("Not sending translated command suggestions as they are disabled.");
|
||||||
|
|
||||||
// Send a mostly empty packet so Bedrock doesn't override /help with its own, built-in help command.
|
// Send a mostly empty packet so Bedrock doesn't override /help with its own, built-in help command.
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ public class JavaUpdateMobEffectTranslator extends PacketTranslator<ClientboundU
|
|||||||
mobEffectPacket.setEvent(event);
|
mobEffectPacket.setEvent(event);
|
||||||
mobEffectPacket.setRuntimeEntityId(entity.getGeyserId());
|
mobEffectPacket.setRuntimeEntityId(entity.getGeyserId());
|
||||||
mobEffectPacket.setParticles(packet.isShowParticles());
|
mobEffectPacket.setParticles(packet.isShowParticles());
|
||||||
|
mobEffectPacket.setAmbient(packet.isAmbient());
|
||||||
mobEffectPacket.setEffectId(EntityUtils.toBedrockEffectId(packet.getEffect()));
|
mobEffectPacket.setEffectId(EntityUtils.toBedrockEffectId(packet.getEffect()));
|
||||||
session.sendUpstreamPacket(mobEffectPacket);
|
session.sendUpstreamPacket(mobEffectPacket);
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
9620
core/src/main/resources/bedrock/creative_items.1_21_130.json
Normal file
9620
core/src/main/resources/bedrock/creative_items.1_21_130.json
Normal file
File diff suppressed because it is too large
Load Diff
Binary file not shown.
BIN
core/src/main/resources/bedrock/item_components.1_21_130.nbt
Normal file
BIN
core/src/main/resources/bedrock/item_components.1_21_130.nbt
Normal file
Binary file not shown.
896
core/src/main/resources/bedrock/item_tags.1_21_120.json
Normal file
896
core/src/main/resources/bedrock/item_tags.1_21_120.json
Normal file
@@ -0,0 +1,896 @@
|
|||||||
|
{
|
||||||
|
"minecraft:arrow": [
|
||||||
|
"minecraft:arrow"
|
||||||
|
],
|
||||||
|
"minecraft:banner": [
|
||||||
|
"minecraft:banner"
|
||||||
|
],
|
||||||
|
"minecraft:boat": [
|
||||||
|
"minecraft:oak_chest_boat",
|
||||||
|
"minecraft:bamboo_raft",
|
||||||
|
"minecraft:birch_boat",
|
||||||
|
"minecraft:mangrove_boat",
|
||||||
|
"minecraft:cherry_chest_boat",
|
||||||
|
"minecraft:pale_oak_boat",
|
||||||
|
"minecraft:bamboo_chest_raft",
|
||||||
|
"minecraft:dark_oak_chest_boat",
|
||||||
|
"minecraft:oak_boat",
|
||||||
|
"minecraft:pale_oak_chest_boat",
|
||||||
|
"minecraft:acacia_chest_boat",
|
||||||
|
"minecraft:jungle_chest_boat",
|
||||||
|
"minecraft:acacia_boat",
|
||||||
|
"minecraft:jungle_boat",
|
||||||
|
"minecraft:spruce_chest_boat",
|
||||||
|
"minecraft:cherry_boat",
|
||||||
|
"minecraft:mangrove_chest_boat",
|
||||||
|
"minecraft:dark_oak_boat",
|
||||||
|
"minecraft:spruce_boat",
|
||||||
|
"minecraft:birch_chest_boat"
|
||||||
|
],
|
||||||
|
"minecraft:boats": [
|
||||||
|
"minecraft:oak_chest_boat",
|
||||||
|
"minecraft:bamboo_raft",
|
||||||
|
"minecraft:birch_boat",
|
||||||
|
"minecraft:mangrove_boat",
|
||||||
|
"minecraft:cherry_chest_boat",
|
||||||
|
"minecraft:pale_oak_boat",
|
||||||
|
"minecraft:bamboo_chest_raft",
|
||||||
|
"minecraft:dark_oak_chest_boat",
|
||||||
|
"minecraft:oak_boat",
|
||||||
|
"minecraft:pale_oak_chest_boat",
|
||||||
|
"minecraft:acacia_chest_boat",
|
||||||
|
"minecraft:jungle_chest_boat",
|
||||||
|
"minecraft:acacia_boat",
|
||||||
|
"minecraft:jungle_boat",
|
||||||
|
"minecraft:spruce_chest_boat",
|
||||||
|
"minecraft:cherry_boat",
|
||||||
|
"minecraft:mangrove_chest_boat",
|
||||||
|
"minecraft:dark_oak_boat",
|
||||||
|
"minecraft:spruce_boat",
|
||||||
|
"minecraft:birch_chest_boat"
|
||||||
|
],
|
||||||
|
"minecraft:bookshelf_books": [
|
||||||
|
"minecraft:book",
|
||||||
|
"minecraft:writable_book",
|
||||||
|
"minecraft:enchanted_book"
|
||||||
|
],
|
||||||
|
"minecraft:chainmail_tier": [
|
||||||
|
"minecraft:chainmail_helmet",
|
||||||
|
"minecraft:chainmail_chestplate",
|
||||||
|
"minecraft:chainmail_boots",
|
||||||
|
"minecraft:chainmail_leggings"
|
||||||
|
],
|
||||||
|
"minecraft:coals": [
|
||||||
|
"minecraft:coal",
|
||||||
|
"minecraft:charcoal"
|
||||||
|
],
|
||||||
|
"minecraft:copper_tier": [
|
||||||
|
"minecraft:copper_hoe",
|
||||||
|
"minecraft:copper_boots",
|
||||||
|
"minecraft:copper_pickaxe",
|
||||||
|
"minecraft:copper_chestplate",
|
||||||
|
"minecraft:copper_sword",
|
||||||
|
"minecraft:copper_leggings",
|
||||||
|
"minecraft:copper_helmet",
|
||||||
|
"minecraft:copper_axe",
|
||||||
|
"minecraft:copper_shovel"
|
||||||
|
],
|
||||||
|
"minecraft:crimson_stems": [
|
||||||
|
"minecraft:crimson_hyphae",
|
||||||
|
"minecraft:stripped_crimson_stem",
|
||||||
|
"minecraft:stripped_crimson_hyphae",
|
||||||
|
"minecraft:crimson_stem"
|
||||||
|
],
|
||||||
|
"minecraft:decorated_pot_sherds": [
|
||||||
|
"minecraft:burn_pottery_sherd",
|
||||||
|
"minecraft:guster_pottery_sherd",
|
||||||
|
"minecraft:arms_up_pottery_sherd",
|
||||||
|
"minecraft:brick",
|
||||||
|
"minecraft:danger_pottery_sherd",
|
||||||
|
"minecraft:flow_pottery_sherd",
|
||||||
|
"minecraft:scrape_pottery_sherd",
|
||||||
|
"minecraft:archer_pottery_sherd",
|
||||||
|
"minecraft:howl_pottery_sherd",
|
||||||
|
"minecraft:shelter_pottery_sherd",
|
||||||
|
"minecraft:prize_pottery_sherd",
|
||||||
|
"minecraft:heartbreak_pottery_sherd",
|
||||||
|
"minecraft:skull_pottery_sherd",
|
||||||
|
"minecraft:brewer_pottery_sherd",
|
||||||
|
"minecraft:explorer_pottery_sherd",
|
||||||
|
"minecraft:friend_pottery_sherd",
|
||||||
|
"minecraft:sheaf_pottery_sherd",
|
||||||
|
"minecraft:heart_pottery_sherd",
|
||||||
|
"minecraft:angler_pottery_sherd",
|
||||||
|
"minecraft:blade_pottery_sherd",
|
||||||
|
"minecraft:miner_pottery_sherd",
|
||||||
|
"minecraft:mourner_pottery_sherd",
|
||||||
|
"minecraft:plenty_pottery_sherd",
|
||||||
|
"minecraft:snort_pottery_sherd"
|
||||||
|
],
|
||||||
|
"minecraft:diamond_tier": [
|
||||||
|
"minecraft:diamond_boots",
|
||||||
|
"minecraft:diamond_helmet",
|
||||||
|
"minecraft:mace",
|
||||||
|
"minecraft:diamond_chestplate",
|
||||||
|
"minecraft:diamond_pickaxe",
|
||||||
|
"minecraft:diamond_leggings",
|
||||||
|
"minecraft:diamond_sword",
|
||||||
|
"minecraft:diamond_axe",
|
||||||
|
"minecraft:diamond_shovel",
|
||||||
|
"minecraft:diamond_hoe"
|
||||||
|
],
|
||||||
|
"minecraft:digger": [
|
||||||
|
"minecraft:wooden_pickaxe",
|
||||||
|
"minecraft:golden_pickaxe",
|
||||||
|
"minecraft:netherite_hoe",
|
||||||
|
"minecraft:stone_hoe",
|
||||||
|
"minecraft:wooden_shovel",
|
||||||
|
"minecraft:wooden_axe",
|
||||||
|
"minecraft:wooden_hoe",
|
||||||
|
"minecraft:copper_hoe",
|
||||||
|
"minecraft:golden_axe",
|
||||||
|
"minecraft:iron_axe",
|
||||||
|
"minecraft:copper_pickaxe",
|
||||||
|
"minecraft:netherite_pickaxe",
|
||||||
|
"minecraft:iron_hoe",
|
||||||
|
"minecraft:iron_shovel",
|
||||||
|
"minecraft:stone_axe",
|
||||||
|
"minecraft:stone_shovel",
|
||||||
|
"minecraft:copper_axe",
|
||||||
|
"minecraft:diamond_pickaxe",
|
||||||
|
"minecraft:netherite_axe",
|
||||||
|
"minecraft:diamond_axe",
|
||||||
|
"minecraft:stone_pickaxe",
|
||||||
|
"minecraft:iron_pickaxe",
|
||||||
|
"minecraft:copper_shovel",
|
||||||
|
"minecraft:golden_shovel",
|
||||||
|
"minecraft:diamond_shovel",
|
||||||
|
"minecraft:netherite_shovel",
|
||||||
|
"minecraft:golden_hoe",
|
||||||
|
"minecraft:diamond_hoe"
|
||||||
|
],
|
||||||
|
"minecraft:door": [
|
||||||
|
"minecraft:wooden_door",
|
||||||
|
"minecraft:waxed_weathered_copper_door",
|
||||||
|
"minecraft:acacia_door",
|
||||||
|
"minecraft:weathered_copper_door",
|
||||||
|
"minecraft:dark_oak_door",
|
||||||
|
"minecraft:crimson_door",
|
||||||
|
"minecraft:iron_door",
|
||||||
|
"minecraft:jungle_door",
|
||||||
|
"minecraft:warped_door",
|
||||||
|
"minecraft:copper_door",
|
||||||
|
"minecraft:pale_oak_door",
|
||||||
|
"minecraft:spruce_door",
|
||||||
|
"minecraft:birch_door",
|
||||||
|
"minecraft:mangrove_door",
|
||||||
|
"minecraft:cherry_door",
|
||||||
|
"minecraft:bamboo_door",
|
||||||
|
"minecraft:oxidized_copper_door",
|
||||||
|
"minecraft:exposed_copper_door",
|
||||||
|
"minecraft:waxed_copper_door",
|
||||||
|
"minecraft:waxed_exposed_copper_door",
|
||||||
|
"minecraft:waxed_oxidized_copper_door"
|
||||||
|
],
|
||||||
|
"minecraft:egg": [
|
||||||
|
"minecraft:egg",
|
||||||
|
"minecraft:brown_egg",
|
||||||
|
"minecraft:blue_egg"
|
||||||
|
],
|
||||||
|
"minecraft:golden_tier": [
|
||||||
|
"minecraft:golden_pickaxe",
|
||||||
|
"minecraft:golden_leggings",
|
||||||
|
"minecraft:golden_axe",
|
||||||
|
"minecraft:golden_sword",
|
||||||
|
"minecraft:golden_chestplate",
|
||||||
|
"minecraft:golden_helmet",
|
||||||
|
"minecraft:golden_boots",
|
||||||
|
"minecraft:golden_shovel",
|
||||||
|
"minecraft:golden_hoe"
|
||||||
|
],
|
||||||
|
"minecraft:hanging_actor": [
|
||||||
|
"minecraft:painting"
|
||||||
|
],
|
||||||
|
"minecraft:hanging_sign": [
|
||||||
|
"minecraft:acacia_hanging_sign",
|
||||||
|
"minecraft:warped_hanging_sign",
|
||||||
|
"minecraft:birch_hanging_sign",
|
||||||
|
"minecraft:dark_oak_hanging_sign",
|
||||||
|
"minecraft:pale_oak_hanging_sign",
|
||||||
|
"minecraft:cherry_hanging_sign",
|
||||||
|
"minecraft:oak_hanging_sign",
|
||||||
|
"minecraft:jungle_hanging_sign",
|
||||||
|
"minecraft:mangrove_hanging_sign",
|
||||||
|
"minecraft:spruce_hanging_sign",
|
||||||
|
"minecraft:bamboo_hanging_sign",
|
||||||
|
"minecraft:crimson_hanging_sign"
|
||||||
|
],
|
||||||
|
"minecraft:harness": [
|
||||||
|
"minecraft:lime_harness",
|
||||||
|
"minecraft:orange_harness",
|
||||||
|
"minecraft:gray_harness",
|
||||||
|
"minecraft:cyan_harness",
|
||||||
|
"minecraft:black_harness",
|
||||||
|
"minecraft:white_harness",
|
||||||
|
"minecraft:purple_harness",
|
||||||
|
"minecraft:blue_harness",
|
||||||
|
"minecraft:light_blue_harness",
|
||||||
|
"minecraft:yellow_harness",
|
||||||
|
"minecraft:pink_harness",
|
||||||
|
"minecraft:red_harness",
|
||||||
|
"minecraft:light_gray_harness",
|
||||||
|
"minecraft:brown_harness",
|
||||||
|
"minecraft:green_harness",
|
||||||
|
"minecraft:magenta_harness"
|
||||||
|
],
|
||||||
|
"minecraft:horse_armor": [
|
||||||
|
"minecraft:diamond_horse_armor",
|
||||||
|
"minecraft:iron_horse_armor",
|
||||||
|
"minecraft:copper_horse_armor",
|
||||||
|
"minecraft:golden_horse_armor",
|
||||||
|
"minecraft:leather_horse_armor"
|
||||||
|
],
|
||||||
|
"minecraft:iron_tier": [
|
||||||
|
"minecraft:iron_boots",
|
||||||
|
"minecraft:iron_chestplate",
|
||||||
|
"minecraft:iron_axe",
|
||||||
|
"minecraft:iron_hoe",
|
||||||
|
"minecraft:iron_shovel",
|
||||||
|
"minecraft:iron_leggings",
|
||||||
|
"minecraft:iron_helmet",
|
||||||
|
"minecraft:iron_sword",
|
||||||
|
"minecraft:iron_pickaxe"
|
||||||
|
],
|
||||||
|
"minecraft:is_armor": [
|
||||||
|
"minecraft:iron_boots",
|
||||||
|
"minecraft:diamond_boots",
|
||||||
|
"minecraft:leather_boots",
|
||||||
|
"minecraft:golden_leggings",
|
||||||
|
"minecraft:iron_chestplate",
|
||||||
|
"minecraft:diamond_helmet",
|
||||||
|
"minecraft:copper_boots",
|
||||||
|
"minecraft:diamond_chestplate",
|
||||||
|
"minecraft:copper_chestplate",
|
||||||
|
"minecraft:netherite_helmet",
|
||||||
|
"minecraft:leather_helmet",
|
||||||
|
"minecraft:chainmail_helmet",
|
||||||
|
"minecraft:copper_leggings",
|
||||||
|
"minecraft:netherite_leggings",
|
||||||
|
"minecraft:copper_helmet",
|
||||||
|
"minecraft:chainmail_chestplate",
|
||||||
|
"minecraft:elytra",
|
||||||
|
"minecraft:netherite_chestplate",
|
||||||
|
"minecraft:iron_leggings",
|
||||||
|
"minecraft:netherite_boots",
|
||||||
|
"minecraft:iron_helmet",
|
||||||
|
"minecraft:leather_leggings",
|
||||||
|
"minecraft:chainmail_boots",
|
||||||
|
"minecraft:chainmail_leggings",
|
||||||
|
"minecraft:golden_chestplate",
|
||||||
|
"minecraft:golden_helmet",
|
||||||
|
"minecraft:leather_chestplate",
|
||||||
|
"minecraft:diamond_leggings",
|
||||||
|
"minecraft:golden_boots",
|
||||||
|
"minecraft:turtle_helmet"
|
||||||
|
],
|
||||||
|
"minecraft:is_axe": [
|
||||||
|
"minecraft:wooden_axe",
|
||||||
|
"minecraft:golden_axe",
|
||||||
|
"minecraft:iron_axe",
|
||||||
|
"minecraft:stone_axe",
|
||||||
|
"minecraft:copper_axe",
|
||||||
|
"minecraft:netherite_axe",
|
||||||
|
"minecraft:diamond_axe"
|
||||||
|
],
|
||||||
|
"minecraft:is_cooked": [
|
||||||
|
"minecraft:cooked_chicken",
|
||||||
|
"minecraft:rabbit_stew",
|
||||||
|
"minecraft:cooked_salmon",
|
||||||
|
"minecraft:cooked_rabbit",
|
||||||
|
"minecraft:cooked_cod",
|
||||||
|
"minecraft:cooked_porkchop",
|
||||||
|
"minecraft:cooked_beef",
|
||||||
|
"minecraft:cooked_mutton"
|
||||||
|
],
|
||||||
|
"minecraft:is_fish": [
|
||||||
|
"minecraft:salmon",
|
||||||
|
"minecraft:cooked_salmon",
|
||||||
|
"minecraft:pufferfish",
|
||||||
|
"minecraft:cooked_cod",
|
||||||
|
"minecraft:tropical_fish",
|
||||||
|
"minecraft:cod"
|
||||||
|
],
|
||||||
|
"minecraft:is_food": [
|
||||||
|
"minecraft:carrot",
|
||||||
|
"minecraft:cookie",
|
||||||
|
"minecraft:golden_apple",
|
||||||
|
"minecraft:rotten_flesh",
|
||||||
|
"minecraft:salmon",
|
||||||
|
"minecraft:cooked_chicken",
|
||||||
|
"minecraft:golden_carrot",
|
||||||
|
"minecraft:mushroom_stew",
|
||||||
|
"minecraft:beef",
|
||||||
|
"minecraft:beetroot_soup",
|
||||||
|
"minecraft:rabbit_stew",
|
||||||
|
"minecraft:baked_potato",
|
||||||
|
"minecraft:enchanted_golden_apple",
|
||||||
|
"minecraft:cooked_salmon",
|
||||||
|
"minecraft:poisonous_potato",
|
||||||
|
"minecraft:bread",
|
||||||
|
"minecraft:melon_slice",
|
||||||
|
"minecraft:dried_kelp",
|
||||||
|
"minecraft:cooked_rabbit",
|
||||||
|
"minecraft:beetroot",
|
||||||
|
"minecraft:potato",
|
||||||
|
"minecraft:porkchop",
|
||||||
|
"minecraft:pufferfish",
|
||||||
|
"minecraft:suspicious_stew",
|
||||||
|
"minecraft:cooked_cod",
|
||||||
|
"minecraft:apple",
|
||||||
|
"minecraft:sweet_berries",
|
||||||
|
"minecraft:honey_bottle",
|
||||||
|
"minecraft:tropical_fish",
|
||||||
|
"minecraft:chicken",
|
||||||
|
"minecraft:mutton",
|
||||||
|
"minecraft:rabbit",
|
||||||
|
"minecraft:cod",
|
||||||
|
"minecraft:spider_eye",
|
||||||
|
"minecraft:cooked_porkchop",
|
||||||
|
"minecraft:chorus_fruit",
|
||||||
|
"minecraft:cooked_beef",
|
||||||
|
"minecraft:cooked_mutton",
|
||||||
|
"minecraft:pumpkin_pie"
|
||||||
|
],
|
||||||
|
"minecraft:is_hoe": [
|
||||||
|
"minecraft:netherite_hoe",
|
||||||
|
"minecraft:stone_hoe",
|
||||||
|
"minecraft:wooden_hoe",
|
||||||
|
"minecraft:copper_hoe",
|
||||||
|
"minecraft:iron_hoe",
|
||||||
|
"minecraft:golden_hoe",
|
||||||
|
"minecraft:diamond_hoe"
|
||||||
|
],
|
||||||
|
"minecraft:is_meat": [
|
||||||
|
"minecraft:rotten_flesh",
|
||||||
|
"minecraft:cooked_chicken",
|
||||||
|
"minecraft:beef",
|
||||||
|
"minecraft:rabbit_stew",
|
||||||
|
"minecraft:cooked_rabbit",
|
||||||
|
"minecraft:porkchop",
|
||||||
|
"minecraft:chicken",
|
||||||
|
"minecraft:mutton",
|
||||||
|
"minecraft:rabbit",
|
||||||
|
"minecraft:cooked_porkchop",
|
||||||
|
"minecraft:cooked_beef",
|
||||||
|
"minecraft:cooked_mutton"
|
||||||
|
],
|
||||||
|
"minecraft:is_minecart": [
|
||||||
|
"minecraft:tnt_minecart",
|
||||||
|
"minecraft:command_block_minecart",
|
||||||
|
"minecraft:chest_minecart",
|
||||||
|
"minecraft:minecart",
|
||||||
|
"minecraft:hopper_minecart"
|
||||||
|
],
|
||||||
|
"minecraft:is_pickaxe": [
|
||||||
|
"minecraft:wooden_pickaxe",
|
||||||
|
"minecraft:golden_pickaxe",
|
||||||
|
"minecraft:copper_pickaxe",
|
||||||
|
"minecraft:netherite_pickaxe",
|
||||||
|
"minecraft:diamond_pickaxe",
|
||||||
|
"minecraft:stone_pickaxe",
|
||||||
|
"minecraft:iron_pickaxe"
|
||||||
|
],
|
||||||
|
"minecraft:is_shears": [
|
||||||
|
"minecraft:shears"
|
||||||
|
],
|
||||||
|
"minecraft:is_shovel": [
|
||||||
|
"minecraft:wooden_shovel",
|
||||||
|
"minecraft:iron_shovel",
|
||||||
|
"minecraft:stone_shovel",
|
||||||
|
"minecraft:copper_shovel",
|
||||||
|
"minecraft:golden_shovel",
|
||||||
|
"minecraft:diamond_shovel",
|
||||||
|
"minecraft:netherite_shovel"
|
||||||
|
],
|
||||||
|
"minecraft:is_sword": [
|
||||||
|
"minecraft:mace",
|
||||||
|
"minecraft:copper_sword",
|
||||||
|
"minecraft:netherite_sword",
|
||||||
|
"minecraft:stone_sword",
|
||||||
|
"minecraft:golden_sword",
|
||||||
|
"minecraft:iron_sword",
|
||||||
|
"minecraft:wooden_sword",
|
||||||
|
"minecraft:diamond_sword"
|
||||||
|
],
|
||||||
|
"minecraft:is_tool": [
|
||||||
|
"minecraft:wooden_pickaxe",
|
||||||
|
"minecraft:golden_pickaxe",
|
||||||
|
"minecraft:netherite_hoe",
|
||||||
|
"minecraft:stone_hoe",
|
||||||
|
"minecraft:wooden_shovel",
|
||||||
|
"minecraft:wooden_axe",
|
||||||
|
"minecraft:wooden_hoe",
|
||||||
|
"minecraft:copper_hoe",
|
||||||
|
"minecraft:mace",
|
||||||
|
"minecraft:golden_axe",
|
||||||
|
"minecraft:iron_axe",
|
||||||
|
"minecraft:copper_pickaxe",
|
||||||
|
"minecraft:netherite_pickaxe",
|
||||||
|
"minecraft:iron_hoe",
|
||||||
|
"minecraft:copper_sword",
|
||||||
|
"minecraft:netherite_sword",
|
||||||
|
"minecraft:iron_shovel",
|
||||||
|
"minecraft:stone_axe",
|
||||||
|
"minecraft:stone_sword",
|
||||||
|
"minecraft:stone_shovel",
|
||||||
|
"minecraft:golden_sword",
|
||||||
|
"minecraft:copper_axe",
|
||||||
|
"minecraft:diamond_pickaxe",
|
||||||
|
"minecraft:iron_sword",
|
||||||
|
"minecraft:netherite_axe",
|
||||||
|
"minecraft:wooden_sword",
|
||||||
|
"minecraft:diamond_sword",
|
||||||
|
"minecraft:diamond_axe",
|
||||||
|
"minecraft:stone_pickaxe",
|
||||||
|
"minecraft:iron_pickaxe",
|
||||||
|
"minecraft:copper_shovel",
|
||||||
|
"minecraft:golden_shovel",
|
||||||
|
"minecraft:diamond_shovel",
|
||||||
|
"minecraft:netherite_shovel",
|
||||||
|
"minecraft:golden_hoe",
|
||||||
|
"minecraft:diamond_hoe"
|
||||||
|
],
|
||||||
|
"minecraft:is_trident": [
|
||||||
|
"minecraft:trident"
|
||||||
|
],
|
||||||
|
"minecraft:leather_tier": [
|
||||||
|
"minecraft:leather_boots",
|
||||||
|
"minecraft:leather_helmet",
|
||||||
|
"minecraft:leather_leggings",
|
||||||
|
"minecraft:leather_chestplate"
|
||||||
|
],
|
||||||
|
"minecraft:lectern_books": [
|
||||||
|
"minecraft:writable_book"
|
||||||
|
],
|
||||||
|
"minecraft:logs": [
|
||||||
|
"minecraft:stripped_pale_oak_wood",
|
||||||
|
"minecraft:stripped_jungle_wood",
|
||||||
|
"minecraft:stripped_dark_oak_log",
|
||||||
|
"minecraft:crimson_hyphae",
|
||||||
|
"minecraft:dark_oak_log",
|
||||||
|
"minecraft:warped_stem",
|
||||||
|
"minecraft:stripped_pale_oak_log",
|
||||||
|
"minecraft:birch_wood",
|
||||||
|
"minecraft:mangrove_log",
|
||||||
|
"minecraft:stripped_crimson_stem",
|
||||||
|
"minecraft:stripped_spruce_wood",
|
||||||
|
"minecraft:dark_oak_wood",
|
||||||
|
"minecraft:jungle_log",
|
||||||
|
"minecraft:birch_log",
|
||||||
|
"minecraft:stripped_cherry_log",
|
||||||
|
"minecraft:stripped_jungle_log",
|
||||||
|
"minecraft:stripped_oak_wood",
|
||||||
|
"minecraft:stripped_crimson_hyphae",
|
||||||
|
"minecraft:pale_oak_wood",
|
||||||
|
"minecraft:stripped_warped_stem",
|
||||||
|
"minecraft:stripped_birch_wood",
|
||||||
|
"minecraft:stripped_acacia_wood",
|
||||||
|
"minecraft:stripped_oak_log",
|
||||||
|
"minecraft:stripped_spruce_log",
|
||||||
|
"minecraft:stripped_mangrove_wood",
|
||||||
|
"minecraft:cherry_wood",
|
||||||
|
"minecraft:jungle_wood",
|
||||||
|
"minecraft:oak_wood",
|
||||||
|
"minecraft:oak_log",
|
||||||
|
"minecraft:spruce_wood",
|
||||||
|
"minecraft:stripped_birch_log",
|
||||||
|
"minecraft:stripped_acacia_log",
|
||||||
|
"minecraft:stripped_mangrove_log",
|
||||||
|
"minecraft:spruce_log",
|
||||||
|
"minecraft:acacia_log",
|
||||||
|
"minecraft:warped_hyphae",
|
||||||
|
"minecraft:mangrove_wood",
|
||||||
|
"minecraft:cherry_log",
|
||||||
|
"minecraft:pale_oak_log",
|
||||||
|
"minecraft:crimson_stem",
|
||||||
|
"minecraft:acacia_wood",
|
||||||
|
"minecraft:stripped_dark_oak_wood",
|
||||||
|
"minecraft:stripped_cherry_wood",
|
||||||
|
"minecraft:stripped_warped_hyphae"
|
||||||
|
],
|
||||||
|
"minecraft:logs_that_burn": [
|
||||||
|
"minecraft:stripped_pale_oak_wood",
|
||||||
|
"minecraft:stripped_jungle_wood",
|
||||||
|
"minecraft:stripped_dark_oak_log",
|
||||||
|
"minecraft:dark_oak_log",
|
||||||
|
"minecraft:stripped_pale_oak_log",
|
||||||
|
"minecraft:birch_wood",
|
||||||
|
"minecraft:mangrove_log",
|
||||||
|
"minecraft:stripped_spruce_wood",
|
||||||
|
"minecraft:dark_oak_wood",
|
||||||
|
"minecraft:jungle_log",
|
||||||
|
"minecraft:birch_log",
|
||||||
|
"minecraft:stripped_cherry_log",
|
||||||
|
"minecraft:stripped_jungle_log",
|
||||||
|
"minecraft:stripped_oak_wood",
|
||||||
|
"minecraft:pale_oak_wood",
|
||||||
|
"minecraft:stripped_birch_wood",
|
||||||
|
"minecraft:stripped_acacia_wood",
|
||||||
|
"minecraft:stripped_oak_log",
|
||||||
|
"minecraft:stripped_spruce_log",
|
||||||
|
"minecraft:stripped_mangrove_wood",
|
||||||
|
"minecraft:cherry_wood",
|
||||||
|
"minecraft:jungle_wood",
|
||||||
|
"minecraft:oak_wood",
|
||||||
|
"minecraft:oak_log",
|
||||||
|
"minecraft:spruce_wood",
|
||||||
|
"minecraft:stripped_birch_log",
|
||||||
|
"minecraft:stripped_acacia_log",
|
||||||
|
"minecraft:stripped_mangrove_log",
|
||||||
|
"minecraft:spruce_log",
|
||||||
|
"minecraft:acacia_log",
|
||||||
|
"minecraft:mangrove_wood",
|
||||||
|
"minecraft:cherry_log",
|
||||||
|
"minecraft:pale_oak_log",
|
||||||
|
"minecraft:acacia_wood",
|
||||||
|
"minecraft:stripped_dark_oak_wood",
|
||||||
|
"minecraft:stripped_cherry_wood"
|
||||||
|
],
|
||||||
|
"minecraft:mangrove_logs": [
|
||||||
|
"minecraft:mangrove_log",
|
||||||
|
"minecraft:stripped_mangrove_wood",
|
||||||
|
"minecraft:stripped_mangrove_log",
|
||||||
|
"minecraft:mangrove_wood"
|
||||||
|
],
|
||||||
|
"minecraft:music_disc": [
|
||||||
|
"minecraft:music_disc_11",
|
||||||
|
"minecraft:music_disc_mellohi",
|
||||||
|
"minecraft:music_disc_mall",
|
||||||
|
"minecraft:music_disc_relic",
|
||||||
|
"minecraft:music_disc_wait",
|
||||||
|
"minecraft:music_disc_otherside",
|
||||||
|
"minecraft:music_disc_blocks",
|
||||||
|
"minecraft:music_disc_creator",
|
||||||
|
"minecraft:music_disc_5",
|
||||||
|
"minecraft:music_disc_stal",
|
||||||
|
"minecraft:music_disc_pigstep",
|
||||||
|
"minecraft:music_disc_lava_chicken",
|
||||||
|
"minecraft:music_disc_far",
|
||||||
|
"minecraft:music_disc_cat",
|
||||||
|
"minecraft:music_disc_precipice",
|
||||||
|
"minecraft:music_disc_13",
|
||||||
|
"minecraft:music_disc_strad",
|
||||||
|
"minecraft:music_disc_chirp",
|
||||||
|
"minecraft:music_disc_ward",
|
||||||
|
"minecraft:music_disc_creator_music_box",
|
||||||
|
"minecraft:music_disc_tears"
|
||||||
|
],
|
||||||
|
"minecraft:netherite_tier": [
|
||||||
|
"minecraft:netherite_hoe",
|
||||||
|
"minecraft:netherite_pickaxe",
|
||||||
|
"minecraft:netherite_helmet",
|
||||||
|
"minecraft:netherite_sword",
|
||||||
|
"minecraft:netherite_leggings",
|
||||||
|
"minecraft:netherite_chestplate",
|
||||||
|
"minecraft:netherite_boots",
|
||||||
|
"minecraft:netherite_axe",
|
||||||
|
"minecraft:netherite_shovel"
|
||||||
|
],
|
||||||
|
"minecraft:planks": [
|
||||||
|
"minecraft:jungle_planks",
|
||||||
|
"minecraft:spruce_planks",
|
||||||
|
"minecraft:dark_oak_planks",
|
||||||
|
"minecraft:oak_planks",
|
||||||
|
"minecraft:birch_planks",
|
||||||
|
"minecraft:acacia_planks",
|
||||||
|
"minecraft:warped_planks",
|
||||||
|
"minecraft:cherry_planks",
|
||||||
|
"minecraft:mangrove_planks",
|
||||||
|
"minecraft:pale_oak_planks",
|
||||||
|
"minecraft:bamboo_planks",
|
||||||
|
"minecraft:crimson_planks"
|
||||||
|
],
|
||||||
|
"minecraft:sand": [
|
||||||
|
"minecraft:red_sand",
|
||||||
|
"minecraft:sand"
|
||||||
|
],
|
||||||
|
"minecraft:sign": [
|
||||||
|
"minecraft:jungle_sign",
|
||||||
|
"minecraft:oak_sign",
|
||||||
|
"minecraft:acacia_hanging_sign",
|
||||||
|
"minecraft:warped_hanging_sign",
|
||||||
|
"minecraft:birch_hanging_sign",
|
||||||
|
"minecraft:cherry_sign",
|
||||||
|
"minecraft:dark_oak_hanging_sign",
|
||||||
|
"minecraft:pale_oak_hanging_sign",
|
||||||
|
"minecraft:acacia_sign",
|
||||||
|
"minecraft:spruce_sign",
|
||||||
|
"minecraft:pale_oak_sign",
|
||||||
|
"minecraft:cherry_hanging_sign",
|
||||||
|
"minecraft:oak_hanging_sign",
|
||||||
|
"minecraft:jungle_hanging_sign",
|
||||||
|
"minecraft:mangrove_sign",
|
||||||
|
"minecraft:mangrove_hanging_sign",
|
||||||
|
"minecraft:bamboo_sign",
|
||||||
|
"minecraft:birch_sign",
|
||||||
|
"minecraft:dark_oak_sign",
|
||||||
|
"minecraft:crimson_sign",
|
||||||
|
"minecraft:warped_sign",
|
||||||
|
"minecraft:spruce_hanging_sign",
|
||||||
|
"minecraft:bamboo_hanging_sign",
|
||||||
|
"minecraft:crimson_hanging_sign"
|
||||||
|
],
|
||||||
|
"minecraft:soul_fire_base_blocks": [
|
||||||
|
"minecraft:soul_sand",
|
||||||
|
"minecraft:soul_soil"
|
||||||
|
],
|
||||||
|
"minecraft:spawn_egg": [
|
||||||
|
"minecraft:camel_spawn_egg",
|
||||||
|
"minecraft:blaze_spawn_egg",
|
||||||
|
"minecraft:piglin_brute_spawn_egg",
|
||||||
|
"minecraft:hoglin_spawn_egg",
|
||||||
|
"minecraft:witch_spawn_egg",
|
||||||
|
"minecraft:wolf_spawn_egg",
|
||||||
|
"minecraft:rabbit_spawn_egg",
|
||||||
|
"minecraft:stray_spawn_egg",
|
||||||
|
"minecraft:pig_spawn_egg",
|
||||||
|
"minecraft:fox_spawn_egg",
|
||||||
|
"minecraft:glow_squid_spawn_egg",
|
||||||
|
"minecraft:ender_dragon_spawn_egg",
|
||||||
|
"minecraft:iron_golem_spawn_egg",
|
||||||
|
"minecraft:ravager_spawn_egg",
|
||||||
|
"minecraft:skeleton_horse_spawn_egg",
|
||||||
|
"minecraft:ghast_spawn_egg",
|
||||||
|
"minecraft:spider_spawn_egg",
|
||||||
|
"minecraft:endermite_spawn_egg",
|
||||||
|
"minecraft:creaking_spawn_egg",
|
||||||
|
"minecraft:elder_guardian_spawn_egg",
|
||||||
|
"minecraft:cod_spawn_egg",
|
||||||
|
"minecraft:bogged_spawn_egg",
|
||||||
|
"minecraft:frog_spawn_egg",
|
||||||
|
"minecraft:panda_spawn_egg",
|
||||||
|
"minecraft:skeleton_spawn_egg",
|
||||||
|
"minecraft:strider_spawn_egg",
|
||||||
|
"minecraft:slime_spawn_egg",
|
||||||
|
"minecraft:pillager_spawn_egg",
|
||||||
|
"minecraft:creeper_spawn_egg",
|
||||||
|
"minecraft:salmon_spawn_egg",
|
||||||
|
"minecraft:polar_bear_spawn_egg",
|
||||||
|
"minecraft:squid_spawn_egg",
|
||||||
|
"minecraft:cat_spawn_egg",
|
||||||
|
"minecraft:llama_spawn_egg",
|
||||||
|
"minecraft:goat_spawn_egg",
|
||||||
|
"minecraft:trader_llama_spawn_egg",
|
||||||
|
"minecraft:horse_spawn_egg",
|
||||||
|
"minecraft:silverfish_spawn_egg",
|
||||||
|
"minecraft:donkey_spawn_egg",
|
||||||
|
"minecraft:tropical_fish_spawn_egg",
|
||||||
|
"minecraft:husk_spawn_egg",
|
||||||
|
"minecraft:vex_spawn_egg",
|
||||||
|
"minecraft:sheep_spawn_egg",
|
||||||
|
"minecraft:dolphin_spawn_egg",
|
||||||
|
"minecraft:bee_spawn_egg",
|
||||||
|
"minecraft:bat_spawn_egg",
|
||||||
|
"minecraft:copper_golem_spawn_egg",
|
||||||
|
"minecraft:tadpole_spawn_egg",
|
||||||
|
"minecraft:villager_spawn_egg",
|
||||||
|
"minecraft:turtle_spawn_egg",
|
||||||
|
"minecraft:cow_spawn_egg",
|
||||||
|
"minecraft:warden_spawn_egg",
|
||||||
|
"minecraft:cave_spider_spawn_egg",
|
||||||
|
"minecraft:magma_cube_spawn_egg",
|
||||||
|
"minecraft:zombie_pigman_spawn_egg",
|
||||||
|
"minecraft:breeze_spawn_egg",
|
||||||
|
"minecraft:pufferfish_spawn_egg",
|
||||||
|
"minecraft:wandering_trader_spawn_egg",
|
||||||
|
"minecraft:chicken_spawn_egg",
|
||||||
|
"minecraft:ocelot_spawn_egg",
|
||||||
|
"minecraft:mooshroom_spawn_egg",
|
||||||
|
"minecraft:parrot_spawn_egg",
|
||||||
|
"minecraft:mule_spawn_egg",
|
||||||
|
"minecraft:zombie_horse_spawn_egg",
|
||||||
|
"minecraft:enderman_spawn_egg",
|
||||||
|
"minecraft:wither_skeleton_spawn_egg",
|
||||||
|
"minecraft:zombie_spawn_egg",
|
||||||
|
"minecraft:drowned_spawn_egg",
|
||||||
|
"minecraft:guardian_spawn_egg",
|
||||||
|
"minecraft:piglin_spawn_egg",
|
||||||
|
"minecraft:zoglin_spawn_egg",
|
||||||
|
"minecraft:axolotl_spawn_egg",
|
||||||
|
"minecraft:allay_spawn_egg",
|
||||||
|
"minecraft:shulker_spawn_egg",
|
||||||
|
"minecraft:vindicator_spawn_egg",
|
||||||
|
"minecraft:evoker_spawn_egg",
|
||||||
|
"minecraft:zombie_villager_spawn_egg",
|
||||||
|
"minecraft:phantom_spawn_egg",
|
||||||
|
"minecraft:snow_golem_spawn_egg",
|
||||||
|
"minecraft:sniffer_spawn_egg",
|
||||||
|
"minecraft:armadillo_spawn_egg",
|
||||||
|
"minecraft:happy_ghast_spawn_egg",
|
||||||
|
"minecraft:wither_spawn_egg"
|
||||||
|
],
|
||||||
|
"minecraft:stone_bricks": [
|
||||||
|
"minecraft:cracked_stone_bricks",
|
||||||
|
"minecraft:chiseled_stone_bricks",
|
||||||
|
"minecraft:stone_bricks",
|
||||||
|
"minecraft:mossy_stone_bricks"
|
||||||
|
],
|
||||||
|
"minecraft:stone_crafting_materials": [
|
||||||
|
"minecraft:cobbled_deepslate",
|
||||||
|
"minecraft:cobblestone",
|
||||||
|
"minecraft:blackstone"
|
||||||
|
],
|
||||||
|
"minecraft:stone_tier": [
|
||||||
|
"minecraft:stone_hoe",
|
||||||
|
"minecraft:stone_axe",
|
||||||
|
"minecraft:stone_sword",
|
||||||
|
"minecraft:stone_shovel",
|
||||||
|
"minecraft:stone_pickaxe"
|
||||||
|
],
|
||||||
|
"minecraft:stone_tool_materials": [
|
||||||
|
"minecraft:cobbled_deepslate",
|
||||||
|
"minecraft:cobblestone",
|
||||||
|
"minecraft:blackstone"
|
||||||
|
],
|
||||||
|
"minecraft:transform_materials": [
|
||||||
|
"minecraft:netherite_ingot"
|
||||||
|
],
|
||||||
|
"minecraft:transform_templates": [
|
||||||
|
"minecraft:netherite_upgrade_smithing_template"
|
||||||
|
],
|
||||||
|
"minecraft:transformable_items": [
|
||||||
|
"minecraft:diamond_boots",
|
||||||
|
"minecraft:diamond_helmet",
|
||||||
|
"minecraft:diamond_chestplate",
|
||||||
|
"minecraft:diamond_pickaxe",
|
||||||
|
"minecraft:diamond_leggings",
|
||||||
|
"minecraft:golden_boots",
|
||||||
|
"minecraft:diamond_sword",
|
||||||
|
"minecraft:diamond_axe",
|
||||||
|
"minecraft:diamond_shovel",
|
||||||
|
"minecraft:diamond_hoe"
|
||||||
|
],
|
||||||
|
"minecraft:trim_materials": [
|
||||||
|
"minecraft:gold_ingot",
|
||||||
|
"minecraft:emerald",
|
||||||
|
"minecraft:redstone",
|
||||||
|
"minecraft:diamond",
|
||||||
|
"minecraft:netherite_ingot",
|
||||||
|
"minecraft:copper_ingot",
|
||||||
|
"minecraft:lapis_lazuli",
|
||||||
|
"minecraft:amethyst_shard",
|
||||||
|
"minecraft:quartz",
|
||||||
|
"minecraft:iron_ingot",
|
||||||
|
"minecraft:resin_brick"
|
||||||
|
],
|
||||||
|
"minecraft:trim_templates": [
|
||||||
|
"minecraft:eye_armor_trim_smithing_template",
|
||||||
|
"minecraft:raiser_armor_trim_smithing_template",
|
||||||
|
"minecraft:host_armor_trim_smithing_template",
|
||||||
|
"minecraft:snout_armor_trim_smithing_template",
|
||||||
|
"minecraft:sentry_armor_trim_smithing_template",
|
||||||
|
"minecraft:spire_armor_trim_smithing_template",
|
||||||
|
"minecraft:flow_armor_trim_smithing_template",
|
||||||
|
"minecraft:rib_armor_trim_smithing_template",
|
||||||
|
"minecraft:wayfinder_armor_trim_smithing_template",
|
||||||
|
"minecraft:bolt_armor_trim_smithing_template",
|
||||||
|
"minecraft:ward_armor_trim_smithing_template",
|
||||||
|
"minecraft:wild_armor_trim_smithing_template",
|
||||||
|
"minecraft:vex_armor_trim_smithing_template",
|
||||||
|
"minecraft:coast_armor_trim_smithing_template",
|
||||||
|
"minecraft:dune_armor_trim_smithing_template",
|
||||||
|
"minecraft:shaper_armor_trim_smithing_template",
|
||||||
|
"minecraft:silence_armor_trim_smithing_template",
|
||||||
|
"minecraft:tide_armor_trim_smithing_template"
|
||||||
|
],
|
||||||
|
"minecraft:trimmable_armors": [
|
||||||
|
"minecraft:iron_boots",
|
||||||
|
"minecraft:diamond_boots",
|
||||||
|
"minecraft:leather_boots",
|
||||||
|
"minecraft:golden_leggings",
|
||||||
|
"minecraft:iron_chestplate",
|
||||||
|
"minecraft:diamond_helmet",
|
||||||
|
"minecraft:copper_boots",
|
||||||
|
"minecraft:diamond_chestplate",
|
||||||
|
"minecraft:copper_chestplate",
|
||||||
|
"minecraft:netherite_helmet",
|
||||||
|
"minecraft:leather_helmet",
|
||||||
|
"minecraft:chainmail_helmet",
|
||||||
|
"minecraft:copper_leggings",
|
||||||
|
"minecraft:netherite_leggings",
|
||||||
|
"minecraft:copper_helmet",
|
||||||
|
"minecraft:chainmail_chestplate",
|
||||||
|
"minecraft:netherite_chestplate",
|
||||||
|
"minecraft:iron_leggings",
|
||||||
|
"minecraft:netherite_boots",
|
||||||
|
"minecraft:iron_helmet",
|
||||||
|
"minecraft:leather_leggings",
|
||||||
|
"minecraft:chainmail_boots",
|
||||||
|
"minecraft:chainmail_leggings",
|
||||||
|
"minecraft:golden_chestplate",
|
||||||
|
"minecraft:golden_helmet",
|
||||||
|
"minecraft:leather_chestplate",
|
||||||
|
"minecraft:diamond_leggings",
|
||||||
|
"minecraft:golden_boots",
|
||||||
|
"minecraft:turtle_helmet"
|
||||||
|
],
|
||||||
|
"minecraft:vibration_damper": [
|
||||||
|
"minecraft:white_wool",
|
||||||
|
"minecraft:magenta_wool",
|
||||||
|
"minecraft:orange_carpet",
|
||||||
|
"minecraft:light_blue_wool",
|
||||||
|
"minecraft:gray_carpet",
|
||||||
|
"minecraft:pink_carpet",
|
||||||
|
"minecraft:brown_carpet",
|
||||||
|
"minecraft:cyan_carpet",
|
||||||
|
"minecraft:light_gray_wool",
|
||||||
|
"minecraft:red_wool",
|
||||||
|
"minecraft:lime_wool",
|
||||||
|
"minecraft:brown_wool",
|
||||||
|
"minecraft:pink_wool",
|
||||||
|
"minecraft:purple_carpet",
|
||||||
|
"minecraft:light_blue_carpet",
|
||||||
|
"minecraft:white_carpet",
|
||||||
|
"minecraft:green_carpet",
|
||||||
|
"minecraft:magenta_carpet",
|
||||||
|
"minecraft:red_carpet",
|
||||||
|
"minecraft:light_gray_carpet",
|
||||||
|
"minecraft:gray_wool",
|
||||||
|
"minecraft:black_wool",
|
||||||
|
"minecraft:orange_wool",
|
||||||
|
"minecraft:yellow_wool",
|
||||||
|
"minecraft:green_wool",
|
||||||
|
"minecraft:cyan_wool",
|
||||||
|
"minecraft:black_carpet",
|
||||||
|
"minecraft:blue_wool",
|
||||||
|
"minecraft:purple_wool",
|
||||||
|
"minecraft:yellow_carpet",
|
||||||
|
"minecraft:lime_carpet",
|
||||||
|
"minecraft:blue_carpet"
|
||||||
|
],
|
||||||
|
"minecraft:warped_stems": [
|
||||||
|
"minecraft:warped_stem",
|
||||||
|
"minecraft:stripped_warped_stem",
|
||||||
|
"minecraft:warped_hyphae",
|
||||||
|
"minecraft:stripped_warped_hyphae"
|
||||||
|
],
|
||||||
|
"minecraft:wooden_slabs": [
|
||||||
|
"minecraft:spruce_slab",
|
||||||
|
"minecraft:warped_slab",
|
||||||
|
"minecraft:crimson_slab",
|
||||||
|
"minecraft:dark_oak_slab",
|
||||||
|
"minecraft:acacia_slab",
|
||||||
|
"minecraft:pale_oak_slab",
|
||||||
|
"minecraft:oak_slab",
|
||||||
|
"minecraft:birch_slab",
|
||||||
|
"minecraft:jungle_slab",
|
||||||
|
"minecraft:mangrove_slab",
|
||||||
|
"minecraft:cherry_slab",
|
||||||
|
"minecraft:bamboo_slab"
|
||||||
|
],
|
||||||
|
"minecraft:wooden_tier": [
|
||||||
|
"minecraft:wooden_pickaxe",
|
||||||
|
"minecraft:wooden_shovel",
|
||||||
|
"minecraft:wooden_axe",
|
||||||
|
"minecraft:wooden_hoe",
|
||||||
|
"minecraft:wooden_sword"
|
||||||
|
],
|
||||||
|
"minecraft:wool": [
|
||||||
|
"minecraft:white_wool",
|
||||||
|
"minecraft:magenta_wool",
|
||||||
|
"minecraft:light_blue_wool",
|
||||||
|
"minecraft:light_gray_wool",
|
||||||
|
"minecraft:red_wool",
|
||||||
|
"minecraft:lime_wool",
|
||||||
|
"minecraft:brown_wool",
|
||||||
|
"minecraft:pink_wool",
|
||||||
|
"minecraft:gray_wool",
|
||||||
|
"minecraft:black_wool",
|
||||||
|
"minecraft:orange_wool",
|
||||||
|
"minecraft:yellow_wool",
|
||||||
|
"minecraft:green_wool",
|
||||||
|
"minecraft:cyan_wool",
|
||||||
|
"minecraft:blue_wool",
|
||||||
|
"minecraft:purple_wool"
|
||||||
|
]
|
||||||
|
}
|
||||||
11432
core/src/main/resources/bedrock/runtime_item_states.1_21_130.json
Normal file
11432
core/src/main/resources/bedrock/runtime_item_states.1_21_130.json
Normal file
File diff suppressed because it is too large
Load Diff
@@ -13,10 +13,10 @@ guava = "29.0-jre"
|
|||||||
gson = "2.3.1" # Provided by Spigot 1.8.8 TODO bump to 2.8.1 or similar (Spigot 1.16.5 version) after Merge
|
gson = "2.3.1" # Provided by Spigot 1.8.8 TODO bump to 2.8.1 or similar (Spigot 1.16.5 version) after Merge
|
||||||
gson-runtime = "2.10.1"
|
gson-runtime = "2.10.1"
|
||||||
websocket = "1.5.1"
|
websocket = "1.5.1"
|
||||||
protocol-connection = "3.0.0.Beta11-20251105.180808-3"
|
protocol-connection = "3.0.0.Beta11-20251208.164944-9"
|
||||||
protocol-common = "3.0.0.Beta11-20251105.180808-2"
|
protocol-common = "3.0.0.Beta11-20251208.164944-8"
|
||||||
protocol-codec = "3.0.0.Beta11-20251105.180808-3"
|
protocol-codec = "3.0.0.Beta11-20251208.164944-9"
|
||||||
raknet = "1.0.0.CR3-20251031.125212-22"
|
raknet = "1.0.0.CR3-20251208.214317-23"
|
||||||
minecraftauth = "5.0.0"
|
minecraftauth = "5.0.0"
|
||||||
mcprotocollib = "1.21.9-20251029.184056-18"
|
mcprotocollib = "1.21.9-20251029.184056-18"
|
||||||
adventure = "4.25.0"
|
adventure = "4.25.0"
|
||||||
|
|||||||
Reference in New Issue
Block a user