protected virtual bool tryHeldBeginEatMeal(ItemSlot slot, EntityAgent byEntity, ref EnumHandHandling handHandling) { if (!byEntity.Controls.Sneak && GetContentNutritionProperties(api.World, slot, byEntity) != null) { byEntity.World.RegisterCallback((dt) => { if (byEntity.Controls.HandUse == EnumHandInteract.HeldItemInteract) { byEntity.PlayEntitySound("eat", (byEntity as EntityPlayer)?.Player); } }, 500); handHandling = EnumHandHandling.PreventDefault; return(true); } return(false); }
public override void OnHeldInteractStart(ItemSlot slot, EntityAgent byEntity, BlockSelection blockSel, EntitySelection entitySel, bool firstEvent, ref EnumHandHandling handHandling) { if (!byEntity.Controls.Sneak && GetContentNutritionProperties(byEntity.World, slot, byEntity) != null) { byEntity.World.RegisterCallback((dt) => { if (byEntity.Controls.HandUse == EnumHandInteract.HeldItemInteract) { byEntity.PlayEntitySound("eat", (byEntity as EntityPlayer)?.Player); } }, 500); handHandling = EnumHandHandling.PreventDefault; return; } base.OnHeldInteractStart(slot, byEntity, blockSel, entitySel, firstEvent, ref handHandling); }