From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: BillyGalbreath <Blake.Galbreath@GMail.com>
Date: Fri, 27 Jul 2018 22:36:31 -0500
Subject: [PATCH] SkeletonHorse Additions


diff --git a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java
index 621f2afee599e82806d54de15ff413674523815c..290cb9337c868fa3b9cbef0545886f44a00ef804 100644
--- a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java
+++ b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java
@@ -6,7 +6,7 @@ public class EntityHorseSkeleton extends EntityHorseAbstract {
 
     private final PathfinderGoalHorseTrap bF = new PathfinderGoalHorseTrap(this);
     private boolean bG;
-    private int bH;
+    private int bH; public int getTrapTime() { return this.bH; } // Paper - OBFHELPER
 
     public EntityHorseSkeleton(EntityTypes<? extends EntityHorseSkeleton> entitytypes, World world) {
         super(entitytypes, world);
@@ -124,10 +124,12 @@ public class EntityHorseSkeleton extends EntityHorseAbstract {
         return 0.96F;
     }
 
+    public boolean isTrap() { return this.eq(); } // Paper - OBFHELPER
     public boolean eq() {
         return this.bG;
     }
 
+    public void setTrap(boolean trap) { this.r(trap); } // Paper - OBFHELPER
     public void r(boolean flag) {
         if (flag != this.bG) {
             this.bG = flag;
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalHorseTrap.java b/src/main/java/net/minecraft/server/PathfinderGoalHorseTrap.java
index dfe5a63583d8c14c82cc778ee004f2877e43776d..37626f925fb7838e41f7bfab352c9360b3786b4a 100644
--- a/src/main/java/net/minecraft/server/PathfinderGoalHorseTrap.java
+++ b/src/main/java/net/minecraft/server/PathfinderGoalHorseTrap.java
@@ -15,6 +15,7 @@ public class PathfinderGoalHorseTrap extends PathfinderGoal {
 
     @Override
     public void e() {
+        if (!new com.destroystokyo.paper.event.entity.SkeletonHorseTrapEvent((org.bukkit.entity.SkeletonHorse) this.a.getBukkitEntity()).callEvent()) return; // Paper
         DifficultyDamageScaler difficultydamagescaler = this.a.world.getDamageScaler(new BlockPosition(this.a));
 
         this.a.r(false);
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeletonHorse.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeletonHorse.java
index e822c2200d6270ca538eadd9637b748fc3602cb6..2a7d1d4ec2c1ff16840614165c6f0c37dc534d87 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeletonHorse.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeletonHorse.java
@@ -26,4 +26,26 @@ public class CraftSkeletonHorse extends CraftAbstractHorse implements SkeletonHo
     public Variant getVariant() {
         return Variant.SKELETON_HORSE;
     }
+
+    // Paper start
+    @Override
+    public EntityHorseSkeleton getHandle() {
+        return (EntityHorseSkeleton) super.getHandle();
+    }
+
+    @Override
+    public int getTrapTime() {
+        return getHandle().getTrapTime();
+    }
+
+    @Override
+    public boolean isTrap() {
+        return getHandle().isTrap();
+    }
+
+    @Override
+    public void setTrap(boolean trap) {
+        getHandle().setTrap(trap);
+    }
+    // Paper end
 }