public class MovementController<T extends IMobileEntity> extends java.lang.Object implements IMovementController
| Constructor and Description |
|---|
MovementController(T mobileEntity) |
| Modifier and Type | Method and Description |
|---|---|
void |
apply(Force force) |
void |
attach() |
void |
decellerateVelocityX(double dec) |
void |
decellerateVelocityY(double dec) |
void |
detach() |
java.util.List<Force> |
getActiveForces() |
float |
getDx() |
float |
getDy() |
T |
getEntity() |
protected double |
getStopThreshold() |
double |
getVelocityX() |
double |
getVelocityY() |
void |
handleMovement() |
boolean |
isMovedX() |
boolean |
isMovedY() |
protected boolean |
isMovementAllowed() |
protected void |
moveEntity(double deltaX,
double deltaY) |
void |
onMoved(java.util.function.Consumer<java.awt.geom.Point2D> cons) |
void |
onMovementCheck(java.util.function.Predicate<IMobileEntity> predicate) |
void |
setDx(float dx) |
void |
setDy(float dy) |
void |
setMovedX(boolean movedX) |
void |
setMovedY(boolean movedY) |
protected void |
setVelocityX(double velocityX) |
protected void |
setVelocityY(double velocityY) |
void |
update()
This method is called by the game loop on all objects that need to update
their attributes.
|
public MovementController(T mobileEntity)
public void attach()
attach in interface IEntityControllerpublic void detach()
detach in interface IEntityControllerpublic void apply(Force force)
apply in interface IMovementControllerpublic java.util.List<Force> getActiveForces()
getActiveForces in interface IMovementControllerpublic T getEntity()
getEntity in interface IEntityProviderpublic float getDx()
getDx in interface IMovementControllerpublic void setDx(float dx)
setDx in interface IMovementControllerpublic float getDy()
getDy in interface IMovementControllerpublic void setDy(float dy)
setDy in interface IMovementControllerpublic void onMovementCheck(java.util.function.Predicate<IMobileEntity> predicate)
onMovementCheck in interface IMovementControllerpublic void update()
IUpdateableupdate in interface IUpdateablepublic void onMoved(java.util.function.Consumer<java.awt.geom.Point2D> cons)
onMoved in interface IMovementControllerpublic void handleMovement()
public boolean isMovedX()
public void setMovedX(boolean movedX)
public boolean isMovedY()
public void setMovedY(boolean movedY)
public double getVelocityX()
protected void setVelocityX(double velocityX)
protected void setVelocityY(double velocityY)
public void decellerateVelocityX(double dec)
public void decellerateVelocityY(double dec)
public double getVelocityY()
protected double getStopThreshold()
protected void moveEntity(double deltaX,
double deltaY)
protected boolean isMovementAllowed()