public final class GameWorld extends EntityWorld implements UpdateEventListener
| Type | Property and Description |
|---|---|
javafx.beans.property.ObjectProperty<Entity> |
selectedEntity |
entities| Modifier | Constructor and Description |
|---|---|
protected |
GameWorld() |
| Modifier and Type | Method and Description |
|---|---|
void |
addEventTrigger(<any> trigger)
Add event trigger to the world.
|
Optional<Entity> |
getClosestEntity(Entity entity,
Predicate<Entity> filter)
Returns the closest entity to the given entity with given
filter.
|
void |
getCollidingEntities(Array<Entity> result,
Entity entity)
GC-friendly version of
getCollidingEntities(Entity). |
List<Entity> |
getCollidingEntities(Entity entity)
Returns a list of entities
which colliding with given entity.
|
void |
getEntitiesAt(Array<Entity> result,
javafx.geometry.Point2D position)
GC-friendly version of
getEntitiesAt(Point2D). |
List<Entity> |
getEntitiesAt(javafx.geometry.Point2D position)
Returns a list of entities at given position.
|
void |
getEntitiesByLayer(Array<Entity> result,
RenderLayer layer)
GC-friendly version of
getEntitiesByLayer(RenderLayer). |
List<Entity> |
getEntitiesByLayer(RenderLayer layer)
Returns a list of entities which have the given render layer index.
|
void |
getEntitiesByType(Array<Entity> result,
Enum<?>... types)
GC-friendly version of
getEntitiesByType(Enum[]). |
List<Entity> |
getEntitiesByType(Enum<?>... types)
This query only works on entities with TypeComponent.
|
void |
getEntitiesFiltered(Array<Entity> result,
Predicate<Entity> predicate)
GC-friendly version of
getEntitiesFiltered(Predicate). |
List<Entity> |
getEntitiesFiltered(Predicate<Entity> predicate)
Returns a list of entities which are filtered by
given predicate.
|
void |
getEntitiesInRange(Array<Entity> result,
double minX,
double minY,
double maxX,
double maxY)
GC-friendly version of
getEntitiesInRange(Rectangle2D). |
List<Entity> |
getEntitiesInRange(javafx.geometry.Rectangle2D selection)
Returns a list of entities
which are partially or entirely
in the specified rectangular selection.
|
Optional<Entity> |
getEntityByID(String name,
int id)
Returns an entity whose IDComponent matches given name and id.
|
<T extends EntityFactory> |
getEntityFactory() |
Optional<Entity> |
getSelectedEntity()
Returns last selected (clicked on by mouse) entity.
|
void |
onUpdateEvent(UpdateEvent event)
Called on each update tick.
|
void |
removeEventTrigger(<any> trigger)
Remove event trigger from the world.
|
void |
reset() |
javafx.beans.property.ObjectProperty<Entity> |
selectedEntityProperty() |
void |
setEntityFactory(EntityFactory entityFactory)
Set main entity factory to be used via
spawn(String, SpawnData). |
void |
setLevel(Level level)
Set level to given.
|
void |
setLevelFromMap(TiledMap map) |
Entity |
spawn(String entityName) |
Entity |
spawn(String entityName,
double x,
double y)
Creates an entity with given name at x, y using specified entity factory.
|
Entity |
spawn(String entityName,
javafx.geometry.Point2D position)
Creates an entity with given name at x, y using specified entity factory.
|
Entity |
spawn(String entityName,
SpawnData data)
Creates an entity with given name and data using specified entity factory.
|
addEntities, addEntity, addWorldListener, getEntities, getEntitiesByComponent, getEntitiesCopy, removeEntities, removeEntity, removeWorldListener, updatepublic javafx.beans.property.ObjectProperty<Entity> selectedEntityProperty
getSelectedEntity()public void onUpdateEvent(UpdateEvent event)
UpdateEventListeneronUpdateEvent in interface UpdateEventListenerevent - the event datapublic void reset()
reset in class EntityWorldpublic void addEventTrigger(<any> trigger)
trigger - the event triggerpublic void removeEventTrigger(<any> trigger)
trigger - the event triggerpublic Optional<Entity> getSelectedEntity()
public javafx.beans.property.ObjectProperty<Entity> selectedEntityProperty()
getSelectedEntity()public void setLevel(Level level)
level - the levelpublic void setLevelFromMap(TiledMap map)
public <T extends EntityFactory> T getEntityFactory()
public void setEntityFactory(EntityFactory entityFactory)
spawn(String, SpawnData).entityFactory - factory for creating entitiespublic Entity spawn(String entityName, javafx.geometry.Point2D position)
entityName - name of entity as specified by Spawnsposition - spawn locationpublic Entity spawn(String entityName, double x, double y)
entityName - name of entity as specified by Spawnsx - x positiony - y positionpublic Entity spawn(String entityName, SpawnData data)
entityName - name of entity as specified by Spawnsdata - spawn data, such as x, y and any extra infopublic List<Entity> getEntitiesFiltered(Predicate<Entity> predicate)
predicate - filterpublic void getEntitiesFiltered(Array<Entity> result, Predicate<Entity> predicate)
getEntitiesFiltered(Predicate).result - the array to collect entitiespredicate - filterpublic List<Entity> getEntitiesByType(Enum<?>... types)
types - entity typespublic void getEntitiesByType(Array<Entity> result, Enum<?>... types)
getEntitiesByType(Enum[]).result - the array to collect entitiestypes - entity typespublic List<Entity> getEntitiesInRange(javafx.geometry.Rectangle2D selection)
selection - Rectangle2D that describes the selection boxpublic void getEntitiesInRange(Array<Entity> result, double minX, double minY, double maxX, double maxY)
getEntitiesInRange(Rectangle2D).result - the array to collect entitiesminX - min xminY - min ymaxX - max xmaxY - max ypublic List<Entity> getCollidingEntities(Entity entity)
entity - the entitypublic void getCollidingEntities(Array<Entity> result, Entity entity)
getCollidingEntities(Entity).result - the array to collect entitiesentity - the entitypublic List<Entity> getEntitiesByLayer(RenderLayer layer)
layer - render layerpublic void getEntitiesByLayer(Array<Entity> result, RenderLayer layer)
getEntitiesByLayer(RenderLayer).result - the array to collect entitieslayer - render layerpublic List<Entity> getEntitiesAt(javafx.geometry.Point2D position)
position - point in the worldpublic void getEntitiesAt(Array<Entity> result, javafx.geometry.Point2D position)
getEntitiesAt(Point2D).result - the array to collect entitiesposition - point in the worldpublic Optional<Entity> getClosestEntity(Entity entity, Predicate<Entity> filter)
If there no entities satisfying the requirement, Optional.empty()
is returned.
Warning: object allocation.
entity - selected entityfilter - requirementspublic Optional<Entity> getEntityByID(String name, int id)
Returns Optional.empty() if no entity was found with such combination.
This query only works on entities with IDComponent.
name - entity nameid - entity idOptional.empty()Copyright © 2017. All rights reserved.