From 8f0c1aed6bb7d3dd24baffaa7e01d2297f159995 Mon Sep 17 00:00:00 2001
From: feildmaster <admin@feildmaster.com>
Date: Mon, 31 Dec 2012 14:00:55 -0600
Subject: [PATCH] Fix "setSitting" on tameable animals. Fixes BUKKIT-1534

This makes it so animals (tame or not) will sit properly and not move
around.

Wild animals that are sitting may override the sitting position if
they are attacking.
---
 src/main/java/net/minecraft/server/PathfinderGoalSit.java      | 2 +-
 .../org/bukkit/craftbukkit/entity/CraftTameableAnimal.java     | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/main/java/net/minecraft/server/PathfinderGoalSit.java b/src/main/java/net/minecraft/server/PathfinderGoalSit.java
index 6b34a97cb1..3b9b97a52e 100644
--- a/src/main/java/net/minecraft/server/PathfinderGoalSit.java
+++ b/src/main/java/net/minecraft/server/PathfinderGoalSit.java
@@ -12,7 +12,7 @@ public class PathfinderGoalSit extends PathfinderGoal {
 
     public boolean a() {
         if (!this.a.isTamed()) {
-            return false;
+            return this.b && this.a.aG() == null; // CraftBukkit - Allow sitting for wild animals
         } else if (this.a.H()) {
             return false;
         } else if (!this.a.onGround) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftTameableAnimal.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftTameableAnimal.java
index 8fb8629bc0..0134bda7f0 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftTameableAnimal.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftTameableAnimal.java
@@ -62,8 +62,7 @@ public class CraftTameableAnimal extends CraftAnimals implements Tameable, Creat
     }
 
     public void setSitting(boolean sitting) {
-        getHandle().setSitting(sitting);
-        getHandle().setPathEntity(null);
+        getHandle().q().a(sitting);
     }
 
     @Override