So i tried to reset the stepheight of the player during the LivingEquipmentChangeEvent. However it seems like one side, either the client or the server doesn't seem to notice the change. Here is my Code:
@SubscribeEvent
public void armorUnEquip(LivingEquipmentChangeEvent event) {
EquipmentSlotType slot = event.getSlot();
if (slot == EquipmentSlotType.FEET) {
ItemStack stackFrom = event.getFrom();
ItemStack stackTo = event.getTo();
if (stackTo == ItemStack.EMPTY) {
if (stackFrom.getItem() instanceof IUnEquip) {
((IUnEquip) stackFrom.getItem()).onUnEquip(event.getEntityLiving(), stackFrom);
}
}
}
}
and in the armor item:
@Override
public void onArmorTick(ItemStack stack, World world, PlayerEntity player) {
player.stepHeight = 1.25f;
}
@Override
public void onUnEquip(LivingEntity entity, ItemStack stack) {
if (entity instanceof PlayerEntity && stack.getItem() == this) {
entity.stepHeight = 1.0f;
}
}