@@ -0,0 +1,97 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import java.util.UUID;
|
||||
import net.minecraft.server.EntityHorse;
|
||||
import net.minecraft.server.EntityHorseAbstract;
|
||||
import org.apache.commons.lang.Validate;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.craftbukkit.inventory.CraftInventory;
|
||||
import org.bukkit.entity.AbstractHorse;
|
||||
import org.bukkit.entity.AnimalTamer;
|
||||
import org.bukkit.entity.Horse;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
|
||||
public abstract class CraftAbstractHorse extends CraftAnimals implements AbstractHorse {
|
||||
|
||||
public CraftAbstractHorse(CraftServer server, EntityHorseAbstract entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityHorseAbstract getHandle() {
|
||||
return (EntityHorseAbstract) entity;
|
||||
}
|
||||
|
||||
public void setVariant(Horse.Variant variant) {
|
||||
throw new UnsupportedOperationException("Not supported.");
|
||||
}
|
||||
|
||||
public int getDomestication() {
|
||||
return getHandle().getTemper();
|
||||
}
|
||||
|
||||
public void setDomestication(int value) {
|
||||
Validate.isTrue(value >= 0, "Domestication cannot be less than zero");
|
||||
Validate.isTrue(value <= getMaxDomestication(), "Domestication cannot be greater than the max domestication");
|
||||
getHandle().setTemper(value);
|
||||
}
|
||||
|
||||
public int getMaxDomestication() {
|
||||
return getHandle().getMaxDomestication();
|
||||
}
|
||||
|
||||
public void setMaxDomestication(int value) {
|
||||
Validate.isTrue(value > 0, "Max domestication cannot be zero or less");
|
||||
getHandle().maxDomestication = value;
|
||||
}
|
||||
|
||||
public double getJumpStrength() {
|
||||
return getHandle().getJumpStrength();
|
||||
}
|
||||
|
||||
public void setJumpStrength(double strength) {
|
||||
Validate.isTrue(strength >= 0, "Jump strength cannot be less than zero");
|
||||
getHandle().getAttributeInstance(EntityHorse.attributeJumpStrength).setValue(strength);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isTamed() {
|
||||
return getHandle().isTamed();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTamed(boolean tamed) {
|
||||
getHandle().setTamed(tamed);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnimalTamer getOwner() {
|
||||
if (getOwnerUUID() == null) return null;
|
||||
return getServer().getOfflinePlayer(getOwnerUUID());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setOwner(AnimalTamer owner) {
|
||||
if (owner != null) {
|
||||
setTamed(true);
|
||||
getHandle().setGoalTarget(null, null, false);
|
||||
setOwnerUUID(owner.getUniqueId());
|
||||
} else {
|
||||
setTamed(false);
|
||||
setOwnerUUID(null);
|
||||
}
|
||||
}
|
||||
|
||||
public UUID getOwnerUUID() {
|
||||
return getHandle().getOwnerUUID();
|
||||
}
|
||||
|
||||
public void setOwnerUUID(UUID uuid) {
|
||||
getHandle().setOwnerUUID(uuid);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Inventory getInventory() {
|
||||
return new CraftInventory(getHandle().inventoryChest);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityHorseChestedAbstract;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.ChestedHorse;
|
||||
|
||||
public abstract class CraftChestedHorse extends CraftAbstractHorse implements ChestedHorse {
|
||||
|
||||
public CraftChestedHorse(CraftServer server, EntityHorseChestedAbstract entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityHorseChestedAbstract getHandle() {
|
||||
return (EntityHorseChestedAbstract) super.getHandle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCarryingChest() {
|
||||
return getHandle().isCarryingChest();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCarryingChest(boolean chest) {
|
||||
getHandle().setCarryingChest(chest);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityHorseDonkey;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.Donkey;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Horse.Variant;
|
||||
|
||||
public class CraftDonkey extends CraftChestedHorse implements Donkey {
|
||||
|
||||
public CraftDonkey(CraftServer server, EntityHorseDonkey entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftDonkey";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.DONKEY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Variant getVariant() {
|
||||
return Variant.DONKEY;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityGuardianElder;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.ElderGuardian;
|
||||
import org.bukkit.entity.EntityType;
|
||||
|
||||
public class CraftElderGuardian extends CraftGuardian implements ElderGuardian {
|
||||
|
||||
public CraftElderGuardian(CraftServer server, EntityGuardianElder entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftElderGuardian";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.ELDER_GUARDIAN;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isElder() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -65,7 +65,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
else if (entity instanceof EntityOcelot) { return new CraftOcelot(server, (EntityOcelot) entity); }
|
||||
}
|
||||
else if (entity instanceof EntitySheep) { return new CraftSheep(server, (EntitySheep) entity); }
|
||||
else if (entity instanceof EntityHorse) { return new CraftHorse(server, (EntityHorse) entity); }
|
||||
else if (entity instanceof EntityHorseAbstract) {
|
||||
if (entity instanceof EntityHorseChestedAbstract){
|
||||
if (entity instanceof EntityHorseDonkey) { return new CraftDonkey(server, (EntityHorseDonkey) entity); }
|
||||
else if (entity instanceof EntityHorseMule) { return new CraftMule(server, (EntityHorseMule) entity); }
|
||||
else if (entity instanceof EntityLlama) { return new CraftLlama(server, (EntityLlama) entity); }
|
||||
} else if (entity instanceof EntityHorse) { return new CraftHorse(server, (EntityHorse) entity); }
|
||||
else if (entity instanceof EntityHorseSkeleton) { return new CraftSkeletonHorse(server, (EntityHorseSkeleton) entity); }
|
||||
else if (entity instanceof EntityHorseZombie) { return new CraftZombieHorse(server, (EntityHorseZombie) entity); }
|
||||
}
|
||||
else if (entity instanceof EntityRabbit) { return new CraftRabbit(server, (EntityRabbit) entity); }
|
||||
else if (entity instanceof EntityPolarBear) { return new CraftPolarBear(server, (EntityPolarBear) entity); }
|
||||
else { return new CraftAnimals(server, (EntityAnimal) entity); }
|
||||
@@ -74,13 +82,19 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
else if (entity instanceof EntityMonster) {
|
||||
if (entity instanceof EntityZombie) {
|
||||
if (entity instanceof EntityPigZombie) { return new CraftPigZombie(server, (EntityPigZombie) entity); }
|
||||
else if (entity instanceof EntityZombieHusk) { return new CraftHusk(server, (EntityZombieHusk) entity); }
|
||||
else if (entity instanceof EntityZombieVillager) { return new CraftVillagerZombie(server, (EntityZombieVillager) entity); }
|
||||
else { return new CraftZombie(server, (EntityZombie) entity); }
|
||||
}
|
||||
else if (entity instanceof EntityCreeper) { return new CraftCreeper(server, (EntityCreeper) entity); }
|
||||
else if (entity instanceof EntityEnderman) { return new CraftEnderman(server, (EntityEnderman) entity); }
|
||||
else if (entity instanceof EntitySilverfish) { return new CraftSilverfish(server, (EntitySilverfish) entity); }
|
||||
else if (entity instanceof EntityGiantZombie) { return new CraftGiant(server, (EntityGiantZombie) entity); }
|
||||
else if (entity instanceof EntitySkeleton) { return new CraftSkeleton(server, (EntitySkeleton) entity); }
|
||||
else if (entity instanceof EntitySkeletonAbstract) {
|
||||
if (entity instanceof EntitySkeletonStray) { return new CraftStray(server, (EntitySkeletonStray) entity); }
|
||||
else if (entity instanceof EntitySkeletonWither) { return new CraftWitherSkeleton(server, (EntitySkeletonWither) entity); }
|
||||
else { return new CraftSkeleton(server, (EntitySkeletonAbstract) entity); }
|
||||
}
|
||||
else if (entity instanceof EntityBlaze) { return new CraftBlaze(server, (EntityBlaze) entity); }
|
||||
else if (entity instanceof EntityWitch) { return new CraftWitch(server, (EntityWitch) entity); }
|
||||
else if (entity instanceof EntityWither) { return new CraftWither(server, (EntityWither) entity); }
|
||||
@@ -89,7 +103,13 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
else { return new CraftSpider(server, (EntitySpider) entity); }
|
||||
}
|
||||
else if (entity instanceof EntityEndermite) { return new CraftEndermite(server, (EntityEndermite) entity); }
|
||||
else if (entity instanceof EntityGuardian) { return new CraftGuardian(server, (EntityGuardian) entity); }
|
||||
else if (entity instanceof EntityGuardian) {
|
||||
if (entity instanceof EntityGuardianElder) { return new CraftElderGuardian(server, (EntityGuardianElder) entity); }
|
||||
else { return new CraftGuardian(server, (EntityGuardian) entity); }
|
||||
}
|
||||
else if (entity instanceof EntityEvoker) { return new CraftEvoker(server, (EntityEvoker) entity); }
|
||||
else if (entity instanceof EntityVex) { return new CraftVex(server, (EntityVex) entity); }
|
||||
else if (entity instanceof EntityVindicator) { return new CraftVindicator(server, (EntityVindicator) entity); }
|
||||
|
||||
else { return new CraftMonster(server, (EntityMonster) entity); }
|
||||
}
|
||||
@@ -145,7 +165,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
else if (entity instanceof EntityEnderPearl) { return new CraftEnderPearl(server, (EntityEnderPearl) entity); }
|
||||
else if (entity instanceof EntityThrownExpBottle) { return new CraftThrownExpBottle(server, (EntityThrownExpBottle) entity); }
|
||||
}
|
||||
else if (entity instanceof EntityFallingBlock) { return new CraftFallingSand(server, (EntityFallingBlock) entity); }
|
||||
else if (entity instanceof EntityFallingBlock) { return new CraftFallingBlock(server, (EntityFallingBlock) entity); }
|
||||
else if (entity instanceof EntityFireball) {
|
||||
if (entity instanceof EntitySmallFireball) { return new CraftSmallFireball(server, (EntitySmallFireball) entity); }
|
||||
else if (entity instanceof EntityLargeFireball) { return new CraftLargeFireball(server, (EntityLargeFireball) entity); }
|
||||
@@ -179,6 +199,8 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
else if (entity instanceof EntityFireworks) { return new CraftFirework(server, (EntityFireworks) entity); }
|
||||
else if (entity instanceof EntityShulkerBullet) { return new CraftShulkerBullet(server, (EntityShulkerBullet) entity); }
|
||||
else if (entity instanceof EntityAreaEffectCloud) { return new CraftAreaEffectCloud(server, (EntityAreaEffectCloud) entity); }
|
||||
else if (entity instanceof EntityEvokerFangs) { return new CraftEvokerFangs(server, (EntityEvokerFangs) entity); }
|
||||
else if (entity instanceof EntityLlamaSpit) { return new CraftLlamaSpit(server, (EntityLlamaSpit) entity); }
|
||||
|
||||
throw new AssertionError("Unknown entity " + (entity == null ? null : entity.getClass()));
|
||||
}
|
||||
@@ -213,7 +235,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
|
||||
public boolean isOnGround() {
|
||||
if (entity instanceof EntityArrow) {
|
||||
return ((EntityArrow) entity).isInGround();
|
||||
return ((EntityArrow) entity).inGround;
|
||||
}
|
||||
return entity.onGround;
|
||||
}
|
||||
@@ -267,7 +289,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
}
|
||||
|
||||
public int getMaxFireTicks() {
|
||||
return entity.maxFireTicks;
|
||||
return entity.getMaxFireTicks();
|
||||
}
|
||||
|
||||
public void setFireTicks(int ticks) {
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityEvoker;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Evoker;
|
||||
|
||||
public class CraftEvoker extends CraftMonster implements Evoker {
|
||||
|
||||
public CraftEvoker(CraftServer server, EntityEvoker entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityEvoker getHandle() {
|
||||
return (EntityEvoker) super.getHandle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftEvoker";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.EVOKER;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.Entity;
|
||||
import net.minecraft.server.EntityEvokerFangs;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.EvokerFangs;
|
||||
|
||||
public class CraftEvokerFangs extends CraftEntity implements EvokerFangs {
|
||||
|
||||
public CraftEvokerFangs(CraftServer server, EntityEvokerFangs entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityEvokerFangs getHandle() {
|
||||
return (EntityEvokerFangs) super.getHandle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftEvokerFangs";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.EVOKER_FANGS;
|
||||
}
|
||||
}
|
||||
@@ -6,11 +6,11 @@ import org.bukkit.Material;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.craftbukkit.util.CraftMagicNumbers;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.FallingSand;
|
||||
import org.bukkit.entity.FallingBlock;
|
||||
|
||||
public class CraftFallingSand extends CraftEntity implements FallingSand {
|
||||
public class CraftFallingBlock extends CraftEntity implements FallingBlock {
|
||||
|
||||
public CraftFallingSand(CraftServer server, EntityFallingBlock entity) {
|
||||
public CraftFallingBlock(CraftServer server, EntityFallingBlock entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ public class CraftFallingSand extends CraftEntity implements FallingSand {
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftFallingSand";
|
||||
return "CraftFallingBlock";
|
||||
}
|
||||
|
||||
public EntityType getType() {
|
||||
@@ -1,9 +1,6 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import net.minecraft.server.EntityFireworks;
|
||||
import net.minecraft.server.ItemStack;
|
||||
import net.minecraft.server.Items;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
@@ -21,15 +18,7 @@ public class CraftFirework extends CraftEntity implements Firework {
|
||||
|
||||
public CraftFirework(CraftServer server, EntityFireworks entity) {
|
||||
super(server, entity);
|
||||
|
||||
ItemStack item = getHandle().getDataWatcher().get(EntityFireworks.FIREWORK_ITEM).orNull();
|
||||
|
||||
if (item == null) {
|
||||
item = new ItemStack(Items.FIREWORKS);
|
||||
getHandle().getDataWatcher().set(EntityFireworks.FIREWORK_ITEM, Optional.of(item));
|
||||
}
|
||||
|
||||
this.item = CraftItemStack.asCraftMirror(item);
|
||||
this.item = CraftItemStack.asCraftMirror(getHandle().getDataWatcher().get(EntityFireworks.FIREWORK_ITEM));
|
||||
|
||||
// Ensure the item is a firework...
|
||||
if (this.item.getType() != Material.FIREWORK) {
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityGuardian;
|
||||
import net.minecraft.server.GenericAttributes;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Guardian;
|
||||
@@ -24,33 +23,11 @@ public class CraftGuardian extends CraftMonster implements Guardian {
|
||||
|
||||
@Override
|
||||
public boolean isElder() {
|
||||
return ((EntityGuardian)entity).isElder();
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setElder( boolean shouldBeElder ) {
|
||||
EntityGuardian entityGuardian = (EntityGuardian) entity;
|
||||
|
||||
if (!isElder() && shouldBeElder) {
|
||||
entityGuardian.setElder(true);
|
||||
} else if (isElder() && !shouldBeElder) {
|
||||
entityGuardian.setElder(false);
|
||||
|
||||
// Since minecraft does not reset the elder Guardian to a guardian we have to do that
|
||||
entity.setSize(0.85F, 0.85F);
|
||||
|
||||
// Since aW() calls its supers it will try to re register attributes which is invalid
|
||||
// check these on update
|
||||
entityGuardian.getAttributeInstance(GenericAttributes.ATTACK_DAMAGE).setValue(6.0D);
|
||||
entityGuardian.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.5D);
|
||||
entityGuardian.getAttributeInstance(GenericAttributes.FOLLOW_RANGE).setValue(16.0D);
|
||||
entityGuardian.getAttributeInstance(GenericAttributes.maxHealth).setValue(30.0D);
|
||||
|
||||
// Update pathfinding (random stroll back to 80)
|
||||
entityGuardian.goalRandomStroll.setTimeBetweenMovement(80);
|
||||
|
||||
// Tell minecraft that we need persistence since the guardian changed
|
||||
entityGuardian.initAttributes();
|
||||
}
|
||||
public void setElder(boolean shouldBeElder) {
|
||||
throw new UnsupportedOperationException("Not supported.");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,18 +1,14 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityHorse;
|
||||
import net.minecraft.server.EnumHorseType;
|
||||
import org.apache.commons.lang.Validate;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.craftbukkit.inventory.CraftInventoryHorse;
|
||||
import org.bukkit.entity.AnimalTamer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Horse;
|
||||
import org.bukkit.inventory.HorseInventory;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
public class CraftHorse extends CraftAnimals implements Horse {
|
||||
public class CraftHorse extends CraftAbstractHorse implements Horse {
|
||||
|
||||
public CraftHorse(CraftServer server, EntityHorse entity) {
|
||||
super(server, entity);
|
||||
@@ -20,110 +16,47 @@ public class CraftHorse extends CraftAnimals implements Horse {
|
||||
|
||||
@Override
|
||||
public EntityHorse getHandle() {
|
||||
return (EntityHorse) entity;
|
||||
return (EntityHorse) super.getHandle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Variant getVariant() {
|
||||
return Variant.values()[getHandle().getType().ordinal()];
|
||||
}
|
||||
|
||||
public void setVariant(Variant variant) {
|
||||
Validate.notNull(variant, "Variant cannot be null");
|
||||
getHandle().setType(EnumHorseType.values()[variant.ordinal()]);
|
||||
return Variant.HORSE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Color getColor() {
|
||||
return Color.values()[getHandle().getVariant() & 0xFF];
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setColor(Color color) {
|
||||
Validate.notNull(color, "Color cannot be null");
|
||||
getHandle().setVariant(color.ordinal() & 0xFF | getStyle().ordinal() << 8);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Style getStyle() {
|
||||
return Style.values()[getHandle().getVariant() >>> 8];
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setStyle(Style style) {
|
||||
Validate.notNull(style, "Style cannot be null");
|
||||
getHandle().setVariant(getColor().ordinal() & 0xFF | style.ordinal() << 8);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCarryingChest() {
|
||||
return getHandle().hasChest();
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCarryingChest(boolean chest) {
|
||||
if (chest == isCarryingChest()) return;
|
||||
getHandle().setHasChest(chest);
|
||||
getHandle().loadChest();
|
||||
}
|
||||
|
||||
public int getDomestication() {
|
||||
return getHandle().getTemper();
|
||||
}
|
||||
|
||||
public void setDomestication(int value) {
|
||||
Validate.isTrue(value >= 0, "Domestication cannot be less than zero");
|
||||
Validate.isTrue(value <= getMaxDomestication(), "Domestication cannot be greater than the max domestication");
|
||||
getHandle().setTemper(value);
|
||||
}
|
||||
|
||||
public int getMaxDomestication() {
|
||||
return getHandle().getMaxDomestication();
|
||||
}
|
||||
|
||||
public void setMaxDomestication(int value) {
|
||||
Validate.isTrue(value > 0, "Max domestication cannot be zero or less");
|
||||
getHandle().maxDomestication = value;
|
||||
}
|
||||
|
||||
public double getJumpStrength() {
|
||||
return getHandle().getJumpStrength();
|
||||
}
|
||||
|
||||
public void setJumpStrength(double strength) {
|
||||
Validate.isTrue(strength >= 0, "Jump strength cannot be less than zero");
|
||||
getHandle().getAttributeInstance(EntityHorse.attributeJumpStrength).setValue(strength);
|
||||
throw new UnsupportedOperationException("Not supported.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isTamed() {
|
||||
return getHandle().isTamed();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTamed(boolean tamed) {
|
||||
getHandle().setTame(tamed);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnimalTamer getOwner() {
|
||||
if (getOwnerUUID() == null) return null;
|
||||
return getServer().getOfflinePlayer(getOwnerUUID());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setOwner(AnimalTamer owner) {
|
||||
if (owner != null) {
|
||||
setTamed(true);
|
||||
getHandle().setGoalTarget(null, null, false);
|
||||
setOwnerUUID(owner.getUniqueId());
|
||||
} else {
|
||||
setTamed(false);
|
||||
setOwnerUUID(null);
|
||||
}
|
||||
}
|
||||
|
||||
public UUID getOwnerUUID() {
|
||||
return getHandle().getOwnerUUID();
|
||||
}
|
||||
|
||||
public void setOwnerUUID(UUID uuid) {
|
||||
getHandle().setOwnerUUID(uuid);
|
||||
}
|
||||
|
||||
public HorseInventory getInventory() {
|
||||
return new CraftInventoryHorse(getHandle().inventoryChest);
|
||||
}
|
||||
@@ -133,6 +66,7 @@ public class CraftHorse extends CraftAnimals implements Horse {
|
||||
return "CraftHorse{variant=" + getVariant() + ", owner=" + getOwner() + '}';
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.HORSE;
|
||||
}
|
||||
|
||||
@@ -381,7 +381,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
|
||||
@Override
|
||||
public boolean isHandRaised() {
|
||||
return getHandle().cx(); // PAIL: rename
|
||||
return getHandle().isHandRaised();
|
||||
}
|
||||
|
||||
public boolean setWindowProperty(InventoryView.Property prop, int value) {
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityZombieHusk;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Husk;
|
||||
|
||||
public class CraftHusk extends CraftZombie implements Husk {
|
||||
|
||||
public CraftHusk(CraftServer server, EntityZombieHusk entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftHusk";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.HUSK;
|
||||
}
|
||||
}
|
||||
@@ -117,7 +117,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
}
|
||||
|
||||
public void resetMaxHealth() {
|
||||
setMaxHealth(getHandle().getAttributeInstance(GenericAttributes.maxHealth).getAttribute().b()); // PAIL: getDefault
|
||||
setMaxHealth(getHandle().getAttributeInstance(GenericAttributes.maxHealth).getAttribute().getDefault());
|
||||
}
|
||||
|
||||
public double getEyeHeight() {
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
import net.minecraft.server.EntityLlama;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.craftbukkit.inventory.CraftInventoryLlama;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Horse;
|
||||
import org.bukkit.entity.Llama;
|
||||
import org.bukkit.inventory.LlamaInventory;
|
||||
|
||||
public class CraftLlama extends CraftChestedHorse implements Llama {
|
||||
|
||||
public CraftLlama(CraftServer server, EntityLlama entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityLlama getHandle() {
|
||||
return (EntityLlama) super.getHandle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Color getColor() {
|
||||
return Color.values()[getHandle().getVariant()];
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setColor(Color color) {
|
||||
Preconditions.checkArgument(color != null, "color");
|
||||
|
||||
getHandle().setVariant(color.ordinal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public LlamaInventory getInventory() {
|
||||
return new CraftInventoryLlama(getHandle().inventoryChest);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Horse.Variant getVariant() {
|
||||
return Horse.Variant.LLAMA;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftLlama";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.LLAMA;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityLlamaSpit;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.LlamaSpit;
|
||||
import org.bukkit.projectiles.ProjectileSource;
|
||||
|
||||
public class CraftLlamaSpit extends AbstractProjectile implements LlamaSpit {
|
||||
|
||||
public CraftLlamaSpit(CraftServer server, EntityLlamaSpit entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityLlamaSpit getHandle() {
|
||||
return (EntityLlamaSpit) super.getHandle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftLlamaSpit";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.LLAMA_SPIT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LivingEntity _INVALID_getShooter() {
|
||||
return (getHandle().shooter != null) ? (LivingEntity) getHandle().shooter.getBukkitEntity() : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProjectileSource getShooter() {
|
||||
return (getHandle().shooter != null) ? (ProjectileSource) getHandle().shooter.getBukkitEntity() : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void _INVALID_setShooter(LivingEntity shooter) {
|
||||
getHandle().shooter = (shooter != null) ? ((CraftLivingEntity) shooter).getHandle() : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setShooter(ProjectileSource source) {
|
||||
getHandle().shooter = (source != null) ? ((CraftLivingEntity) source).getHandle() : null;
|
||||
}
|
||||
}
|
||||
@@ -5,7 +5,7 @@ import net.minecraft.server.EntityMinecartChest;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.craftbukkit.inventory.CraftInventory;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.StorageMinecart;
|
||||
import org.bukkit.entity.minecart.StorageMinecart;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
|
||||
@@ -35,7 +35,7 @@ public class CraftMinecartCommand extends CraftMinecart implements CommandMineca
|
||||
@Override
|
||||
public void setCommand(String command) {
|
||||
getHandle().getCommandBlock().setCommand(command != null ? command : "");
|
||||
getHandle().getDataWatcher().set(EntityMinecartCommandBlock.a, getHandle().getCommandBlock().getCommand()); // PAIL: rename
|
||||
getHandle().getDataWatcher().set(EntityMinecartCommandBlock.COMMAND, getHandle().getCommandBlock().getCommand());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -4,7 +4,7 @@ import net.minecraft.server.EntityMinecartFurnace;
|
||||
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.PoweredMinecart;
|
||||
import org.bukkit.entity.minecart.PoweredMinecart;
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
public class CraftMinecartFurnace extends CraftMinecart implements PoweredMinecart {
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityHorseMule;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Horse.Variant;
|
||||
import org.bukkit.entity.Mule;
|
||||
|
||||
public class CraftMule extends CraftChestedHorse implements Mule {
|
||||
|
||||
public CraftMule(CraftServer server, EntityHorseMule entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftMule";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.MULE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Variant getVariant() {
|
||||
return Variant.MULE;
|
||||
}
|
||||
}
|
||||
@@ -426,7 +426,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
Collection<MapIcon> icons = new ArrayList<MapIcon>();
|
||||
for (MapCursor cursor : data.cursors) {
|
||||
if (cursor.isVisible()) {
|
||||
icons.add(new MapIcon(cursor.getRawType(), cursor.getX(), cursor.getY(), cursor.getDirection()));
|
||||
icons.add(new MapIcon(MapIcon.Type.a(cursor.getRawType()), cursor.getX(), cursor.getY(), cursor.getDirection()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,22 +1,20 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntitySkeleton;
|
||||
import net.minecraft.server.EnumSkeletonType;
|
||||
import net.minecraft.server.EntitySkeletonAbstract;
|
||||
|
||||
import org.apache.commons.lang.Validate;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Skeleton;
|
||||
|
||||
public class CraftSkeleton extends CraftMonster implements Skeleton {
|
||||
|
||||
public CraftSkeleton(CraftServer server, EntitySkeleton entity) {
|
||||
public CraftSkeleton(CraftServer server, EntitySkeletonAbstract entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntitySkeleton getHandle() {
|
||||
return (EntitySkeleton) entity;
|
||||
public EntitySkeletonAbstract getHandle() {
|
||||
return (EntitySkeletonAbstract) entity;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -28,12 +26,13 @@ public class CraftSkeleton extends CraftMonster implements Skeleton {
|
||||
return EntityType.SKELETON;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SkeletonType getSkeletonType() {
|
||||
return SkeletonType.values()[getHandle().getSkeletonType().ordinal()];
|
||||
return SkeletonType.NORMAL;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSkeletonType(SkeletonType type) {
|
||||
Validate.notNull(type);
|
||||
getHandle().setSkeletonType(EnumSkeletonType.a(type.ordinal())); // PAIL: rename
|
||||
throw new UnsupportedOperationException("Not supported.");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityHorseSkeleton;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Horse.Variant;
|
||||
import org.bukkit.entity.SkeletonHorse;
|
||||
|
||||
public class CraftSkeletonHorse extends CraftAbstractHorse implements SkeletonHorse {
|
||||
|
||||
public CraftSkeletonHorse(CraftServer server, EntityHorseSkeleton entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftSkeletonHorse";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.SKELETON_HORSE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Variant getVariant() {
|
||||
return Variant.SKELETON_HORSE;
|
||||
}
|
||||
}
|
||||
@@ -17,7 +17,7 @@ public class CraftSlime extends CraftLivingEntity implements Slime {
|
||||
}
|
||||
|
||||
public void setSize(int size) {
|
||||
getHandle().setSize(size);
|
||||
getHandle().setSize(size, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -12,12 +12,12 @@ public class CraftSnowman extends CraftGolem implements Snowman {
|
||||
|
||||
@Override
|
||||
public boolean isDerp() {
|
||||
return getHandle().isDerp();
|
||||
return getHandle().hasPumpkin();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setDerp(boolean derpMode) {
|
||||
getHandle().setDerp(derpMode);
|
||||
getHandle().setHasPumpkin(derpMode);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntitySkeletonStray;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Stray;
|
||||
|
||||
public class CraftStray extends CraftSkeleton implements Stray {
|
||||
|
||||
public CraftStray(CraftServer server, EntitySkeletonStray entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftStray";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.STRAY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SkeletonType getSkeletonType() {
|
||||
return SkeletonType.STRAY;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityVex;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Vex;
|
||||
|
||||
public class CraftVex extends CraftMonster implements Vex {
|
||||
|
||||
public CraftVex(CraftServer server, EntityVex entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityVex getHandle() {
|
||||
return (EntityVex) super.getHandle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftVex";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.VEX;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityZombieVillager;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Villager;
|
||||
import org.bukkit.entity.ZombieVillager;
|
||||
|
||||
public class CraftVillagerZombie extends CraftZombie implements ZombieVillager {
|
||||
|
||||
public CraftVillagerZombie(CraftServer server, EntityZombieVillager entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityZombieVillager getHandle() {
|
||||
return (EntityZombieVillager) super.getHandle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftVillagerZombie";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.ZOMBIE_VILLAGER;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Villager.Profession getVillagerProfession() {
|
||||
return Villager.Profession.values()[getHandle().getProfession()];
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setVillagerProfession(Villager.Profession profession) {
|
||||
getHandle().setProfession(profession == null ? 0 : profession.ordinal());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityVindicator;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Vindicator;
|
||||
|
||||
public class CraftVindicator extends CraftMonster implements Vindicator {
|
||||
|
||||
public CraftVindicator(CraftServer server, EntityVindicator entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityVindicator getHandle() {
|
||||
return (EntityVindicator) super.getHandle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftVindicator";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.VINDICATOR;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntitySkeletonWither;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.WitherSkeleton;
|
||||
|
||||
public class CraftWitherSkeleton extends CraftSkeleton implements WitherSkeleton {
|
||||
|
||||
public CraftWitherSkeleton(CraftServer server, EntitySkeletonWither entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftWitherSkeleton";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.WITHER_SKELETON;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SkeletonType getSkeletonType() {
|
||||
return SkeletonType.WITHER;
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityZombie;
|
||||
import net.minecraft.server.EnumZombieType;
|
||||
import net.minecraft.server.EntityZombieVillager;
|
||||
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
@@ -37,20 +37,21 @@ public class CraftZombie extends CraftMonster implements Zombie {
|
||||
}
|
||||
|
||||
public boolean isVillager() {
|
||||
return getHandle().isVillager();
|
||||
return getHandle() instanceof EntityZombieVillager;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setVillager(boolean flag) {
|
||||
getHandle().setVillagerType(flag ? EnumZombieType.VILLAGER_FARMER : EnumZombieType.NORMAL);
|
||||
throw new UnsupportedOperationException("Not supported.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setVillagerProfession(Villager.Profession profession) {
|
||||
getHandle().setVillagerType(profession == null ? EnumZombieType.NORMAL : EnumZombieType.a(profession.ordinal()));
|
||||
throw new UnsupportedOperationException("Not supported.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Villager.Profession getVillagerProfession() {
|
||||
return Villager.Profession.values()[getHandle().getVillagerType().ordinal()];
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import net.minecraft.server.EntityHorseZombie;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Horse.Variant;
|
||||
import org.bukkit.entity.ZombieHorse;
|
||||
|
||||
public class CraftZombieHorse extends CraftAbstractHorse implements ZombieHorse {
|
||||
|
||||
public CraftZombieHorse(CraftServer server, EntityHorseZombie entity) {
|
||||
super(server, entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "CraftZombieHorse";
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityType getType() {
|
||||
return EntityType.ZOMBIE_HORSE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Variant getVariant() {
|
||||
return Variant.UNDEAD_HORSE;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user