1
0
mirror of https://github.com/GeyserMC/Geyser.git synced 2025-12-19 14:59:27 +00:00

Handle Happy Ghast shearing on interact (#5729)

* Handle Happy Ghast shearing on interact

* Use the correct interactive tag, fix requirements to be able to shear off the harness
This commit is contained in:
Aurorawr
2025-08-05 16:49:06 +00:00
committed by GitHub
parent a41cc9e4a3
commit 61a1ddd3fd

View File

@@ -39,6 +39,7 @@ import org.geysermc.geyser.entity.vehicle.ClientVehicle;
import org.geysermc.geyser.entity.vehicle.HappyGhastVehicleComponent;
import org.geysermc.geyser.entity.vehicle.VehicleComponent;
import org.geysermc.geyser.inventory.GeyserItemStack;
import org.geysermc.geyser.item.Items;
import org.geysermc.geyser.item.type.Item;
import org.geysermc.geyser.session.GeyserSession;
import org.geysermc.geyser.session.cache.tags.ItemTag;
@@ -126,8 +127,12 @@ public class HappyGhastEntity extends AnimalEntity implements ClientVehicle {
// Harnesses the ghast
return InteractiveTag.EQUIP_HARNESS;
}
} else if (itemInHand.asItem() == Items.SHEARS) {
if (this.canShearEquipment() && !session.isSneaking()) {
// Shears the harness off of the ghast
return InteractiveTag.REMOVE_HARNESS;
}
}
// TODO: Handle shearing the harness off
}
if (this.equipment.get(EquipmentSlot.BODY) != null && !session.isSneaking()) {
@@ -151,8 +156,12 @@ public class HappyGhastEntity extends AnimalEntity implements ClientVehicle {
// Harnesses the ghast
return InteractionResult.SUCCESS;
}
} else if (itemInHand.asItem() == Items.SHEARS) {
if (this.canShearEquipment() && !session.isSneaking()) {
// Shears the harness off of the ghast
return InteractionResult.SUCCESS;
}
}
// TODO: Handle shearing the harness off
}
if (this.equipment.get(EquipmentSlot.BODY) == null && !session.isSneaking()) {