Interface Navigator
- All Known Implementing Classes:
CitizensNavigator
public interface Navigator
Represents the pathfinding AI of an
NPC. The navigator can path towards a single target at a time.-
Method Summary
Modifier and TypeMethodDescriptionvoidCancels any running navigation towards a target.voidcancelNavigation(CancelReason reason) Cancels any running navigation towards a target with a specificCancelReason.booleancanNavigateTo(Location dest) booleancanNavigateTo(Location dest, NavigatorParameters params) Returns whether the NPC can navigate to the given destination with the navigator parameters.Returns theNavigatorParameterslocal to this navigator.Returns the currentEntityTargetof the navigator, if any.Returns theNavigatorParameterslocal to any current target execution.getNPC()booleanbooleanisPaused()voidsetPaused(boolean paused) Sets whether the navigator is paused and shouldn't process the path for now.voidsetStraightLineTarget(Entity target, boolean aggressive) Sets the current navigation to an entity target.voidsetStraightLineTarget(Location target) Sets the current navigation to aLocationdestination.voidSets the current navigation using a list ofVectors which will be moved between sequentially using the Citizens movement logic without pathfinding.voidsetTarget(Function<NavigatorParameters, PathStrategy> strategy) Sets the current navigation to the specified strategy.voidSets the current navigation to an entity target.voidSets the current navigation to aLocationdestination.
-
Method Details
-
getDefaultParameters
NavigatorParameters getDefaultParameters()Returns theNavigatorParameterslocal to this navigator. These parameters are copied to local target parameters when a new target is started.- Returns:
- The default parameters
- See Also:
-
getEntityTarget
EntityTarget getEntityTarget()Returns the currentEntityTargetof the navigator, if any. May return null.- Returns:
- The current entity target
-
getLocalParameters
NavigatorParameters getLocalParameters()Returns theNavigatorParameterslocal to any current target execution. These are updated independently of the default parameters.- Returns:
- The local parameters
- See Also:
-
getNPC
-
getPathStrategy
PathStrategy getPathStrategy()- Returns:
- The current
PathStrategyor null if the navigator is not pathfinding
-
getTargetAsLocation
-
getTargetType
TargetType getTargetType()- Returns:
- The current
TargetTypeof the navigator
-
isPaused
boolean isPaused()- Returns:
- Whether the navigator is currently paused
-
setPaused
void setPaused(boolean paused) Sets whether the navigator is paused and shouldn't process the path for now.- Parameters:
paused- Whether the navigator should be paused or not
-
setStraightLineTarget
-
setStraightLineTarget
-
setTarget
-
setTarget
Sets the current navigation to the specified strategy.- Parameters:
strategy- New navigation strategy
-
setTarget
-
setTarget