diff --git a/src/main/java/org/violetmoon/quark/base/Quark.java b/src/main/java/org/violetmoon/quark/base/Quark.java index f060a210d..2b5a3c749 100644 --- a/src/main/java/org/violetmoon/quark/base/Quark.java +++ b/src/main/java/org/violetmoon/quark/base/Quark.java @@ -49,7 +49,7 @@ public class Quark { public Quark() { instance = this; - + ZETA.start(); proxy = Env.unsafeRunForDist(() -> ClientProxy::new, () -> CommonProxy::new); diff --git a/src/main/java/org/violetmoon/quark/content/tweaks/module/GrabChickensModule.java b/src/main/java/org/violetmoon/quark/content/tweaks/module/GrabChickensModule.java index ff70484c5..10d5d866d 100644 --- a/src/main/java/org/violetmoon/quark/content/tweaks/module/GrabChickensModule.java +++ b/src/main/java/org/violetmoon/quark/content/tweaks/module/GrabChickensModule.java @@ -105,8 +105,10 @@ public void playerTick(ZPlayerTick.Start event) { private boolean canPlayerHostChicken(Player player) { //check for known player classes as to avoid fake players (impls) var playerClass = player.getClass(); - if (playerClass != ServerPlayer.class && !Client.isClientPlayerClass(playerClass)) - return false; + if(player.level().isClientSide){ + if(!Client.isClientPlayerClass(playerClass)) return false; + }else if (playerClass != ServerPlayer.class) return false; + return (!needsNoHelmet || player.getItemBySlot(EquipmentSlot.HEAD).isEmpty()) && !player.isUnderWater(); }