Handle block state particles when identifier is used in 1.20.5->.3 (#764)

This commit is contained in:
EnZaXD 2024-05-30 10:45:02 +02:00 committed by GitHub
parent 3511ba3c67
commit b53c0aeb9b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -283,8 +283,13 @@ public final class EntityPacketRewriter1_20_5 extends EntityRewriter<Clientbound
private void updateParticleFormat(final CompoundTag options, final String particleType) { private void updateParticleFormat(final CompoundTag options, final String particleType) {
if ("block".equals(particleType) || "block_marker".equals(particleType) || "falling_dust".equals(particleType) || "dust_pillar".equals(particleType)) { if ("block".equals(particleType) || "block_marker".equals(particleType) || "falling_dust".equals(particleType) || "dust_pillar".equals(particleType)) {
// TODO Can be a string Tag blockState = options.remove("block_state");
moveTag(options, "block_state", "value"); if (blockState instanceof StringTag) {
final CompoundTag compoundTag = new CompoundTag();
compoundTag.put("Name", blockState);
blockState = compoundTag;
}
options.put("value", blockState);
} else if ("item".equals(particleType)) { } else if ("item".equals(particleType)) {
Tag item = options.remove("item"); Tag item = options.remove("item");
if (item instanceof StringTag) { if (item instanceof StringTag) {