From 01d764829678074116118fdccc91e44bc01a3352 Mon Sep 17 00:00:00 2001 From: Camotoy <20743703+Camotoy@users.noreply.github.com> Date: Mon, 7 Jun 2021 19:16:36 -0400 Subject: [PATCH] Implement new entity statuses and goat milk sounds --- connector/pom.xml | 2 +- .../entity/living/animal/GoatEntity.java | 9 ++++++++- .../entity/JavaEntityStatusTranslator.java | 20 ++++++++++++++++++- ...=> MilkEntitySoundInteractionHandler.java} | 19 ++++++++++++++---- 4 files changed, 43 insertions(+), 7 deletions(-) rename connector/src/main/java/org/geysermc/connector/network/translators/sound/entity/{MilkCowSoundInteractionHandler.java => MilkEntitySoundInteractionHandler.java} (78%) diff --git a/connector/pom.xml b/connector/pom.xml index 471ce3415..fc8f82cd9 100644 --- a/connector/pom.xml +++ b/connector/pom.xml @@ -148,7 +148,7 @@ com.github.GeyserMC MCProtocolLib - bc06ae5 + 2bd966a diff --git a/connector/src/main/java/org/geysermc/connector/entity/living/animal/GoatEntity.java b/connector/src/main/java/org/geysermc/connector/entity/living/animal/GoatEntity.java index e0c5066d6..a43998f27 100644 --- a/connector/src/main/java/org/geysermc/connector/entity/living/animal/GoatEntity.java +++ b/connector/src/main/java/org/geysermc/connector/entity/living/animal/GoatEntity.java @@ -29,6 +29,7 @@ import com.github.steveice10.mc.protocol.data.game.entity.metadata.EntityMetadat import com.github.steveice10.mc.protocol.data.game.entity.metadata.Pose; import com.nukkitx.math.vector.Vector3f; import com.nukkitx.protocol.bedrock.data.entity.EntityData; +import lombok.Getter; import org.geysermc.connector.entity.type.EntityType; import org.geysermc.connector.network.session.GeyserSession; @@ -36,6 +37,9 @@ public class GoatEntity extends AnimalEntity { private static final float LONG_JUMPING_HEIGHT = 1.3f * 0.7f; private static final float LONG_JUMPING_WIDTH = 0.9f * 0.7f; + @Getter + private boolean isScreamer; + public GoatEntity(long entityId, long geyserId, EntityType entityType, Vector3f position, Vector3f motion, Vector3f rotation) { super(entityId, geyserId, entityType, position, motion, rotation); } @@ -43,7 +47,10 @@ public class GoatEntity extends AnimalEntity { @Override public void updateBedrockMetadata(EntityMetadata entityMetadata, GeyserSession session) { super.updateBedrockMetadata(entityMetadata, session); - + if (entityMetadata.getId() == 17) { + // Not used in Bedrock Edition + isScreamer = (boolean) entityMetadata.getValue(); + } } @Override diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/java/entity/JavaEntityStatusTranslator.java b/connector/src/main/java/org/geysermc/connector/network/translators/java/entity/JavaEntityStatusTranslator.java index e33ef7bf1..f444d3ac1 100644 --- a/connector/src/main/java/org/geysermc/connector/network/translators/java/entity/JavaEntityStatusTranslator.java +++ b/connector/src/main/java/org/geysermc/connector/network/translators/java/entity/JavaEntityStatusTranslator.java @@ -94,6 +94,7 @@ public class JavaEntityStatusTranslator extends PacketTranslator