From 80041606a7c01dac8b7f6fee47cac920eb197807 Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Fri, 1 Jul 2022 12:14:10 +0200 Subject: [PATCH] Merge 1.19.1->1.19 and 1.19->1.18.2 protocols --- .../api/ViaBackwardsPlatform.java | 7 +- .../Protocol1_18_2To1_19_1.java} | 33 ++++---- .../data/BackwardsMappings.java | 2 +- .../data/CommandRewriter1_19.java | 2 +- .../packets/BlockItemPackets1_19.java | 8 +- .../packets/EntityPackets1_19.java | 16 ++-- .../storage/DimensionRegistryStorage.java | 6 +- .../storage/StoredPainting.java | 2 +- .../Protocol1_19To1_19_1.java | 76 ------------------- .../packets/EntityPackets1_19_1.java | 51 ------------- 10 files changed, 40 insertions(+), 163 deletions(-) rename common/src/main/java/com/viaversion/viabackwards/protocol/{protocol1_18_2to1_19/Protocol1_18_2To1_19.java => protocol1_18_2to1_19_1/Protocol1_18_2To1_19_1.java} (94%) rename common/src/main/java/com/viaversion/viabackwards/protocol/{protocol1_18_2to1_19 => protocol1_18_2to1_19_1}/data/BackwardsMappings.java (99%) rename common/src/main/java/com/viaversion/viabackwards/protocol/{protocol1_18_2to1_19 => protocol1_18_2to1_19_1}/data/CommandRewriter1_19.java (99%) rename common/src/main/java/com/viaversion/viabackwards/protocol/{protocol1_18_2to1_19 => protocol1_18_2to1_19_1}/packets/BlockItemPackets1_19.java (98%) rename common/src/main/java/com/viaversion/viabackwards/protocol/{protocol1_18_2to1_19 => protocol1_18_2to1_19_1}/packets/EntityPackets1_19.java (97%) rename common/src/main/java/com/viaversion/viabackwards/protocol/{protocol1_18_2to1_19 => protocol1_18_2to1_19_1}/storage/DimensionRegistryStorage.java (94%) rename common/src/main/java/com/viaversion/viabackwards/protocol/{protocol1_18_2to1_19 => protocol1_18_2to1_19_1}/storage/StoredPainting.java (99%) delete mode 100644 common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_19to1_19_1/Protocol1_19To1_19_1.java delete mode 100644 common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_19to1_19_1/packets/EntityPackets1_19_1.java diff --git a/common/src/main/java/com/viaversion/viabackwards/api/ViaBackwardsPlatform.java b/common/src/main/java/com/viaversion/viabackwards/api/ViaBackwardsPlatform.java index 49f9c8d9..1c80205d 100644 --- a/common/src/main/java/com/viaversion/viabackwards/api/ViaBackwardsPlatform.java +++ b/common/src/main/java/com/viaversion/viabackwards/api/ViaBackwardsPlatform.java @@ -45,9 +45,8 @@ import com.viaversion.viabackwards.protocol.protocol1_16_4to1_17.Protocol1_16_4T import com.viaversion.viabackwards.protocol.protocol1_16to1_16_1.Protocol1_16To1_16_1; import com.viaversion.viabackwards.protocol.protocol1_17_1to1_18.Protocol1_17_1To1_18; import com.viaversion.viabackwards.protocol.protocol1_17to1_17_1.Protocol1_17To1_17_1; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.Protocol1_18_2To1_19; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.Protocol1_18_2To1_19_1; import com.viaversion.viabackwards.protocol.protocol1_18to1_18_2.Protocol1_18To1_18_2; -import com.viaversion.viabackwards.protocol.protocol1_19to1_19_1.Protocol1_19To1_19_1; import com.viaversion.viabackwards.protocol.protocol1_9_4to1_10.Protocol1_9_4To1_10; import com.viaversion.viaversion.api.Via; import com.viaversion.viaversion.api.protocol.ProtocolManager; @@ -114,8 +113,8 @@ public interface ViaBackwardsPlatform { protocolManager.registerProtocol(new Protocol1_17_1To1_18(), ProtocolVersion.v1_17_1, ProtocolVersion.v1_18); protocolManager.registerProtocol(new Protocol1_18To1_18_2(), ProtocolVersion.v1_18, ProtocolVersion.v1_18_2); - protocolManager.registerProtocol(new Protocol1_18_2To1_19(), ProtocolVersion.v1_18_2, ProtocolVersion.v1_19); - protocolManager.registerProtocol(new Protocol1_19To1_19_1(), ProtocolVersion.v1_19, ProtocolVersion.v1_19_1); + // 1.19.0 clients cannot join 1.19.1+ servers due to changes in the public profile key. 1.19.0 servers can use older ViaBackwards 4.3.1 snapshots + protocolManager.registerProtocol(new Protocol1_18_2To1_19_1(), ProtocolVersion.v1_18_2, ProtocolVersion.v1_19_1); } /** diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/Protocol1_18_2To1_19.java b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/Protocol1_18_2To1_19_1.java similarity index 94% rename from common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/Protocol1_18_2To1_19.java rename to common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/Protocol1_18_2To1_19_1.java index 270ffbdb..b5b1f2a2 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/Protocol1_18_2To1_19.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/Protocol1_18_2To1_19_1.java @@ -15,18 +15,18 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19; +package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1; import com.google.common.base.Preconditions; import com.viaversion.viabackwards.ViaBackwards; import com.viaversion.viabackwards.api.BackwardsProtocol; import com.viaversion.viabackwards.api.rewriters.SoundRewriter; import com.viaversion.viabackwards.api.rewriters.TranslatableRewriter; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.data.BackwardsMappings; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.data.CommandRewriter1_19; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.packets.BlockItemPackets1_19; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.packets.EntityPackets1_19; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.storage.DimensionRegistryStorage; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.data.BackwardsMappings; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.data.CommandRewriter1_19; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.packets.BlockItemPackets1_19; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.packets.EntityPackets1_19; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.storage.DimensionRegistryStorage; import com.viaversion.viaversion.api.connection.UserConnection; import com.viaversion.viaversion.api.minecraft.RegistryType; import com.viaversion.viaversion.api.minecraft.entities.Entity1_19Types; @@ -62,7 +62,7 @@ import com.viaversion.viaversion.rewriter.TagRewriter; import java.time.Instant; import java.util.UUID; -public final class Protocol1_18_2To1_19 extends BackwardsProtocol { +public final class Protocol1_18_2To1_19_1 extends BackwardsProtocol { public static final BackwardsMappings MAPPINGS = new BackwardsMappings(); private static final UUID ZERO_UUID = new UUID(0, 0); @@ -71,7 +71,7 @@ public final class Protocol1_18_2To1_19 extends BackwardsProtocol { + final boolean overlay = wrapper.read(Type.BOOLEAN); + wrapper.write(Type.BYTE, overlay ? (byte) 2 : (byte) 0); + }); create(Type.UUID, ZERO_UUID); // Sender } }); @@ -278,7 +279,9 @@ public final class Protocol1_18_2To1_19 extends BackwardsProtocol get("element").get("chat"); + chatType = chatType.get("element").get("chat"); if (chatType == null) { return null; } @@ -351,7 +354,7 @@ public final class Protocol1_18_2To1_19 extends BackwardsProtocol get(key).asByte() == 1) { + if (style.contains(key) && style.get(key).asByte() == 1) { component = component.decorate(TextDecoration.NAMES.value(key)); } } diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/data/BackwardsMappings.java b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/data/BackwardsMappings.java similarity index 99% rename from common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/data/BackwardsMappings.java rename to common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/data/BackwardsMappings.java index ccec19fd..d4d756d1 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/data/BackwardsMappings.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/data/BackwardsMappings.java @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.data; +package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.data; import com.viaversion.viabackwards.api.data.VBMappingDataLoader; import com.viaversion.viaversion.api.minecraft.nbt.BinaryTagIO; diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/data/CommandRewriter1_19.java b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/data/CommandRewriter1_19.java similarity index 99% rename from common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/data/CommandRewriter1_19.java rename to common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/data/CommandRewriter1_19.java index 6844de16..6331ce42 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/data/CommandRewriter1_19.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/data/CommandRewriter1_19.java @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.data; +package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.data; import com.viaversion.viaversion.api.protocol.Protocol; import com.viaversion.viaversion.api.type.Type; diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/packets/BlockItemPackets1_19.java b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/packets/BlockItemPackets1_19.java similarity index 98% rename from common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/packets/BlockItemPackets1_19.java rename to common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/packets/BlockItemPackets1_19.java index 7c81cde8..5fd4a5a5 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/packets/BlockItemPackets1_19.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/packets/BlockItemPackets1_19.java @@ -15,10 +15,10 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.packets; +package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.packets; import com.viaversion.viabackwards.api.rewriters.ItemRewriter; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.Protocol1_18_2To1_19; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.Protocol1_18_2To1_19_1; import com.viaversion.viaversion.api.data.ParticleMappings; import com.viaversion.viaversion.api.data.entity.EntityTracker; import com.viaversion.viaversion.api.minecraft.chunks.Chunk; @@ -36,9 +36,9 @@ import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.ClientboundPacke import com.viaversion.viaversion.rewriter.BlockRewriter; import com.viaversion.viaversion.util.MathUtil; -public final class BlockItemPackets1_19 extends ItemRewriter { +public final class BlockItemPackets1_19 extends ItemRewriter { - public BlockItemPackets1_19(final Protocol1_18_2To1_19 protocol) { + public BlockItemPackets1_19(final Protocol1_18_2To1_19_1 protocol) { super(protocol); } diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/packets/EntityPackets1_19.java b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/packets/EntityPackets1_19.java similarity index 97% rename from common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/packets/EntityPackets1_19.java rename to common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/packets/EntityPackets1_19.java index 40702364..c265e3a8 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/packets/EntityPackets1_19.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/packets/EntityPackets1_19.java @@ -15,12 +15,12 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.packets; +package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.packets; import com.viaversion.viabackwards.api.rewriters.EntityRewriter; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.Protocol1_18_2To1_19; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.storage.DimensionRegistryStorage; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.storage.StoredPainting; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.Protocol1_18_2To1_19_1; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.storage.DimensionRegistryStorage; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.storage.StoredPainting; import com.viaversion.viaversion.api.data.ParticleMappings; import com.viaversion.viaversion.api.data.entity.StoredEntityData; import com.viaversion.viaversion.api.minecraft.Position; @@ -41,9 +41,9 @@ import com.viaversion.viaversion.libs.opennbt.tag.builtin.Tag; import com.viaversion.viaversion.protocols.protocol1_18to1_17_1.ClientboundPackets1_18; import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.ClientboundPackets1_19; -public final class EntityPackets1_19 extends EntityRewriter { +public final class EntityPackets1_19 extends EntityRewriter { - public EntityPackets1_19(final Protocol1_18_2To1_19 protocol) { + public EntityPackets1_19(final Protocol1_18_2To1_19_1 protocol) { super(protocol); } @@ -307,7 +307,7 @@ public final class EntityPackets1_19 extends EntityRewriter. */ -package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.storage; +package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.storage; -import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.Protocol1_18_2To1_19; +import com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.Protocol1_18_2To1_19_1; import com.viaversion.viaversion.api.connection.StorableObject; import com.viaversion.viaversion.libs.fastutil.ints.Int2ObjectMap; import com.viaversion.viaversion.libs.fastutil.ints.Int2ObjectOpenHashMap; @@ -42,7 +42,7 @@ public final class DimensionRegistryStorage implements StorableObject { } public @Nullable CompoundTag chatType(final int id) { - if (chatTypes.isEmpty()) return Protocol1_18_2To1_19.MAPPINGS.chatType(id); + if (chatTypes.isEmpty()) return Protocol1_18_2To1_19_1.MAPPINGS.chatType(id); return chatTypes.get(id); } diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/storage/StoredPainting.java b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/storage/StoredPainting.java similarity index 99% rename from common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/storage/StoredPainting.java rename to common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/storage/StoredPainting.java index 49b8de47..f0351ef9 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19/storage/StoredPainting.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_18_2to1_19_1/storage/StoredPainting.java @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19.storage; +package com.viaversion.viabackwards.protocol.protocol1_18_2to1_19_1.storage; import com.viaversion.viaversion.api.connection.StorableObject; import com.viaversion.viaversion.api.minecraft.Position; diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_19to1_19_1/Protocol1_19To1_19_1.java b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_19to1_19_1/Protocol1_19To1_19_1.java deleted file mode 100644 index f0346803..00000000 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_19to1_19_1/Protocol1_19To1_19_1.java +++ /dev/null @@ -1,76 +0,0 @@ -/* - * This file is part of ViaBackwards - https://github.com/ViaVersion/ViaBackwards - * Copyright (C) 2016-2022 ViaVersion and contributors - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.viaversion.viabackwards.protocol.protocol1_19to1_19_1; - -import com.viaversion.viabackwards.api.BackwardsProtocol; -import com.viaversion.viabackwards.protocol.protocol1_19to1_19_1.packets.EntityPackets1_19_1; -import com.viaversion.viaversion.api.connection.UserConnection; -import com.viaversion.viaversion.api.protocol.packet.State; -import com.viaversion.viaversion.api.protocol.remapper.PacketRemapper; -import com.viaversion.viaversion.api.type.Type; -import com.viaversion.viaversion.data.entity.EntityTrackerBase; -import com.viaversion.viaversion.protocols.base.ServerboundLoginPackets; -import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.ClientboundPackets1_19; -import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.ServerboundPackets1_19; - -public final class Protocol1_19To1_19_1 extends BackwardsProtocol { - - private final EntityPackets1_19_1 entityRewriter = new EntityPackets1_19_1(this); - - @Override - protected void registerPackets() { - entityRewriter.register(); - - // Skip 1.19 and assume 1.19.1->1.18.2 translation - registerClientbound(ClientboundPackets1_19.SYSTEM_CHAT, new PacketRemapper() { - @Override - public void registerMap() { - map(Type.COMPONENT); - handler(wrapper -> { - if (wrapper.read(Type.BOOLEAN)) { - wrapper.cancel(); - return; - } - - wrapper.write(Type.VAR_INT, 0); // TODO - }); - } - }); - - registerServerbound(State.LOGIN, ServerboundLoginPackets.HELLO.getId(), ServerboundLoginPackets.HELLO.getId(), new PacketRemapper() { - @Override - public void registerMap() { - map(Type.STRING); // Name - // Write empty profile key and uuid - read(Type.OPTIONAL_PROFILE_KEY); - create(Type.OPTIONAL_PROFILE_KEY, null); - create(Type.OPTIONAL_UUID, null); - } - }); - } - - @Override - public EntityPackets1_19_1 getEntityRewriter() { - return entityRewriter; - } - - @Override - public void init(final UserConnection user) { - addEntityTracker(user, new EntityTrackerBase(user, null)); - } -} diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_19to1_19_1/packets/EntityPackets1_19_1.java b/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_19to1_19_1/packets/EntityPackets1_19_1.java deleted file mode 100644 index 8b4c0dff..00000000 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_19to1_19_1/packets/EntityPackets1_19_1.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * This file is part of ViaBackwards - https://github.com/ViaVersion/ViaBackwards - * Copyright (C) 2016-2022 ViaVersion and contributors - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.viaversion.viabackwards.protocol.protocol1_19to1_19_1.packets; - -import com.viaversion.viabackwards.api.rewriters.EntityRewriter; -import com.viaversion.viabackwards.protocol.protocol1_19to1_19_1.Protocol1_19To1_19_1; -import com.viaversion.viaversion.api.minecraft.entities.Entity1_19Types; -import com.viaversion.viaversion.api.minecraft.entities.EntityType; -import com.viaversion.viaversion.api.type.types.version.Types1_18; -import com.viaversion.viaversion.api.type.types.version.Types1_19; -import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.ClientboundPackets1_19; - -public final class EntityPackets1_19_1 extends EntityRewriter { - - public EntityPackets1_19_1(final Protocol1_19To1_19_1 protocol) { - super(protocol); - } - - @Override - protected void registerPackets() { - registerMetadataRewriter(ClientboundPackets1_19.ENTITY_METADATA, Types1_19.METADATA_LIST, Types1_18.METADATA_LIST); - registerRemoveEntities(ClientboundPackets1_19.REMOVE_ENTITIES); - registerSpawnTracker(ClientboundPackets1_19.SPAWN_ENTITY); - } - - @Override - public void registerRewrites() { - filter().type(Entity1_19Types.ALLAY).cancel(16); // Dancing - filter().type(Entity1_19Types.ALLAY).cancel(17); // Can duplicate - } - - @Override - public EntityType typeFromId(final int typeId) { - return Entity1_19Types.getTypeFromId(typeId); - } -}