Package com.prineside.tdi2
Class EnemyFollowingProjectile
java.lang.Object
com.prineside.tdi2.Registrable
com.prineside.tdi2.Projectile
com.prineside.tdi2.EnemyFollowingProjectile
- All Implemented Interfaces:
com.badlogic.gdx.utils.Pool.Poolable
,com.esotericsoftware.kryo.KryoSerializable
- Direct Known Subclasses:
AirProjectile
,BasicProjectile
,BuffProjectile
,EnemyFollowingExplosiveProjectile
,VenomProjectile
Обычный снаряд, который долетает до целевого врага
-
Nested Class Summary
Nested classes/interfaces inherited from class com.prineside.tdi2.Projectile
Projectile.Factory<T extends Projectile>
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final float
static final float
float
com.badlogic.gdx.math.Vector2
float
float
float
com.badlogic.gdx.math.Vector2
Fields inherited from class com.prineside.tdi2.Projectile
affectedByAbility, id, position, RAYCAST_INTERVAL_MAX, RAYCAST_INTERVAL_MIN, type
Fields inherited from class com.prineside.tdi2.Registrable
S
-
Method Summary
Modifier and TypeMethodDescriptionvoid
applyDrawInterpolation
(float interpolatedTime) void
flyOnEnemy
(Enemy enemy) Перенаправить снаряд на врага (метод может быть не реализован)com.badlogic.gdx.math.Vector2
boolean
boolean
isDone()
void
read
(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) void
reset()
Resets the object for reuse.void
void
void
update
(float deltaTime) void
write
(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) Methods inherited from class com.prineside.tdi2.Projectile
draw, hit, multiplyDamage, setup
Methods inherited from class com.prineside.tdi2.Registrable
isRegistered, setRegistered
-
Field Details
-
DEFAULT_MAX_ROT_SPEED
public static final float DEFAULT_MAX_ROT_SPEED- See Also:
-
DEFAULT_MAX_ROT_SPEED_DYNAMIC
public static final float DEFAULT_MAX_ROT_SPEED_DYNAMIC- See Also:
-
start
public com.badlogic.gdx.math.Vector2 start -
speed
public float speed -
maxRotationSpeed
public float maxRotationSpeed -
maxRotationSpeedDynamic
public float maxRotationSpeedDynamic -
drawPosition
public com.badlogic.gdx.math.Vector2 drawPosition -
drawAngle
public float drawAngle
-
-
Method Details
-
write
public void write(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) - Specified by:
write
in interfacecom.esotericsoftware.kryo.KryoSerializable
- Overrides:
write
in classProjectile
-
read
public void read(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) - Specified by:
read
in interfacecom.esotericsoftware.kryo.KryoSerializable
- Overrides:
read
in classProjectile
-
getTarget
- Returns:
- null if no target / target is unregistered (no need to check for Enemy.isRegistered())
-
setTarget
-
applyDrawInterpolation
public void applyDrawInterpolation(float interpolatedTime) - Specified by:
applyDrawInterpolation
in classProjectile
-
flyOnEnemy
Description copied from class:Projectile
Перенаправить снаряд на врага (метод может быть не реализован)- Overrides:
flyOnEnemy
in classProjectile
-
setUnregistered
public void setUnregistered()- Overrides:
setUnregistered
in classRegistrable
-
reset
public void reset()Description copied from interface:com.badlogic.gdx.utils.Pool.Poolable
Resets the object for reuse. Object references should be nulled and fields may be set to default values.- Specified by:
reset
in interfacecom.badlogic.gdx.utils.Pool.Poolable
- Overrides:
reset
in classProjectile
-
getPosition
public com.badlogic.gdx.math.Vector2 getPosition()- Overrides:
getPosition
in classProjectile
-
update
public void update(float deltaTime) - Specified by:
update
in classProjectile
-
isDone
public boolean isDone()- Specified by:
isDone
in classProjectile
- Returns:
- true, если снаряд больше не нужен и может быть убран из системы
-
hasReachedTarget
public boolean hasReachedTarget()- Specified by:
hasReachedTarget
in classProjectile
-