public class StaticCollisionBox extends Rectangle implements CollisionShape
Rectangle
implementation of CollisionShape
that does not
need to be updated/interpolated. More lightweight than using a
CollisionBox
for static collisions.Constructor and Description |
---|
StaticCollisionBox() |
StaticCollisionBox(float x,
float y,
float width,
float height) |
StaticCollisionBox(int id) |
StaticCollisionBox(int id,
float x,
float y,
float width,
float height) |
Modifier and Type | Method and Description |
---|---|
void |
add(float x,
float y)
Adds components to the position of this
Shape |
<T extends Positionable> |
addPostionChangeListener(PositionChangeListener<T> listener)
Adds a
PositionChangeListener to be notified of coordinate
changes |
<T extends Sizeable> |
addSizeChangeListener(SizeChangeListener<T> listener)
Adds a
SizeChangeListener to be notified of size changes |
void |
forceTo(float x,
float y)
Sets the current x and y coordinate to the specified x and y and force updates the
rendering position to match
|
float |
getDistanceTo(Positionable positionable)
Returns this distance between this object's x,y coordinates and the
provided
Positionable 's xy coordinates |
int |
getId()
Returns the unique id of this object
|
int |
getRenderHeight() |
int |
getRenderWidth() |
int |
getRenderX()
Returns the render x coordinate of this object
|
int |
getRenderY()
Returns the render y coordinate of this object
|
Shape |
getShape()
Returns the underlying
Shape instance |
void |
interpolate(GameContainer gc,
float alpha)
Interpolate between the previous and current state
|
void |
moveTowards(float x,
float y,
float speed)
Moves this
Positionable towards a coordinate |
void |
moveTowards(Positionable positionable,
float speed)
Moves this
Positionable towards another Positionable |
void |
preUpdate()
This method needs to be called at the start of each frame
before any changes are made to this object
|
<T extends Positionable> |
removePositionChangeListener(PositionChangeListener<T> listener)
Removes a
PositionChangeListener to stop it being notified of
coordinate changes |
<T extends Sizeable> |
removeSizeChangeListener(SizeChangeListener<T> listener)
Removes a
SizeChangeListener to stop it being notified of size
changes |
void |
scale(float scale)
Scales the radius of this shape.
|
void |
set(float x,
float y)
Sets the x and y coordinate of this object
|
Rectangle |
set(float x,
float y,
float width,
float height) |
void |
set(Rectangle rectangle) |
void |
set(com.badlogic.gdx.math.Vector2 position) |
Rectangle |
setHeight(float height) |
void |
setRadius(float radius)
Sets the radius of this shape.
|
Rectangle |
setSize(float sizeXY) |
Rectangle |
setSize(float width,
float height) |
Rectangle |
setWidth(float width) |
void |
setX(float x)
Sets the x coordinate of this object
|
void |
setY(float y)
Sets the y coordinate of this object
|
void |
subtract(float x,
float y)
Subtracts components from the position of this
Shape |
void |
update(GameContainer gc,
float delta)
Updates the game screen
|
contains, contains, contains, contains, contains, contains, copy, draw, edgeIterator, fill, getCenterX, getCenterY, getDistanceTo, getDistanceTo, getHeight, getMaxX, getMaxY, getMinX, getMinY, getNumberOfSides, getPolygon, getRotation, getVertices, getWidth, getX, getY, intersection, intersects, intersects, intersects, intersects, intersects, intersects, intersects, intersectsLineSegment, intersectsLineSegment, intersectsLineSegment, isCircle, lerp, rotate, rotateAround, setRotation, setRotationAround, setRotationAround, toString, translate
intersects
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
contains, contains, intersects, intersects, intersectsLineSegment, intersectsLineSegment
getDistanceTo, getDistanceTo, getX, getY
public StaticCollisionBox()
public StaticCollisionBox(int id)
public StaticCollisionBox(float x, float y, float width, float height)
public StaticCollisionBox(int id, float x, float y, float width, float height)
public int getId()
Positionable
getId
in interface Positionable
getId
in interface Sizeable
public int getRenderX()
Positionable
getRenderX
in interface Positionable
public int getRenderY()
Positionable
getRenderY
in interface Positionable
public int getRenderWidth()
public int getRenderHeight()
public void add(float x, float y)
Shape
Shape
public void subtract(float x, float y)
Shape
Shape
public Rectangle set(float x, float y, float width, float height)
public void set(float x, float y)
Shape
public void setX(float x)
Shape
setX
in interface Positionable
setX
in class Rectangle
x
- The x coordinatepublic void setY(float y)
Shape
setY
in interface Positionable
setY
in class Rectangle
y
- The y coordinatepublic void setRadius(float radius)
Shape
public void scale(float scale)
Shape
public float getDistanceTo(Positionable positionable)
Positionable
Positionable
's xy coordinatesgetDistanceTo
in interface Positionable
positionable
- The Positionable
to retrieve the distance frompublic void moveTowards(float x, float y, float speed)
Positionable
Positionable
towards a coordinatemoveTowards
in interface Positionable
x
- The target x coordinatey
- The target y coordinatespeed
- The amount to move bypublic void moveTowards(Positionable positionable, float speed)
Positionable
Positionable
towards another Positionable
moveTowards
in interface Positionable
positionable
- The target Positionable
speed
- The amount to move bypublic void preUpdate()
CollisionShape
preUpdate
in interface CollisionShape
public void update(GameContainer gc, float delta)
Updatable
update
in interface Updatable
gc
- The GameContainer
of the gamedelta
- The time in seconds since the last updatepublic void interpolate(GameContainer gc, float alpha)
Updatable
interpolate
in interface Updatable
alpha
- The interpolation alpha valuepublic <T extends Positionable> void addPostionChangeListener(PositionChangeListener<T> listener)
Positionable
PositionChangeListener
to be notified of coordinate
changesaddPostionChangeListener
in interface Positionable
listener
- The PositionChangeListener
to addPositionable.addPostionChangeListener(PositionChangeListener)
public <T extends Positionable> void removePositionChangeListener(PositionChangeListener<T> listener)
Positionable
PositionChangeListener
to stop it being notified of
coordinate changesremovePositionChangeListener
in interface Positionable
listener
- The PositionChangeListener
to removePositionable.removePositionChangeListener(PositionChangeListener)
public <T extends Sizeable> void addSizeChangeListener(SizeChangeListener<T> listener)
Sizeable
SizeChangeListener
to be notified of size changesaddSizeChangeListener
in interface Sizeable
listener
- The SizeChangeListener
to addpublic <T extends Sizeable> void removeSizeChangeListener(SizeChangeListener<T> listener)
Sizeable
SizeChangeListener
to stop it being notified of size
changesremoveSizeChangeListener
in interface Sizeable
listener
- The SizeChangeListener
to removepublic void forceTo(float x, float y)
CollisionShape
forceTo
in interface CollisionShape
x
- The x coordinate to sety
- The y coordinate to setpublic Shape getShape()
CollisionShape
Shape
instancegetShape
in interface CollisionShape