--- a/net/minecraft/world/entity/ai/goal/PathfinderGoalTame.java
+++ b/net/minecraft/world/entity/ai/goal/PathfinderGoalTame.java
@@ -7,6 +7,11 @@
 import net.minecraft.world.entity.player.EntityHuman;
 import net.minecraft.world.phys.Vec3D;
 
+// CraftBukkit start
+import org.bukkit.craftbukkit.entity.CraftHumanEntity;
+import org.bukkit.craftbukkit.event.CraftEventFactory;
+// CraftBukkit end
+
 public class PathfinderGoalTame extends PathfinderGoal {
 
     private final EntityHorseAbstract horse;
@@ -62,7 +67,7 @@
                 int i = this.horse.getTemper();
                 int j = this.horse.getMaxTemper();
 
-                if (j > 0 && this.horse.getRandom().nextInt(j) < i) {
+                if (j > 0 && this.horse.getRandom().nextInt(j) < i && !CraftEventFactory.callEntityTameEvent(this.horse, ((CraftHumanEntity) this.horse.getBukkitEntity().getPassenger()).getHandle()).isCancelled()) { // CraftBukkit - fire EntityTameEvent
                     this.horse.tameWithName((EntityHuman) entity);
                     return;
                 }
