Add additional APIs for Evoker / EvokerFangs

This commit is contained in:
momothereal 2016-11-19 18:53:57 +11:00 committed by md_5
parent bd2d7935c4
commit 89e6712cde
3 changed files with 39 additions and 1 deletions

View file

@ -0,0 +1,15 @@
--- a/net/minecraft/server/EntityEvoker.java
+++ b/net/minecraft/server/EntityEvoker.java
@@ -76,6 +76,12 @@
this.datawatcher.set(EntityEvoker.a, Byte.valueOf((byte) i));
}
+ // CraftBukkit start
+ public int getSpell() {
+ return this.datawatcher.get(EntityEvoker.a).intValue();
+ }
+ // CraftBukkit end
+
private int di() {
return this.b;
}

View file

@ -25,4 +25,14 @@ public class CraftEvoker extends CraftMonster implements Evoker {
public EntityType getType() {
return EntityType.EVOKER;
}
@Override
public Spell getCurrentSpell() {
return Spell.values()[getHandle().getSpell()];
}
@Override
public void setCurrentSpell(Spell spell) {
getHandle().a(spell == null ? 0 : spell.ordinal());
}
}

View file

@ -1,10 +1,11 @@
package org.bukkit.craftbukkit.entity;
import net.minecraft.server.Entity;
import net.minecraft.server.EntityEvokerFangs;
import net.minecraft.server.EntityLiving;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.EvokerFangs;
import org.bukkit.entity.LivingEntity;
public class CraftEvokerFangs extends CraftEntity implements EvokerFangs {
@ -26,4 +27,16 @@ public class CraftEvokerFangs extends CraftEntity implements EvokerFangs {
public EntityType getType() {
return EntityType.EVOKER_FANGS;
}
@Override
public LivingEntity getOwner() {
EntityLiving owner = getHandle().j(); // PAIL: rename
return (owner == null) ? null : (LivingEntity) owner.getBukkitEntity();
}
@Override
public void setOwner(LivingEntity owner) {
getHandle().a(owner == null ? null : ((CraftLivingEntity) owner).getHandle());
}
}