public class MapTileCollisionModel extends Object implements MapTileCollision
The map must have the MapTileGroup
feature.
Constructor and Description |
---|
MapTileCollisionModel(Services services)
Create the map tile collision.
|
Modifier and Type | Method and Description |
---|---|
void |
clearCollisionDraw()
Clear the cached collision image created with
MapTileCollision.createCollisionDraw() . |
CollisionResult |
computeCollision(Transformable transformable,
CollisionCategory category)
Search first tile hit by the transformable that contains collision, applying a ray tracing from its old location
to its current.
|
void |
createCollisionDraw()
Create the collision draw surface.
|
static ImageBuffer |
createFunctionDraw(CollisionFormula collision,
int tw,
int th)
Create the function draw to buffer.
|
CollisionFormula |
getCollisionFormula(String name)
Get the collision formula from its name.
|
Collection<CollisionFormula> |
getCollisionFormulas()
Get the collision formulas list.
|
CollisionGroup |
getCollisionGroup(String name)
Get the collision group from its name.
|
Collection<CollisionGroup> |
getCollisionGroups()
Get the collision groups list.
|
Media |
getCollisionsConfig()
Get the collisions config file.
|
Media |
getFormulasConfig()
Get the formulas config file.
|
void |
loadCollisions()
Load map collision with default files.
|
void |
loadCollisions(Media collisionFormulas,
Media collisionGroups)
Load map collision from an external file.
|
void |
render(Graphic g) |
void |
saveCollisions()
Save the current collisions to the collision file.
|
public MapTileCollisionModel(Services services)
The Services
must provide the following services:
services
- The services reference.LionEngineException
- If services not found.public static ImageBuffer createFunctionDraw(CollisionFormula collision, int tw, int th)
collision
- The collision reference.tw
- The tile width.th
- The tile height.public void loadCollisions()
MapTileCollision
CollisionFormulaConfig.FILENAME
and
CollisionGroupConfig.FILENAME
will be used as default, by calling
MapTileCollision.loadCollisions(Media, Media)
.
loadCollisions
in interface MapTileCollision
public void loadCollisions(Media collisionFormulas, Media collisionGroups)
MapTileCollision
loadCollisions
in interface MapTileCollision
collisionFormulas
- The collision formulas descriptor.collisionGroups
- The tile collision groups descriptor.public void saveCollisions()
MapTileCollision
saveCollisions
in interface MapTileCollision
public void createCollisionDraw()
MapTileCollision
createCollisionDraw
in interface MapTileCollision
public void clearCollisionDraw()
MapTileCollision
MapTileCollision.createCollisionDraw()
.clearCollisionDraw
in interface MapTileCollision
public CollisionResult computeCollision(Transformable transformable, CollisionCategory category)
MapTileCollision
computeCollision
in interface MapTileCollision
transformable
- The transformable reference.category
- The collisions category to search in.null
if nothing found.public void render(Graphic g)
render
in interface Renderable
public CollisionFormula getCollisionFormula(String name)
MapTileCollision
getCollisionFormula
in interface MapTileCollision
name
- The collision formula name.public CollisionGroup getCollisionGroup(String name)
MapTileCollision
getCollisionGroup
in interface MapTileCollision
name
- The collision group name.public Collection<CollisionFormula> getCollisionFormulas()
MapTileCollision
getCollisionFormulas
in interface MapTileCollision
public Collection<CollisionGroup> getCollisionGroups()
MapTileCollision
getCollisionGroups
in interface MapTileCollision
public Media getFormulasConfig()
MapTileCollision
getFormulasConfig
in interface MapTileCollision
public Media getCollisionsConfig()
MapTileCollision
getCollisionsConfig
in interface MapTileCollision
Copyright © 2016 Byron 3D Games Studio. All rights reserved.