@@ -165,6 +165,10 @@ public enum EntityType {
|
||||
* @see Vindicator
|
||||
*/
|
||||
VINDICATOR("vindication_illager", Vindicator.class, 36),
|
||||
/**
|
||||
* @see Illusioner
|
||||
*/
|
||||
ILLUSIONER("illusion_illager", Illusioner.class, 37),
|
||||
/**
|
||||
* @see CommandMinecart
|
||||
*/
|
||||
@@ -232,6 +236,7 @@ public enum EntityType {
|
||||
POLAR_BEAR("polar_bear", PolarBear.class, 102),
|
||||
LLAMA("llama", Llama.class, 103),
|
||||
LLAMA_SPIT("llama_spit", LlamaSpit.class, 104),
|
||||
PARROT("parrot", Parrot.class, 105),
|
||||
VILLAGER("villager", Villager.class, 120),
|
||||
ENDER_CRYSTAL("ender_crystal", EnderCrystal.class, 200),
|
||||
// These don't have an entity ID in nms.EntityTypes.
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
/**
|
||||
* Represents an Evoker.
|
||||
* Represents an Evoker "Illager".
|
||||
*/
|
||||
public interface Evoker extends Monster {
|
||||
public interface Evoker extends Spellcaster {
|
||||
|
||||
/**
|
||||
* Represents the current spell the Evoker is using.
|
||||
@@ -29,7 +29,15 @@ public interface Evoker extends Monster {
|
||||
/**
|
||||
* The "wololo" spell.
|
||||
*/
|
||||
WOLOLO;
|
||||
WOLOLO,
|
||||
/**
|
||||
* The spell that makes the casting entity invisible.
|
||||
*/
|
||||
DISAPPEAR,
|
||||
/**
|
||||
* The spell that makes the target blind.
|
||||
*/
|
||||
BLINDNESS;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -255,4 +255,66 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, Permissible, Inv
|
||||
* @return Experience required to level up
|
||||
*/
|
||||
public int getExpToLevel();
|
||||
|
||||
/**
|
||||
* Gets the entity currently perched on the left shoulder or null if no
|
||||
* entity.
|
||||
* <br>
|
||||
* The returned entity will not be spawned within the world, so most
|
||||
* operations are invalid unless the entity is first spawned in.
|
||||
*
|
||||
* @return left shoulder entity
|
||||
* @deprecated There are currently no well defined semantics regarding
|
||||
* serialized entities in Bukkit. Use with care.
|
||||
*/
|
||||
@Deprecated
|
||||
public Entity getShoulderEntityLeft();
|
||||
|
||||
/**
|
||||
* Sets the entity currently perched on the left shoulder, or null to
|
||||
* remove. This method will remove the entity from the world.
|
||||
* <br>
|
||||
* Note that only a copy of the entity will be set to display on the
|
||||
* shoulder.
|
||||
* <br>
|
||||
* Also note that the client will currently only render {@link Parrot}
|
||||
* entities.
|
||||
*
|
||||
* @param entity left shoulder entity
|
||||
* @deprecated There are currently no well defined semantics regarding
|
||||
* serialized entities in Bukkit. Use with care.
|
||||
*/
|
||||
@Deprecated
|
||||
public void setShoulderEntityLeft(Entity entity);
|
||||
|
||||
/**
|
||||
* Gets the entity currently perched on the right shoulder or null if no
|
||||
* entity.
|
||||
* <br>
|
||||
* The returned entity will not be spawned within the world, so most
|
||||
* operations are invalid unless the entity is first spawned in.
|
||||
*
|
||||
* @return right shoulder entity
|
||||
* @deprecated There are currently no well defined semantics regarding
|
||||
* serialized entities in Bukkit. Use with care.
|
||||
*/
|
||||
@Deprecated
|
||||
public Entity getShoulderEntityRight();
|
||||
|
||||
/**
|
||||
* Sets the entity currently perched on the right shoulder, or null to
|
||||
* remove. This method will remove the entity from the world.
|
||||
* <br>
|
||||
* Note that only a copy of the entity will be set to display on the
|
||||
* shoulder.
|
||||
* <br>
|
||||
* Also note that the client will currently only render {@link Parrot}
|
||||
* entities.
|
||||
*
|
||||
* @param entity right shoulder entity
|
||||
* @deprecated There are currently no well defined semantics regarding
|
||||
* serialized entities in Bukkit. Use with care.
|
||||
*/
|
||||
@Deprecated
|
||||
public void setShoulderEntityRight(Entity entity);
|
||||
}
|
||||
|
||||
6
paper-api/src/main/java/org/bukkit/entity/Illager.java
Normal file
6
paper-api/src/main/java/org/bukkit/entity/Illager.java
Normal file
@@ -0,0 +1,6 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
/**
|
||||
* Represents a type of "Illager".
|
||||
*/
|
||||
public interface Illager extends Monster { }
|
||||
@@ -0,0 +1,6 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
/**
|
||||
* Represents an Illusioner "Illager".
|
||||
*/
|
||||
public interface Illusioner extends Spellcaster { }
|
||||
47
paper-api/src/main/java/org/bukkit/entity/Parrot.java
Normal file
47
paper-api/src/main/java/org/bukkit/entity/Parrot.java
Normal file
@@ -0,0 +1,47 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
/**
|
||||
* Represents a Parrot.
|
||||
*/
|
||||
public interface Parrot extends Animals, Tameable {
|
||||
|
||||
/**
|
||||
* Get the variant of this parrot.
|
||||
*
|
||||
* @return parrot variant
|
||||
*/
|
||||
public Variant getVariant();
|
||||
|
||||
/**
|
||||
* Set the variant of this parrot.
|
||||
*
|
||||
* @param variant parrot variant
|
||||
*/
|
||||
public void setVariant(Variant variant);
|
||||
|
||||
/**
|
||||
* Represents the variant of a parrot - ie its color.
|
||||
*/
|
||||
public enum Variant {
|
||||
/**
|
||||
* Classic parrot - red with colored wingtips.
|
||||
*/
|
||||
RED,
|
||||
/**
|
||||
* Royal blue colored parrot.
|
||||
*/
|
||||
BLUE,
|
||||
/**
|
||||
* Green colored parrot.
|
||||
*/
|
||||
GREEN,
|
||||
/**
|
||||
* Cyan colored parrot.
|
||||
*/
|
||||
CYAN,
|
||||
/**
|
||||
* Gray colored parrot.
|
||||
*/
|
||||
GRAY;
|
||||
}
|
||||
}
|
||||
@@ -16,6 +16,8 @@ import org.bukkit.Sound;
|
||||
import org.bukkit.SoundCategory;
|
||||
import org.bukkit.Statistic;
|
||||
import org.bukkit.WeatherType;
|
||||
import org.bukkit.advancement.Advancement;
|
||||
import org.bukkit.advancement.AdvancementProgress;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.conversations.Conversable;
|
||||
import org.bukkit.event.player.PlayerResourcePackStatusEvent;
|
||||
@@ -1388,4 +1390,11 @@ public interface Player extends HumanEntity, Conversable, CommandSender, Offline
|
||||
*/
|
||||
public <T> void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, T data);
|
||||
|
||||
/**
|
||||
* Return the player's progression on the specified advancement.
|
||||
*
|
||||
* @param advancement advancement
|
||||
* @return object detailing the player's progress
|
||||
*/
|
||||
public AdvancementProgress getAdvancementProgress(Advancement advancement);
|
||||
}
|
||||
|
||||
52
paper-api/src/main/java/org/bukkit/entity/Spellcaster.java
Normal file
52
paper-api/src/main/java/org/bukkit/entity/Spellcaster.java
Normal file
@@ -0,0 +1,52 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
/**
|
||||
* Represents a spell casting "Illager".
|
||||
*/
|
||||
public interface Spellcaster extends Illager {
|
||||
|
||||
/**
|
||||
* Represents the current spell the entity is using.
|
||||
*/
|
||||
public enum Spell {
|
||||
|
||||
/**
|
||||
* No spell is being used..
|
||||
*/
|
||||
NONE,
|
||||
/**
|
||||
* The spell that summons Vexes.
|
||||
*/
|
||||
SUMMON_VEX,
|
||||
/**
|
||||
* The spell that summons Fangs.
|
||||
*/
|
||||
FANGS,
|
||||
/**
|
||||
* The "wololo" spell.
|
||||
*/
|
||||
WOLOLO,
|
||||
/**
|
||||
* The spell that makes the casting entity invisible.
|
||||
*/
|
||||
DISAPPEAR,
|
||||
/**
|
||||
* The spell that makes the target blind.
|
||||
*/
|
||||
BLINDNESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the {@link Spell} the entity is currently using.
|
||||
*
|
||||
* @return the current spell
|
||||
*/
|
||||
Spell getSpell();
|
||||
|
||||
/**
|
||||
* Sets the {@link Spell} the entity is currently using.
|
||||
*
|
||||
* @param spell the spell the entity should be using
|
||||
*/
|
||||
void setSpell(Spell spell);
|
||||
}
|
||||
@@ -3,4 +3,4 @@ package org.bukkit.entity;
|
||||
/**
|
||||
* Represents a Vindicator.
|
||||
*/
|
||||
public interface Vindicator extends Monster { }
|
||||
public interface Vindicator extends Illager { }
|
||||
|
||||
Reference in New Issue
Block a user