mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-06 00:07:56 +01:00
Improve entity hierarchy by adding Mob interface.
By: md_5 <git@md-5.net>
This commit is contained in:
parent
30068a6e08
commit
d2b8685893
@ -3,4 +3,4 @@ package org.bukkit.entity;
|
||||
/**
|
||||
* Represents an ambient mob
|
||||
*/
|
||||
public interface Ambient extends LivingEntity {}
|
||||
public interface Ambient extends Mob {}
|
||||
|
@ -4,23 +4,4 @@ package org.bukkit.entity;
|
||||
* Represents a Creature. Creatures are non-intelligent monsters or animals
|
||||
* which have very simple abilities.
|
||||
*/
|
||||
public interface Creature extends LivingEntity {
|
||||
|
||||
/**
|
||||
* Instructs this Creature to set the specified LivingEntity as its
|
||||
* target.
|
||||
* <p>
|
||||
* Hostile creatures may attack their target, and friendly creatures may
|
||||
* follow their target.
|
||||
*
|
||||
* @param target New LivingEntity to target, or null to clear the target
|
||||
*/
|
||||
public void setTarget(LivingEntity target);
|
||||
|
||||
/**
|
||||
* Gets the current target of this Creature
|
||||
*
|
||||
* @return Current target of this creature, or null if none exists
|
||||
*/
|
||||
public LivingEntity getTarget();
|
||||
}
|
||||
public interface Creature extends Mob {}
|
||||
|
@ -3,4 +3,4 @@ package org.bukkit.entity;
|
||||
/**
|
||||
* Represents a Flying Entity.
|
||||
*/
|
||||
public interface Flying extends LivingEntity {}
|
||||
public interface Flying extends Mob {}
|
||||
|
24
paper-api/src/main/java/org/bukkit/entity/Mob.java
Normal file
24
paper-api/src/main/java/org/bukkit/entity/Mob.java
Normal file
@ -0,0 +1,24 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
/**
|
||||
* Represents a Mob. Mobs are living entities with simple AI.
|
||||
*/
|
||||
public interface Mob extends LivingEntity {
|
||||
|
||||
/**
|
||||
* Instructs this Mob to set the specified LivingEntity as its target.
|
||||
* <p>
|
||||
* Hostile creatures may attack their target, and friendly creatures may
|
||||
* follow their target.
|
||||
*
|
||||
* @param target New LivingEntity to target, or null to clear the target
|
||||
*/
|
||||
public void setTarget(LivingEntity target);
|
||||
|
||||
/**
|
||||
* Gets the current target of this Mob
|
||||
*
|
||||
* @return Current target of this creature, or null if none exists
|
||||
*/
|
||||
public LivingEntity getTarget();
|
||||
}
|
@ -3,7 +3,7 @@ package org.bukkit.entity;
|
||||
/**
|
||||
* Represents a Slime.
|
||||
*/
|
||||
public interface Slime extends LivingEntity {
|
||||
public interface Slime extends Mob {
|
||||
|
||||
/**
|
||||
* @return The size of the slime
|
||||
@ -14,19 +14,4 @@ public interface Slime extends LivingEntity {
|
||||
* @param sz The new size of the slime.
|
||||
*/
|
||||
public void setSize(int sz);
|
||||
|
||||
/**
|
||||
* Set the {@link LivingEntity} target for this slime. Set to null to clear
|
||||
* the target.
|
||||
*
|
||||
* @param target the entity to target
|
||||
*/
|
||||
public void setTarget(LivingEntity target);
|
||||
|
||||
/**
|
||||
* Get the {@link LivingEntity} this slime is currently targeting.
|
||||
*
|
||||
* @return the current target, or null if no target exists.
|
||||
*/
|
||||
public LivingEntity getTarget();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user