public abstract class Entity extends java.lang.Object implements IEntity, EntityRenderListener
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
ANY_MESSAGE |
| Modifier | Constructor and Description |
|---|---|
protected |
Entity()
Instantiates a new entity.
|
protected |
Entity(boolean renderWithLayer) |
protected |
Entity(int mapId) |
protected |
Entity(int mapId,
java.lang.String name) |
protected |
Entity(java.lang.String name) |
| Modifier and Type | Method and Description |
|---|---|
EntityActionMap |
actions()
All registered actions of this entity.
|
void |
addController(IEntityController controller) |
void |
addEntityRenderListener(EntityRenderListener listener)
Adds the specified entity render listener to receive events and callbacks about the rendering process of entities.
|
void |
addListener(EntityListener listener) |
void |
addTag(java.lang.String tag) |
void |
addTransformListener(EntityTransformListener listener) |
IEntityAnimationController<?> |
animations()
Gets the entities animation controller.
|
void |
attachControllers() |
IBehaviorController |
behavior() |
boolean |
canRender(IEntity entity)
This method gets called before an
Entity is about to be rendered. |
void |
detachControllers() |
double |
getAngle() |
java.awt.geom.Rectangle2D |
getBoundingBox() |
java.awt.geom.Point2D |
getCenter() |
<T extends IEntityController> |
getController(java.lang.Class<T> clss) |
protected EntityControllers |
getControllers() |
Environment |
getEnvironment()
Gets the environment the entity was loaded to or null if it is not loaded.
|
double |
getHeight() |
java.awt.geom.Point2D |
getLocation() |
int |
getMapId() |
java.lang.String |
getName()
Gets the name of this entity.
|
ICustomPropertyProvider |
getProperties() |
RenderType |
getRenderType() |
java.util.List<java.lang.String> |
getTags() |
double |
getWidth() |
double |
getX() |
double |
getY() |
boolean |
hasTag(java.lang.String tag) |
boolean |
isLoaded()
Indicates whether this entity is loaded on the currently active environment.
|
boolean |
isVisible() |
void |
loaded(Environment environment)
This method provides the possibility to implement behavior whenever this entity was added to the environment.
|
void |
onMessage(EntityMessageListener listener) |
void |
onMessage(java.lang.String message,
EntityMessageListener listener) |
void |
onRendered(EntityRenderedListener listener)
Adds the specified entity rendered listener to receive events when entities were rendered.
|
void |
perform(java.lang.String actionName)
Performs an
EntityAction that was previously registered for this entity. |
EntityAction |
register(java.lang.String name,
java.lang.Runnable action)
Registers an
EntityAction with the specified name. |
void |
removed(Environment environment)
This method provides the possibility to implement behavior whenever this entity was removed from the environment.
|
void |
removeEntityRenderedListener(EntityRenderedListener listener)
Removes the specified entity rendered listener.
|
void |
removeEntityRenderListener(EntityRenderListener listener)
Removes the specified entity render listener.
|
void |
removeListener(EntityListener listener) |
void |
removeMessageListener(EntityMessageListener listener) |
void |
removeTag(java.lang.String tag) |
void |
removeTransformListener(EntityTransformListener listener) |
void |
rendered(EntityRenderEvent event)
This method gets called after an entity was rendered.
|
void |
rendering(EntityRenderEvent event)
This method gets called after all rendering checks have successfully passed and right before the entity is about to be rendered.
|
boolean |
renderWithLayer()
Determines whether this entity is being rendered with the layer it's originating from.
|
java.lang.String |
sendMessage(java.lang.Object sender,
java.lang.String message) |
void |
setAngle(double angle)
Sets the angle (in degrees) in which the entity is directed.
|
<T extends IEntityController> |
setController(java.lang.Class<T> clss,
T controller) |
void |
setHeight(double height) |
void |
setLocation(double x,
double y) |
void |
setLocation(java.awt.geom.Point2D location)
Sets the map location.
|
void |
setMapId(int mapId)
Sets an id which should only be filled when an entity gets added due to map
information.
|
void |
setName(java.lang.String name) |
void |
setRenderType(RenderType renderType) |
void |
setRenderWithLayer(boolean renderWithLayer) |
void |
setSize(double width,
double height) |
void |
setVisible(boolean visible) |
void |
setWidth(double width) |
void |
setX(double x) |
void |
setY(double y) |
java.lang.String |
toString() |
public static final java.lang.String ANY_MESSAGE
protected Entity()
protected Entity(boolean renderWithLayer)
protected Entity(int mapId)
protected Entity(java.lang.String name)
protected Entity(int mapId,
java.lang.String name)
public void addTransformListener(EntityTransformListener listener)
addTransformListener in interface IEntitypublic void removeTransformListener(EntityTransformListener listener)
removeTransformListener in interface IEntitypublic void addListener(EntityListener listener)
addListener in interface IEntitypublic void removeListener(EntityListener listener)
removeListener in interface IEntitypublic void onRendered(EntityRenderedListener listener)
IEntityonRendered in interface IEntitylistener - The listener to add.public void removeEntityRenderedListener(EntityRenderedListener listener)
IEntityremoveEntityRenderedListener in interface IEntitylistener - The listener to remove.public void addEntityRenderListener(EntityRenderListener listener)
IEntityaddEntityRenderListener in interface IEntitylistener - The listener to add.public void removeEntityRenderListener(EntityRenderListener listener)
IEntityremoveEntityRenderListener in interface IEntitylistener - The listener to remove.public void onMessage(EntityMessageListener listener)
public void onMessage(java.lang.String message,
EntityMessageListener listener)
public void removeMessageListener(EntityMessageListener listener)
removeMessageListener in interface IEntitypublic void attachControllers()
attachControllers in interface IEntitypublic void detachControllers()
detachControllers in interface IEntitypublic ICustomPropertyProvider getProperties()
getProperties in interface IEntitypublic IEntityAnimationController<?> animations()
IEntityanimations in interface IEntityRenderEngine.renderEntity(java.awt.Graphics2D, IEntity)public IBehaviorController behavior()
public void addController(IEntityController controller)
addController in interface IEntitypublic <T extends IEntityController> void setController(java.lang.Class<T> clss, T controller)
setController in interface IEntitypublic <T extends IEntityController> T getController(java.lang.Class<T> clss)
getController in interface IEntitypublic java.awt.geom.Rectangle2D getBoundingBox()
getBoundingBox in interface IEntitypublic java.awt.geom.Point2D getLocation()
getLocation in interface IEntitypublic java.lang.String getName()
IEntitypublic RenderType getRenderType()
getRenderType in interface IEntitypublic void setVisible(boolean visible)
setVisible in interface IEntitypublic EntityActionMap actions()
IEntityactions in interface IEntityEntityActionMap,
IEntity.register(String, Runnable)public void perform(java.lang.String actionName)
IEntityEntityAction that was previously registered for this entity.
Does nothing in case no action has been registered for the specified actionName.
perform in interface IEntityactionName - The name of the action to be performed.IEntity.actions(),
IEntity.register(String, Runnable)public EntityAction register(java.lang.String name, java.lang.Runnable action)
IEntityEntityAction with the specified name.
It's later possible to execute these actions on the entity by using the Entity.perform(String actionName) method.register in interface IEntityname - The name of the action to be registered.action - The action to be performed by the entity.IEntity.perform(String),
IEntity.actions()public java.lang.String sendMessage(java.lang.Object sender,
java.lang.String message)
sendMessage in interface IEntitypublic void setLocation(double x,
double y)
setLocation in interface IEntitypublic void setLocation(java.awt.geom.Point2D location)
setLocation in interface IEntitylocation - the new map locationpublic void setMapId(int mapId)
public void setRenderType(RenderType renderType)
setRenderType in interface IEntitypublic java.util.List<java.lang.String> getTags()
public void setAngle(double angle)
IEntitypublic java.lang.String toString()
toString in class java.lang.Objectpublic Environment getEnvironment()
IEntitygetEnvironment in interface IEntitypublic void loaded(Environment environment)
IEntityloaded in interface IEntityenvironment - The environment that the entity was added toIEntity.addListener(EntityListener)public void removed(Environment environment)
IEntityremoved in interface IEntityenvironment - The environment that the entity was removed fromIEntity.addListener(EntityListener)public boolean isLoaded()
IEntityisLoaded in interface IEntityGameWorld.environment(),
IEntity.loaded(Environment),
IEntity.removed(Environment)public boolean renderWithLayer()
IEntityRenderType and makes the entity dependent upon the visibility of it's layer.
This can only be used, of course, if the entity is related to a MapObject.
This defaults to false if not explicitly set on the MapObject.
renderWithLayer in interface IEntityILayer.isVisible(),
IMapObjectLayer.getMapObjects(),
Environment.getEntitiesByLayer(int),
Environment.getEntitiesByLayer(String)public void setRenderWithLayer(boolean renderWithLayer)
setRenderWithLayer in interface IEntitypublic void rendering(EntityRenderEvent event)
EntityRenderListenerrendering in interface EntityRenderListenerevent - The event that contains the render data.public void rendered(EntityRenderEvent event)
EntityRenderedListenerrendered in interface EntityRenderedListenerevent - The event that contains the render data.public boolean canRender(IEntity entity)
EntityRenderListenerEntity is about to be rendered.
Returning false prevents the rendering of the specified entity.canRender in interface EntityRenderListenerentity - The entity to be rendered.protected EntityControllers getControllers()