Files
DeltaZern/paper-api/src/main/java/org/bukkit/entity/Vex.java
T
Owen1212055 a2a581ba6b Missing Entity API
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: William Blake Galbreath <blake.galbreath@gmail.com>
Co-authored-by: SoSeDiK <mrsosedik@gmail.com>
Co-authored-by: booky10 <boooky10@gmail.com>
Co-authored-by: Amin <amin.haddou@frg.wwschool.de>
Co-authored-by: TrollyLoki <trollyloki@gmail.com>
Co-authored-by: FireInstall <kettnerl@hu-berlin.de>
Co-authored-by: maxcom1 <46265094+maxcom1@users.noreply.github.com>
Co-authored-by: TotalledZebra <Holappa57@gmail.com>
2021-05-28 21:06:59 -04:00

135 lines
3.4 KiB
Java

package org.bukkit.entity;
import org.bukkit.Location;
import org.jetbrains.annotations.Nullable;
/**
* Represents a Vex.
*/
public interface Vex extends Monster {
/**
* Gets the charging state of this entity.
*
* When this entity is charging it will having a glowing red texture.
*
* @return charging state
*/
boolean isCharging();
/**
* Sets the charging state of this entity.
*
* When this entity is charging it will having a glowing red texture.
*
* @param charging new state
*/
void setCharging(boolean charging);
/**
* Gets the bound of this entity.
*
* An idle vex will navigate a 15x11x15 area centered around its bound
* location.
*
* When summoned by an Evoker, this location will be set to that of the
* summoner.
*
* @return {@link Location} of the bound or null if not set
*/
@Nullable
Location getBound();
/**
* Sets the bound of this entity.
*
* An idle vex will navigate a 15x11x15 area centered around its bound
* location.
*
* When summoned by an Evoker, this location will be set to that of the
* summoner.
*
* @param location {@link Location} of the bound or null to clear
*/
void setBound(@Nullable Location location);
/**
* Gets the remaining lifespan of this entity.
*
* @return life in ticks
* @deprecated This API duplicates existing API which uses the more
* preferable name due to mirroring internals better
*/
@Deprecated
int getLifeTicks();
/**
* Sets the remaining lifespan of this entity.
*
* @param lifeTicks life in ticks, or negative for unlimited lifepan
* @deprecated This API duplicates existing API which uses the more
* preferable name due to mirroring internals better
*/
@Deprecated
void setLifeTicks(int lifeTicks);
/**
* Gets if the entity has a limited life.
*
* @return true if the entity has limited life
* @deprecated This API duplicates existing API which uses the more
* preferable name due to mirroring internals better
*/
@Deprecated
boolean hasLimitedLife();
// Paper start
/**
* Get the Mob that summoned this vex
*
* @return Mob that summoned this vex
*/
@Nullable
Mob getSummoner();
/**
* Set the summoner of this vex
*
* @param summoner New summoner
*/
void setSummoner(@Nullable Mob summoner);
/**
* Gets if this vex should start to take damage
* once {@link Vex#getLimitedLifetimeTicks()} is less than or equal to 0.
*
* @return will take damage
*/
boolean hasLimitedLifetime();
/**
* Sets if this vex should start to take damage
* once {@link Vex#getLimitedLifetimeTicks()} is less than or equal to 0.
*
* @param hasLimitedLifetime should take damage
*/
void setLimitedLifetime(boolean hasLimitedLifetime);
/**
* Gets the number of ticks remaining until the vex will start
* to take damage.
*
* @return ticks until the vex will start to take damage
*/
int getLimitedLifetimeTicks();
/**
* Sets the number of ticks remaining until the vex takes damage.
* This number is ticked down only if {@link Vex#hasLimitedLifetime()} is true.
*
* @param ticks ticks remaining
*/
void setLimitedLifetimeTicks(int ticks);
// Paper end
}