Handle effects with infinite duration (#3834)

This commit is contained in:
Konicai 2023-06-08 16:20:49 -04:00 committed by GitHub
parent 231e9a1cc6
commit 6791acd215
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 1 deletions

View File

@ -45,9 +45,15 @@ public class JavaUpdateMobEffectTranslator extends PacketTranslator<ClientboundU
if (entity == null)
return;
int duration = packet.getDuration();
if (duration < 0) {
// java edition uses -1 for infinite, but bedrock doesn't have infinite
duration = Integer.MAX_VALUE;
}
MobEffectPacket mobEffectPacket = new MobEffectPacket();
mobEffectPacket.setAmplifier(packet.getAmplifier());
mobEffectPacket.setDuration(packet.getDuration());
mobEffectPacket.setDuration(duration);
mobEffectPacket.setEvent(MobEffectPacket.Event.ADD);
mobEffectPacket.setRuntimeEntityId(entity.getGeyserId());
mobEffectPacket.setParticles(packet.isShowParticles());