类 EnderDragon

所有已实现的接口:
CommandSource, Attackable, Enemy, Targeting, EntityAccess, Nameable, ICapabilityProvider, ICapabilityProviderImpl<Entity>, ICapabilitySerializable<CompoundTag>, IForgeEntity, IForgeLivingEntity, INBTSerializable<CompoundTag>

public class EnderDragon extends Mob implements Enemy
  • 字段详细资料

    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • DATA_PHASE

      public static final EntityDataAccessor<Integer> DATA_PHASE
    • CRYSTAL_DESTROY_TARGETING

      private static final TargetingConditions CRYSTAL_DESTROY_TARGETING
    • GROWL_INTERVAL_MIN

      private static final int GROWL_INTERVAL_MIN
      另请参阅:
    • GROWL_INTERVAL_MAX

      private static final int GROWL_INTERVAL_MAX
      另请参阅:
    • SITTING_ALLOWED_DAMAGE_PERCENTAGE

      private static final float SITTING_ALLOWED_DAMAGE_PERCENTAGE
      另请参阅:
    • DRAGON_DEATH_TIME_KEY

      private static final String DRAGON_DEATH_TIME_KEY
      另请参阅:
    • DRAGON_PHASE_KEY

      private static final String DRAGON_PHASE_KEY
      另请参阅:
    • positions

      public final double[][] positions
    • posPointer

      public int posPointer
    • subEntities

      private final EnderDragonPart[] subEntities
    • neck

      private final EnderDragonPart neck
    • body

      private final EnderDragonPart body
    • tail1

      private final EnderDragonPart tail1
    • tail2

      private final EnderDragonPart tail2
    • tail3

      private final EnderDragonPart tail3
    • wing1

      private final EnderDragonPart wing1
    • wing2

      private final EnderDragonPart wing2
    • oFlapTime

      public float oFlapTime
    • flapTime

      public float flapTime
    • inWall

      public boolean inWall
    • dragonDeathTime

      public int dragonDeathTime
    • yRotA

      public float yRotA
    • nearestCrystal

      @Nullable public EndCrystal nearestCrystal
    • dragonFight

      @Nullable private EndDragonFight dragonFight
    • fightOrigin

      private BlockPos fightOrigin
    • phaseManager

      private final EnderDragonPhaseManager phaseManager
    • growlTime

      private int growlTime
    • sittingDamageReceived

      private float sittingDamageReceived
    • nodes

      private final Node[] nodes
    • nodeAdjacency

      private final int[] nodeAdjacency
    • openSet

      private final BinaryHeap openSet
    • unlimitedLastHurtByPlayer

      @Nullable private @Nullable Player unlimitedLastHurtByPlayer
  • 构造器详细资料

  • 方法详细资料

    • setId

      public void setId(int id)
      覆盖:
      setId 在类中 Entity
    • setDragonFight

      public void setDragonFight(EndDragonFight pDragonFight)
    • setFightOrigin

      public void setFightOrigin(BlockPos pFightOrigin)
    • getFightOrigin

      public BlockPos getFightOrigin()
    • createAttributes

      public static AttributeSupplier.Builder createAttributes()
    • isFlapping

      public boolean isFlapping()
      覆盖:
      isFlapping 在类中 Entity
    • onFlap

      public void onFlap()
      覆盖:
      onFlap 在类中 Entity
    • defineSynchedData

      protected void defineSynchedData()
      覆盖:
      defineSynchedData 在类中 Mob
    • getLatencyPos

      public double[] getLatencyPos(int pBufferIndexOffset, float pPartialTicks)
    • aiStep

      public void aiStep()
      覆盖:
      aiStep 在类中 Mob
    • tickPart

      private void tickPart(EnderDragonPart pPart, double pOffsetX, double pOffsetY, double pOffsetZ)
    • getHeadYOffset

      private float getHeadYOffset()
    • checkCrystals

      private void checkCrystals()
    • knockBack

      private void knockBack(List<Entity> pEntities)
    • hurt

      private void hurt(List<Entity> pEntities)
    • rotWrap

      private float rotWrap(double pAngle)
    • checkWalls

      private boolean checkWalls(AABB pArea)
    • hurt

      public boolean hurt(EnderDragonPart pPart, DamageSource pSource, float pDamage)
    • hurt

      public boolean hurt(DamageSource pSource, float pAmount)
      覆盖:
      hurt 在类中 LivingEntity
    • reallyHurt

      protected boolean reallyHurt(DamageSource pDamageSource, float pAmount)
    • kill

      public void kill()
      覆盖:
      kill 在类中 LivingEntity
    • tickDeath

      protected void tickDeath()
      覆盖:
      tickDeath 在类中 LivingEntity
    • findClosestNode

      public int findClosestNode()
    • findClosestNode

      public int findClosestNode(double pX, double pY, double pZ)
    • findPath

      @Nullable public Path findPath(int pStartIndex, int pFinishIndex, @Nullable Node pAndThen)
    • reconstructPath

      private Path reconstructPath(Node pStart, Node pFinish)
    • addAdditionalSaveData

      public void addAdditionalSaveData(CompoundTag pCompound)
      覆盖:
      addAdditionalSaveData 在类中 Mob
    • readAdditionalSaveData

      public void readAdditionalSaveData(CompoundTag pCompound)
      覆盖:
      readAdditionalSaveData 在类中 Mob
    • checkDespawn

      public void checkDespawn()
      覆盖:
      checkDespawn 在类中 Mob
    • getSubEntities

      public EnderDragonPart[] getSubEntities()
    • isPickable

      public boolean isPickable()
      覆盖:
      isPickable 在类中 LivingEntity
    • getSoundSource

      public SoundSource getSoundSource()
      覆盖:
      getSoundSource 在类中 Entity
    • getAmbientSound

      protected SoundEvent getAmbientSound()
      覆盖:
      getAmbientSound 在类中 Mob
    • getHurtSound

      protected SoundEvent getHurtSound(DamageSource pDamageSource)
      覆盖:
      getHurtSound 在类中 LivingEntity
    • getSoundVolume

      protected float getSoundVolume()
      覆盖:
      getSoundVolume 在类中 LivingEntity
    • getHeadPartYOffset

      public float getHeadPartYOffset(int pPartIndex, double[] pSpineEndOffsets, double[] pHeadPartOffsets)
    • getHeadLookVector

      public Vec3 getHeadLookVector(float pPartialTicks)
    • onCrystalDestroyed

      public void onCrystalDestroyed(EndCrystal pCrystal, BlockPos pPos, DamageSource pDamageSource)
    • onSyncedDataUpdated

      public void onSyncedDataUpdated(EntityDataAccessor<?> pKey)
      覆盖:
      onSyncedDataUpdated 在类中 LivingEntity
    • getPhaseManager

      public EnderDragonPhaseManager getPhaseManager()
    • getDragonFight

      @Nullable public EndDragonFight getDragonFight()
    • addEffect

      public boolean addEffect(MobEffectInstance pEffectInstance, @Nullable Entity pEntity)
      覆盖:
      addEffect 在类中 LivingEntity
    • canRide

      protected boolean canRide(Entity pEntity)
      覆盖:
      canRide 在类中 Entity
    • canChangeDimensions

      public boolean canChangeDimensions()
      覆盖:
      canChangeDimensions 在类中 LivingEntity
    • isMultipartEntity

      public boolean isMultipartEntity()
      从接口复制的说明: IForgeEntity
      This is used to specify that your entity has multiple individual parts, such as the Vanilla Ender Dragon. See EnderDragon for an example implementation.
      指定者:
      isMultipartEntity 在接口中 IForgeEntity
      返回:
      true if this is a multipart entity.
    • getParts

      public PartEntity<?>[] getParts()
      从接口复制的说明: IForgeEntity
      Gets the individual sub parts that make up this entity. The entities returned by this method are NOT saved to the world in nay way, they exist as an extension of their host entity. The child entity does not track its server-side(or client-side) counterpart, and the host entity is responsible for moving and managing these children. Only used if IForgeEntity.isMultipartEntity() returns true. See EnderDragon for an example implementation.
      指定者:
      getParts 在接口中 IForgeEntity
      返回:
      The child parts of this entity. The value to be returned here should be cached.
    • recreateFromPacket

      public void recreateFromPacket(ClientboundAddEntityPacket pPacket)
      覆盖:
      recreateFromPacket 在类中 LivingEntity
    • canAttack

      public boolean canAttack(LivingEntity pTarget)
      覆盖:
      canAttack 在类中 LivingEntity
    • getPassengersRidingOffset

      public double getPassengersRidingOffset()
      覆盖:
      getPassengersRidingOffset 在类中 Entity