Class MoveToBlockBehavior<E extends net.minecraft.world.entity.PathfinderMob>

java.lang.Object
net.minecraft.world.entity.ai.behavior.Behavior<E>
net.frozenblock.lib.entity.api.behavior.MoveToBlockBehavior<E>
All Implemented Interfaces:
net.minecraft.world.entity.ai.behavior.BehaviorControl<E>

public abstract class MoveToBlockBehavior<E extends net.minecraft.world.entity.PathfinderMob> extends net.minecraft.world.entity.ai.behavior.Behavior<E>
MoveToBlockGoal as a behavior.
  • Nested Class Summary

    Nested classes/interfaces inherited from class net.minecraft.world.entity.ai.behavior.Behavior

    net.minecraft.world.entity.ai.behavior.Behavior.Status
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected net.minecraft.core.BlockPos
     
    static final int
     
    protected final E
     
    final double
     
    protected int
     
    protected int
     

    Fields inherited from class net.minecraft.world.entity.ai.behavior.Behavior

    DEFAULT_DURATION, entryCondition
  • Constructor Summary

    Constructors
    Constructor
    Description
    MoveToBlockBehavior(E mob, double speedModifier, int searchRange)
     
    MoveToBlockBehavior(E mob, double speedModifier, int searchRange, int verticalSearchRange)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    double
     
    boolean
    canStillUse(net.minecraft.server.level.ServerLevel level, E entity, long gameTime)
     
    boolean
    checkExtraStartConditions(net.minecraft.server.level.ServerLevel level, E owner)
     
    protected boolean
    Searches and sets new destination block and returns true if a suitable block (specified in isValidTarget(LevelReader, BlockPos)) can be found.
    protected net.minecraft.core.BlockPos
     
    protected boolean
     
    abstract boolean
    isValidTarget(net.minecraft.world.level.LevelReader level, net.minecraft.core.BlockPos pos)
    Return true to set given position as destination.
    protected void
     
    boolean
     
    void
    start(net.minecraft.server.level.ServerLevel level, E entity, long gameTime)
     
    protected void
    tick(net.minecraft.server.level.ServerLevel level, E owner, long gameTime)
     

    Methods inherited from class net.minecraft.world.entity.ai.behavior.Behavior

    debugString, doStop, getStatus, hasRequiredMemories, stop, tickOrStop, timedOut, tryStart

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • DURATION

      public static final int DURATION
      See Also:
    • mob

      protected final E extends net.minecraft.world.entity.PathfinderMob mob
    • speedModifier

      public final double speedModifier
    • tryTicks

      protected int tryTicks
    • blockPos

      protected net.minecraft.core.BlockPos blockPos
    • verticalSearchStart

      protected int verticalSearchStart
  • Constructor Details

    • MoveToBlockBehavior

      public MoveToBlockBehavior(E mob, double speedModifier, int searchRange)
    • MoveToBlockBehavior

      public MoveToBlockBehavior(E mob, double speedModifier, int searchRange, int verticalSearchRange)
  • Method Details

    • checkExtraStartConditions

      public boolean checkExtraStartConditions(net.minecraft.server.level.ServerLevel level, E owner)
      Overrides:
      checkExtraStartConditions in class net.minecraft.world.entity.ai.behavior.Behavior<E extends net.minecraft.world.entity.PathfinderMob>
    • canStillUse

      public boolean canStillUse(net.minecraft.server.level.ServerLevel level, E entity, long gameTime)
      Overrides:
      canStillUse in class net.minecraft.world.entity.ai.behavior.Behavior<E extends net.minecraft.world.entity.PathfinderMob>
    • start

      public void start(net.minecraft.server.level.ServerLevel level, E entity, long gameTime)
      Overrides:
      start in class net.minecraft.world.entity.ai.behavior.Behavior<E extends net.minecraft.world.entity.PathfinderMob>
    • moveMobToBlock

      protected void moveMobToBlock()
    • acceptedDistance

      public double acceptedDistance()
    • getMoveToTarget

      protected net.minecraft.core.BlockPos getMoveToTarget()
    • tick

      protected void tick(net.minecraft.server.level.ServerLevel level, E owner, long gameTime)
      Overrides:
      tick in class net.minecraft.world.entity.ai.behavior.Behavior<E extends net.minecraft.world.entity.PathfinderMob>
    • shouldRecalculatePath

      public boolean shouldRecalculatePath()
    • isReachedTarget

      protected boolean isReachedTarget()
    • findNearestBlock

      protected boolean findNearestBlock()
      Searches and sets new destination block and returns true if a suitable block (specified in isValidTarget(LevelReader, BlockPos)) can be found.
    • isValidTarget

      public abstract boolean isValidTarget(net.minecraft.world.level.LevelReader level, net.minecraft.core.BlockPos pos)
      Return true to set given position as destination.