Class PatrollingMonster

All Implemented Interfaces:
CommandSource, SyncedDataHolder, Attackable, EquipmentUser, Leashable, Enemy, Targeting, EntityAccess, Nameable, ScoreHolder, IAttachmentHolder, IEntityExtension, ILivingEntityExtension, INBTSerializable<CompoundTag>
Direct Known Subclasses:
Raider

public abstract class PatrollingMonster extends Monster
  • Field Details

    • patrolTarget

      @Nullable private BlockPos patrolTarget
    • patrolLeader

      private boolean patrolLeader
    • patrolling

      private boolean patrolling
  • Constructor Details

  • Method Details

    • registerGoals

      protected void registerGoals()
      Overrides:
      registerGoals in class Mob
    • addAdditionalSaveData

      public void addAdditionalSaveData(CompoundTag pCompound)
      Overrides:
      addAdditionalSaveData in class Mob
    • readAdditionalSaveData

      public void readAdditionalSaveData(CompoundTag pCompound)
      (abstract) Protected helper method to read subclass entity data from NBT.
      Overrides:
      readAdditionalSaveData in class Mob
    • canBeLeader

      public boolean canBeLeader()
    • finalizeSpawn

      @Nullable public SpawnGroupData finalizeSpawn(ServerLevelAccessor pLevel, DifficultyInstance pDifficulty, MobSpawnType pSpawnType, @Nullable SpawnGroupData pSpawnGroupData)
      Overrides:
      finalizeSpawn in class Mob
    • checkPatrollingMonsterSpawnRules

      public static boolean checkPatrollingMonsterSpawnRules(EntityType<? extends PatrollingMonster> pPatrollingMonster, LevelAccessor pLevel, MobSpawnType pSpawnType, BlockPos pPos, RandomSource pRandom)
    • removeWhenFarAway

      public boolean removeWhenFarAway(double pDistanceToClosestPlayer)
      Overrides:
      removeWhenFarAway in class Mob
    • setPatrolTarget

      public void setPatrolTarget(BlockPos pPatrolTarget)
    • getPatrolTarget

      public BlockPos getPatrolTarget()
    • hasPatrolTarget

      public boolean hasPatrolTarget()
    • setPatrolLeader

      public void setPatrolLeader(boolean pPatrolLeader)
    • isPatrolLeader

      public boolean isPatrolLeader()
    • canJoinPatrol

      public boolean canJoinPatrol()
    • findPatrolTarget

      public void findPatrolTarget()
    • isPatrolling

      protected boolean isPatrolling()
    • setPatrolling

      protected void setPatrolling(boolean pPatrolling)