Package me.gamercoder215.mobchip.ai.goal
Class PathfinderRangedAttack
java.lang.Object
me.gamercoder215.mobchip.ai.goal.Pathfinder
me.gamercoder215.mobchip.ai.goal.PathfinderRangedAttack
- All Implemented Interfaces:
PathfinderInfo
,Ranged
,SpeedModifier
Represents a Pathfinder for a ranged entity to shoot ranged projectiles
-
Nested Class Summary
Nested classes/interfaces inherited from class me.gamercoder215.mobchip.ai.goal.Pathfinder
Pathfinder.PathfinderFlag
-
Field Summary
Fields inherited from class me.gamercoder215.mobchip.ai.goal.Pathfinder
entity
Fields inherited from interface me.gamercoder215.mobchip.ai.goal.Ranged
DEFAULT_ATTACK_INTERVAL, DEFAULT_ATTACK_RANGE, DEFAULT_LOOK_RANGE
Fields inherited from interface me.gamercoder215.mobchip.ai.SpeedModifier
DEFAULT_SPEED_MODIFIER
-
Constructor Summary
ConstructorsConstructorDescriptionPathfinderRangedAttack
(@NotNull ProjectileSource m, double speedMod) Constructs a PathfinderRangedAttack with the default attack range.PathfinderRangedAttack
(@NotNull ProjectileSource m, double speedMod, float range) Constructs a PathfinderRangedAttack with the default interval.PathfinderRangedAttack
(@NotNull ProjectileSource m, double speedMod, float range, int interval) Constructs a PathfinderRangedAttack with the max and min intervals the same.PathfinderRangedAttack
(@NotNull ProjectileSource m, double speedMod, float range, int attackMin, int attackMax) Constructs a PathfinderRangedAttack. -
Method Summary
Modifier and TypeMethodDescriptiongetFlags()
Fetches an Array of Flags that this Pathfinder has.Returns the NMS Internal Name.int
Fetches the maximum attack interval, in ticks.int
Fetches the minimum attack interval, in ticks.float
getRange()
Gets the current Range.double
Get the Speed Modifier of this Pathfinder.void
setMaxAttackInterval
(int max) Sets the maximum attack interval, in ticks.void
setMinAttackInterval
(int min) Sets the minimum attack interval, in ticks.void
setRange
(float range) Sets the current Range.void
setSpeedModifier
(double mod) Sets the Speed Modifier of this Pathfinder.Methods inherited from class me.gamercoder215.mobchip.ai.goal.Pathfinder
getEntity
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface me.gamercoder215.mobchip.ai.goal.PathfinderInfo
getName
-
Constructor Details
-
PathfinderRangedAttack
Constructs a PathfinderRangedAttack with the default attack range.- Parameters:
m
- ProjectileSource to usespeedMod
- Speed Modifier while attacking
-
PathfinderRangedAttack
Constructs a PathfinderRangedAttack with the default interval.- Parameters:
m
- Skeleton to usespeedMod
- Speed Modifier while attackingrange
- Range of attack
-
PathfinderRangedAttack
public PathfinderRangedAttack(@NotNull @NotNull ProjectileSource m, double speedMod, float range, int interval) Constructs a PathfinderRangedAttack with the max and min intervals the same.- Parameters:
m
- ProjectileSource to usespeedMod
- Speed Modifier while attackingrange
- Range of attackinterval
- Interval of attack, in ticks
-
PathfinderRangedAttack
public PathfinderRangedAttack(@NotNull @NotNull ProjectileSource m, double speedMod, float range, int attackMin, int attackMax) Constructs a PathfinderRangedAttack.- Parameters:
m
- Skeleton to usespeedMod
- Speed Modifier while attackingrange
- Range of attackattackMin
- Minimum Interval of attack, in ticksattackMax
- Maximum Interval of attack, in ticks
-
-
Method Details
-
getMinAttackInterval
public int getMinAttackInterval()Fetches the minimum attack interval, in ticks.- Returns:
- Minimum Attack Interval
-
getMaxAttackInterval
public int getMaxAttackInterval()Fetches the maximum attack interval, in ticks.- Returns:
- Maximum Attack Interval
-
setMinAttackInterval
public void setMinAttackInterval(int min) Sets the minimum attack interval, in ticks.- Parameters:
min
- minimum attack interval
-
setMaxAttackInterval
public void setMaxAttackInterval(int max) Sets the maximum attack interval, in ticks.- Parameters:
max
- maximum attack interval
-
getRange
public float getRange()Description copied from interface:Ranged
Gets the current Range. -
setRange
public void setRange(float range) Description copied from interface:Ranged
Sets the current Range. -
getSpeedModifier
public double getSpeedModifier()Description copied from interface:SpeedModifier
Get the Speed Modifier of this Pathfinder.- Specified by:
getSpeedModifier
in interfaceSpeedModifier
- Returns:
- Speed Modifier
-
setSpeedModifier
public void setSpeedModifier(double mod) Description copied from interface:SpeedModifier
Sets the Speed Modifier of this Pathfinder.- Specified by:
setSpeedModifier
in interfaceSpeedModifier
- Parameters:
mod
- Modifier to set
-
getFlags
Description copied from class:Pathfinder
Fetches an Array of Flags that this Pathfinder has.
- Specified by:
getFlags
in classPathfinder
- Returns:
- Array of Pathfinder Flags
-
getInternalName
Description copied from interface:PathfinderInfo
Returns the NMS Internal Name.- Specified by:
getInternalName
in interfacePathfinderInfo
- Returns:
- Internal Name
-