Class EnderDragonEntity

All Implemented Interfaces:
Attackable, DataTracked, EquipmentHolder, Monster, Targeter, ScoreHolder, CommandOutput, Nameable, EntityLike

public class EnderDragonEntity extends MobEntity implements Monster
Mappings:
Namespace Name
named net/minecraft/entity/boss/dragon/EnderDragonEntity
intermediary net/minecraft/class_1510
official cho
  • Field Details

    • LOGGER

      private static final Logger LOGGER
      Mappings:
      Namespace Name Mixin selector
      named LOGGER Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;LOGGER:Lorg/slf4j/Logger;
      intermediary field_7021 Lnet/minecraft/class_1510;field_7021:Lorg/slf4j/Logger;
      official cf Lcho;cf:Lorg/slf4j/Logger;
    • PHASE_TYPE

      public static final TrackedData<Integer> PHASE_TYPE
      Mappings:
      Namespace Name Mixin selector
      named PHASE_TYPE Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;PHASE_TYPE:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_7013 Lnet/minecraft/class_1510;field_7013:Lnet/minecraft/class_2940;
      official b Lcho;b:Lajp;
    • CLOSE_PLAYER_PREDICATE

      private static final TargetPredicate CLOSE_PLAYER_PREDICATE
      Mappings:
      Namespace Name Mixin selector
      named CLOSE_PLAYER_PREDICATE Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;CLOSE_PLAYER_PREDICATE:Lnet/minecraft/entity/ai/TargetPredicate;
      intermediary field_18120 Lnet/minecraft/class_1510;field_18120:Lnet/minecraft/class_4051;
      official cg Lcho;cg:Lcdt;
    • MAX_HEALTH

      private static final int MAX_HEALTH
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named MAX_HEALTH Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;MAX_HEALTH:I
      intermediary field_30428 Lnet/minecraft/class_1510;field_30428:I
      official ch Lcho;ch:I
    • field_30429

      private static final int field_30429
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30429 Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;field_30429:I
      intermediary field_30429 Lnet/minecraft/class_1510;field_30429:I
      official ci Lcho;ci:I
    • TAKEOFF_THRESHOLD

      private static final float TAKEOFF_THRESHOLD
      The damage the dragon can take before it takes off, represented as a ratio to the full health.
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named TAKEOFF_THRESHOLD Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;TAKEOFF_THRESHOLD:F
      intermediary field_30430 Lnet/minecraft/class_1510;field_30430:F
      official cj Lcho;cj:F
    • DRAGON_DEATH_TIME_KEY

      private static final String DRAGON_DEATH_TIME_KEY
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named DRAGON_DEATH_TIME_KEY Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;DRAGON_DEATH_TIME_KEY:Ljava/lang/String;
      intermediary field_33910 Lnet/minecraft/class_1510;field_33910:Ljava/lang/String;
      official ck Lcho;ck:Ljava/lang/String;
    • DRAGON_PHASE_KEY

      private static final String DRAGON_PHASE_KEY
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named DRAGON_PHASE_KEY Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;DRAGON_PHASE_KEY:Ljava/lang/String;
      intermediary field_33911 Lnet/minecraft/class_1510;field_33911:Ljava/lang/String;
      official cl Lcho;cl:Ljava/lang/String;
    • segmentCircularBuffer

      public final double[][] segmentCircularBuffer
      (yaw, y, ?)
      Mappings:
      Namespace Name Mixin selector
      named segmentCircularBuffer Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;segmentCircularBuffer:[[D
      intermediary field_7026 Lnet/minecraft/class_1510;field_7026:[[D
      official c Lcho;c:[[D
    • latestSegment

      public int latestSegment
      Mappings:
      Namespace Name Mixin selector
      named latestSegment Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;latestSegment:I
      intermediary field_7010 Lnet/minecraft/class_1510;field_7010:I
      official d Lcho;d:I
    • parts

      private final EnderDragonPart[] parts
      Mappings:
      Namespace Name Mixin selector
      named parts Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;parts:[Lnet/minecraft/entity/boss/dragon/EnderDragonPart;
      intermediary field_7032 Lnet/minecraft/class_1510;field_7032:[Lnet/minecraft/class_1508;
      official cm Lcho;cm:[Lchm;
    • neck

      private final EnderDragonPart neck
      Mappings:
      Namespace Name Mixin selector
      named neck Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;neck:Lnet/minecraft/entity/boss/dragon/EnderDragonPart;
      intermediary field_7011 Lnet/minecraft/class_1510;field_7011:Lnet/minecraft/class_1508;
      official cn Lcho;cn:Lchm;
    • body

      private final EnderDragonPart body
      Mappings:
      Namespace Name Mixin selector
      named body Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;body:Lnet/minecraft/entity/boss/dragon/EnderDragonPart;
      intermediary field_7023 Lnet/minecraft/class_1510;field_7023:Lnet/minecraft/class_1508;
      official co Lcho;co:Lchm;
    • tail1

      private final EnderDragonPart tail1
      Mappings:
      Namespace Name Mixin selector
      named tail1 Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;tail1:Lnet/minecraft/entity/boss/dragon/EnderDragonPart;
      intermediary field_7020 Lnet/minecraft/class_1510;field_7020:Lnet/minecraft/class_1508;
      official cp Lcho;cp:Lchm;
    • tail2

      private final EnderDragonPart tail2
      Mappings:
      Namespace Name Mixin selector
      named tail2 Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;tail2:Lnet/minecraft/entity/boss/dragon/EnderDragonPart;
      intermediary field_7009 Lnet/minecraft/class_1510;field_7009:Lnet/minecraft/class_1508;
      official cq Lcho;cq:Lchm;
    • tail3

      private final EnderDragonPart tail3
      Mappings:
      Namespace Name Mixin selector
      named tail3 Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;tail3:Lnet/minecraft/entity/boss/dragon/EnderDragonPart;
      intermediary field_7022 Lnet/minecraft/class_1510;field_7022:Lnet/minecraft/class_1508;
      official cr Lcho;cr:Lchm;
    • rightWing

      private final EnderDragonPart rightWing
      Mappings:
      Namespace Name Mixin selector
      named rightWing Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;rightWing:Lnet/minecraft/entity/boss/dragon/EnderDragonPart;
      intermediary field_7015 Lnet/minecraft/class_1510;field_7015:Lnet/minecraft/class_1508;
      official cs Lcho;cs:Lchm;
    • leftWing

      private final EnderDragonPart leftWing
      Mappings:
      Namespace Name Mixin selector
      named leftWing Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;leftWing:Lnet/minecraft/entity/boss/dragon/EnderDragonPart;
      intermediary field_7014 Lnet/minecraft/class_1510;field_7014:Lnet/minecraft/class_1508;
      official ct Lcho;ct:Lchm;
    • prevWingPosition

      public float prevWingPosition
      Mappings:
      Namespace Name Mixin selector
      named prevWingPosition Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;prevWingPosition:F
      intermediary field_7019 Lnet/minecraft/class_1510;field_7019:F
      official bZ Lcho;bZ:F
    • wingPosition

      public float wingPosition
      Mappings:
      Namespace Name Mixin selector
      named wingPosition Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;wingPosition:F
      intermediary field_7030 Lnet/minecraft/class_1510;field_7030:F
      official ca Lcho;ca:F
    • slowedDownByBlock

      public boolean slowedDownByBlock
      Mappings:
      Namespace Name Mixin selector
      named slowedDownByBlock Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;slowedDownByBlock:Z
      intermediary field_7027 Lnet/minecraft/class_1510;field_7027:Z
      official cb Lcho;cb:Z
    • ticksSinceDeath

      public int ticksSinceDeath
      Mappings:
      Namespace Name Mixin selector
      named ticksSinceDeath Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;ticksSinceDeath:I
      intermediary field_7031 Lnet/minecraft/class_1510;field_7031:I
      official cc Lcho;cc:I
    • yawAcceleration

      public float yawAcceleration
      Mappings:
      Namespace Name Mixin selector
      named yawAcceleration Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;yawAcceleration:F
      intermediary field_20865 Lnet/minecraft/class_1510;field_20865:F
      official cd Lcho;cd:F
    • connectedCrystal

      @Nullable public @Nullable EndCrystalEntity connectedCrystal
      Mappings:
      Namespace Name Mixin selector
      named connectedCrystal Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;connectedCrystal:Lnet/minecraft/entity/decoration/EndCrystalEntity;
      intermediary field_7024 Lnet/minecraft/class_1510;field_7024:Lnet/minecraft/class_1511;
      official ce Lcho;ce:Lchn;
    • fight

      Mappings:
      Namespace Name Mixin selector
      named fight Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;fight:Lnet/minecraft/entity/boss/dragon/EnderDragonFight;
      intermediary field_7016 Lnet/minecraft/class_1510;field_7016:Lnet/minecraft/class_2881;
      official cu Lcho;cu:Ldwj;
    • fightOrigin

      private BlockPos fightOrigin
      Mappings:
      Namespace Name Mixin selector
      named fightOrigin Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;fightOrigin:Lnet/minecraft/util/math/BlockPos;
      intermediary field_44875 Lnet/minecraft/class_1510;field_44875:Lnet/minecraft/class_2338;
      official cv Lcho;cv:Lja;
    • phaseManager

      private final PhaseManager phaseManager
      Mappings:
      Namespace Name Mixin selector
      named phaseManager Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;phaseManager:Lnet/minecraft/entity/boss/dragon/phase/PhaseManager;
      intermediary field_7028 Lnet/minecraft/class_1510;field_7028:Lnet/minecraft/class_1526;
      official cw Lcho;cw:Lcif;
    • ticksUntilNextGrowl

      private int ticksUntilNextGrowl
      Mappings:
      Namespace Name Mixin selector
      named ticksUntilNextGrowl Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;ticksUntilNextGrowl:I
      intermediary field_7018 Lnet/minecraft/class_1510;field_7018:I
      official cx Lcho;cx:I
    • damageDuringSitting

      private float damageDuringSitting
      Mappings:
      Namespace Name Mixin selector
      named damageDuringSitting Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;damageDuringSitting:F
      intermediary field_7029 Lnet/minecraft/class_1510;field_7029:F
      official cy Lcho;cy:F
    • pathNodes

      private final PathNode[] pathNodes
      The first 12 path nodes are used for end crystals; the others are not tied to them.
      Mappings:
      Namespace Name Mixin selector
      named pathNodes Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;pathNodes:[Lnet/minecraft/entity/ai/pathing/PathNode;
      intermediary field_7012 Lnet/minecraft/class_1510;field_7012:[Lnet/minecraft/class_9;
      official cz Lcho;cz:[Leov;
    • pathNodeConnections

      private final int[] pathNodeConnections
      An array of 24 bitflags, where node #i leads to #j if and only if (pathNodeConnections[i] & (1 << j)) != 0.
      Mappings:
      Namespace Name Mixin selector
      named pathNodeConnections Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;pathNodeConnections:[I
      intermediary field_7025 Lnet/minecraft/class_1510;field_7025:[I
      official cA Lcho;cA:[I
    • pathHeap

      private final PathMinHeap pathHeap
      Mappings:
      Namespace Name Mixin selector
      named pathHeap Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;pathHeap:Lnet/minecraft/entity/ai/pathing/PathMinHeap;
      intermediary field_7008 Lnet/minecraft/class_1510;field_7008:Lnet/minecraft/class_5;
      official cC Lcho;cC:Leot;
  • Constructor Details

    • EnderDragonEntity

      public EnderDragonEntity(EntityType<? extends EnderDragonEntity> type, World world)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/entity/Entity;<init>(Lnet/minecraft/entity/EntityType;Lnet/minecraft/world/World;)V
      intermediary <init> Lnet/minecraft/class_1297;<init>(Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)V
      official <init> Lbsh;<init>(Lbsn;Ldcg;)V
  • Method Details

    • setFight

      public void setFight(EnderDragonFight fight)
      Mappings:
      Namespace Name Mixin selector
      named setFight Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;setFight(Lnet/minecraft/entity/boss/dragon/EnderDragonFight;)V
      intermediary method_51852 Lnet/minecraft/class_1510;method_51852(Lnet/minecraft/class_2881;)V
      official a Lcho;a(Ldwj;)V
    • setFightOrigin

      public void setFightOrigin(BlockPos fightOrigin)
      Mappings:
      Namespace Name Mixin selector
      named setFightOrigin Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;setFightOrigin(Lnet/minecraft/util/math/BlockPos;)V
      intermediary method_51853 Lnet/minecraft/class_1510;method_51853(Lnet/minecraft/class_2338;)V
      official c Lcho;c(Lja;)V
    • getFightOrigin

      public BlockPos getFightOrigin()
      Mappings:
      Namespace Name Mixin selector
      named getFightOrigin Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getFightOrigin()Lnet/minecraft/util/math/BlockPos;
      intermediary method_51854 Lnet/minecraft/class_1510;method_51854()Lnet/minecraft/class_2338;
      official s Lcho;s()Lja;
    • createEnderDragonAttributes

      public static DefaultAttributeContainer.Builder createEnderDragonAttributes()
      Mappings:
      Namespace Name Mixin selector
      named createEnderDragonAttributes Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;createEnderDragonAttributes()Lnet/minecraft/entity/attribute/DefaultAttributeContainer$Builder;
      intermediary method_26903 Lnet/minecraft/class_1510;method_26903()Lnet/minecraft/class_5132$class_5133;
      official t Lcho;t()Lbuj$a;
    • isFlappingWings

      public boolean isFlappingWings()
      Returns whether the entity is flapping their wings.

      Entities flapping their wings will call addFlapEffects() inside Entity.addAirTravelEffects().

      Overrides:
      isFlappingWings in class Entity
      Returns:
      whether the entity is flapping their wings
      Mappings:
      Namespace Name Mixin selector
      named isFlappingWings Lnet/minecraft/entity/Entity;isFlappingWings()Z
      intermediary method_5776 Lnet/minecraft/class_1297;method_5776()Z
      official aX Lbsh;aX()Z
    • addFlapEffects

      public void addFlapEffects()
      Adds the effects of this entity flapping, usually to the world the entity is in.

      The actual flapping logic should be done in MobEntity.tick() instead.

      This is only called when the entity is flapping wings and the entity has any move effect, from Entity.addAirTravelEffects().

      Overrides:
      addFlapEffects in class Entity
      Mappings:
      Namespace Name Mixin selector
      named addFlapEffects Lnet/minecraft/entity/Entity;addFlapEffects()V
      intermediary method_5801 Lnet/minecraft/class_1297;method_5801()V
      official aW Lbsh;aW()V
    • initDataTracker

      protected void initDataTracker(DataTracker.Builder builder)
      Initializes data tracker.
      Overrides:
      initDataTracker in class MobEntity
      API Note:
      Subclasses should override this and add to the builder any data that needs to be tracked.
      Mappings:
      Namespace Name Mixin selector
      named initDataTracker Lnet/minecraft/entity/Entity;initDataTracker(Lnet/minecraft/entity/data/DataTracker$Builder;)V
      intermediary method_5693 Lnet/minecraft/class_1297;method_5693(Lnet/minecraft/class_2945$class_9222;)V
      official a Lbsh;a(Lajt$a;)V
    • getSegmentProperties

      public double[] getSegmentProperties(int segmentNumber, float tickDelta)
      Mappings:
      Namespace Name Mixin selector
      named getSegmentProperties Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getSegmentProperties(IF)[D
      intermediary method_6817 Lnet/minecraft/class_1510;method_6817(IF)[D
      official a Lcho;a(IF)[D
    • tickMovement

      public void tickMovement()
      Overrides:
      tickMovement in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named tickMovement Lnet/minecraft/entity/LivingEntity;tickMovement()V
      intermediary method_6007 Lnet/minecraft/class_1309;method_6007()V
      official m_ Lbtc;m_()V
    • movePart

      private void movePart(EnderDragonPart enderDragonPart, double dx, double dy, double dz)
      Mappings:
      Namespace Name Mixin selector
      named movePart Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;movePart(Lnet/minecraft/entity/boss/dragon/EnderDragonPart;DDD)V
      intermediary method_22863 Lnet/minecraft/class_1510;method_22863(Lnet/minecraft/class_1508;DDD)V
      official a Lcho;a(Lchm;DDD)V
    • getHeadVerticalMovement

      private float getHeadVerticalMovement()
      Mappings:
      Namespace Name Mixin selector
      named getHeadVerticalMovement Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getHeadVerticalMovement()F
      intermediary method_6820 Lnet/minecraft/class_1510;method_6820()F
      official gm Lcho;gm()F
    • tickWithEndCrystals

      private void tickWithEndCrystals()
      Things to do every tick related to end crystals. The Ender Dragon: * Disconnects from its crystal if it is removed * If it is connected to a crystal, then heals every 10 ticks * With a 1 in 10 chance each tick, searches for the nearest crystal and connects to it if present
      Mappings:
      Namespace Name Mixin selector
      named tickWithEndCrystals Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;tickWithEndCrystals()V
      intermediary method_6830 Lnet/minecraft/class_1510;method_6830()V
      official gn Lcho;gn()V
    • launchLivingEntities

      private void launchLivingEntities(ServerWorld world, List<Entity> entities)
      Mappings:
      Namespace Name Mixin selector
      named launchLivingEntities Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;launchLivingEntities(Lnet/minecraft/server/world/ServerWorld;Ljava/util/List;)V
      intermediary method_6825 Lnet/minecraft/class_1510;method_6825(Lnet/minecraft/class_3218;Ljava/util/List;)V
      official a Lcho;a(Laqm;Ljava/util/List;)V
    • damageLivingEntities

      private void damageLivingEntities(List<Entity> entities)
      Mappings:
      Namespace Name Mixin selector
      named damageLivingEntities Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;damageLivingEntities(Ljava/util/List;)V
      intermediary method_6827 Lnet/minecraft/class_1510;method_6827(Ljava/util/List;)V
      official b Lcho;b(Ljava/util/List;)V
    • wrapYawChange

      private float wrapYawChange(double yawDegrees)
      Mappings:
      Namespace Name Mixin selector
      named wrapYawChange Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;wrapYawChange(D)F
      intermediary method_6832 Lnet/minecraft/class_1510;method_6832(D)F
      official i Lcho;i(D)F
    • destroyBlocks

      private boolean destroyBlocks(Box box)
      Mappings:
      Namespace Name Mixin selector
      named destroyBlocks Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;destroyBlocks(Lnet/minecraft/util/math/Box;)Z
      intermediary method_6821 Lnet/minecraft/class_1510;method_6821(Lnet/minecraft/class_238;)Z
      official b Lcho;b(Lewc;)Z
    • damagePart

      public boolean damagePart(EnderDragonPart part, DamageSource source, float amount)
      Mappings:
      Namespace Name Mixin selector
      named damagePart Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;damagePart(Lnet/minecraft/entity/boss/dragon/EnderDragonPart;Lnet/minecraft/entity/damage/DamageSource;F)Z
      intermediary method_6816 Lnet/minecraft/class_1510;method_6816(Lnet/minecraft/class_1508;Lnet/minecraft/class_1282;F)Z
      official a Lcho;a(Lchm;Lbra;F)Z
    • damage

      public boolean damage(DamageSource source, float amount)
      Applies a damage to this entity. The exact implementation differs between subclasses.

      LivingEntity has health value, and damaging the entity decreases it. This also handles shields, extra damage to helmets for falling blocks, setting the attacker, playing hurt sound, etc.

      Some entities like

      invalid reference
      ItemEntity
      also have health value, which the overridden method decrements. There also exist several entities, like EndCrystalEntity, where any damage discards the entity (perhaps with an explosion).

      If this is overridden, it must check the result of LivingEntity.isInvulnerableTo(net.minecraft.entity.damage.DamageSource) and return early.

      Overrides:
      damage in class LivingEntity
      Returns:
      whether the entity was actually damaged
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named damage Lnet/minecraft/entity/Entity;damage(Lnet/minecraft/entity/damage/DamageSource;F)Z
      intermediary method_5643 Lnet/minecraft/class_1297;method_5643(Lnet/minecraft/class_1282;F)Z
      official a Lbsh;a(Lbra;F)Z
    • parentDamage

      protected boolean parentDamage(DamageSource source, float amount)
      Mappings:
      Namespace Name Mixin selector
      named parentDamage Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;parentDamage(Lnet/minecraft/entity/damage/DamageSource;F)Z
      intermediary method_6819 Lnet/minecraft/class_1510;method_6819(Lnet/minecraft/class_1282;F)Z
      official g Lcho;g(Lbra;F)Z
    • kill

      public void kill()
      Kills the entity.

      This drops loot when applicable, and emits the

      invalid reference
      GameEvent#ENTITY_DIE
      game event.
      Overrides:
      kill in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named kill Lnet/minecraft/entity/Entity;kill()V
      intermediary method_5768 Lnet/minecraft/class_1297;method_5768()V
      official ap Lbsh;ap()V
    • updatePostDeath

      protected void updatePostDeath()
      Overrides:
      updatePostDeath in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named updatePostDeath Lnet/minecraft/entity/LivingEntity;updatePostDeath()V
      intermediary method_6108 Lnet/minecraft/class_1309;method_6108()V
      official ef Lbtc;ef()V
    • getNearestPathNodeIndex

      public int getNearestPathNodeIndex()
      Mappings:
      Namespace Name Mixin selector
      named getNearestPathNodeIndex Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getNearestPathNodeIndex()I
      intermediary method_6818 Lnet/minecraft/class_1510;method_6818()I
      official x Lcho;x()I
    • getNearestPathNodeIndex

      public int getNearestPathNodeIndex(double x, double y, double z)
      Mappings:
      Namespace Name Mixin selector
      named getNearestPathNodeIndex Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getNearestPathNodeIndex(DDD)I
      intermediary method_6822 Lnet/minecraft/class_1510;method_6822(DDD)I
      official r Lcho;r(DDD)I
    • findPath

      @Nullable public @Nullable Path findPath(int from, int to, @Nullable @Nullable PathNode pathNode)
      Mappings:
      Namespace Name Mixin selector
      named findPath Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;findPath(IILnet/minecraft/entity/ai/pathing/PathNode;)Lnet/minecraft/entity/ai/pathing/Path;
      intermediary method_6833 Lnet/minecraft/class_1510;method_6833(IILnet/minecraft/class_9;)Lnet/minecraft/class_11;
      official a Lcho;a(IILeov;)Leox;
    • getPathOfAllPredecessors

      private Path getPathOfAllPredecessors(PathNode unused, PathNode node)
      Mappings:
      Namespace Name Mixin selector
      named getPathOfAllPredecessors Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getPathOfAllPredecessors(Lnet/minecraft/entity/ai/pathing/PathNode;Lnet/minecraft/entity/ai/pathing/PathNode;)Lnet/minecraft/entity/ai/pathing/Path;
      intermediary method_6826 Lnet/minecraft/class_1510;method_6826(Lnet/minecraft/class_9;Lnet/minecraft/class_9;)Lnet/minecraft/class_11;
      official a Lcho;a(Leov;Leov;)Leox;
    • writeCustomDataToNbt

      public void writeCustomDataToNbt(NbtCompound nbt)
      Writes custom data to nbt. Subclasses have to implement this.

      NBT is a storage format; therefore, a data from NBT is loaded to an entity instance's fields, which are used for other operations instead of the NBT. The data is written back to NBT when saving the entity.

      Overrides:
      writeCustomDataToNbt in class MobEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named writeCustomDataToNbt Lnet/minecraft/entity/Entity;writeCustomDataToNbt(Lnet/minecraft/nbt/NbtCompound;)V
      intermediary method_5652 Lnet/minecraft/class_1297;method_5652(Lnet/minecraft/class_2487;)V
      official b Lbsh;b(Ltx;)V
    • readCustomDataFromNbt

      public void readCustomDataFromNbt(NbtCompound nbt)
      Reads custom data from nbt. Subclasses have to implement this.

      NBT is a storage format; therefore, a data from NBT is loaded to an entity instance's fields, which are used for other operations instead of the NBT. The data is written back to NBT when saving the entity.

      nbt might not have all expected keys, or might have a key whose value does not meet the requirement (such as the type or the range). This method should fall back to a reasonable default value instead of throwing an exception.

      Overrides:
      readCustomDataFromNbt in class MobEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named readCustomDataFromNbt Lnet/minecraft/entity/Entity;readCustomDataFromNbt(Lnet/minecraft/nbt/NbtCompound;)V
      intermediary method_5749 Lnet/minecraft/class_1297;method_5749(Lnet/minecraft/class_2487;)V
      official a Lbsh;a(Ltx;)V
    • checkDespawn

      public void checkDespawn()
      Checks whether the entity should be despawned.

      To despawn this entity, call Entity.discard().

      Overrides:
      checkDespawn in class MobEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named checkDespawn Lnet/minecraft/entity/Entity;checkDespawn()V
      intermediary method_5982 Lnet/minecraft/class_1297;method_5982()V
      official dD Lbsh;dD()V
    • getBodyParts

      public EnderDragonPart[] getBodyParts()
      Mappings:
      Namespace Name Mixin selector
      named getBodyParts Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getBodyParts()[Lnet/minecraft/entity/boss/dragon/EnderDragonPart;
      intermediary method_5690 Lnet/minecraft/class_1510;method_5690()[Lnet/minecraft/class_1508;
      official gj Lcho;gj()[Lchm;
    • canHit

      public boolean canHit()
      Returns whether the entity can be hit with a projectile or be targeted by the player crosshair.
      Overrides:
      canHit in class LivingEntity
      Returns:
      whether the entity can be hit with a projectile or be targeted by the player crosshair
      Mappings:
      Namespace Name Mixin selector
      named canHit Lnet/minecraft/entity/Entity;canHit()Z
      intermediary method_5863 Lnet/minecraft/class_1297;method_5863()Z
      official bB Lbsh;bB()Z
    • getSoundCategory

      public SoundCategory getSoundCategory()
      Returns the sound category for sounds from this entity.

      This is used by Entity.playSound(SoundEvent, float, float) and defaults to SoundCategory.NEUTRAL. Hostile entities should override this to return SoundCategory.HOSTILE.

      Overrides:
      getSoundCategory in class Entity
      Returns:
      the sound category for sounds from this entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named getSoundCategory Lnet/minecraft/entity/Entity;getSoundCategory()Lnet/minecraft/sound/SoundCategory;
      intermediary method_5634 Lnet/minecraft/class_1297;method_5634()Lnet/minecraft/class_3419;
      official dg Lbsh;dg()Lavi;
    • getAmbientSound

      protected SoundEvent getAmbientSound()
      Overrides:
      getAmbientSound in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named getAmbientSound Lnet/minecraft/entity/mob/MobEntity;getAmbientSound()Lnet/minecraft/sound/SoundEvent;
      intermediary method_5994 Lnet/minecraft/class_1308;method_5994()Lnet/minecraft/class_3414;
      official v Lbte;v()Lavg;
    • getHurtSound

      protected SoundEvent getHurtSound(DamageSource source)
      Overrides:
      getHurtSound in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named getHurtSound Lnet/minecraft/entity/LivingEntity;getHurtSound(Lnet/minecraft/entity/damage/DamageSource;)Lnet/minecraft/sound/SoundEvent;
      intermediary method_6011 Lnet/minecraft/class_1309;method_6011(Lnet/minecraft/class_1282;)Lnet/minecraft/class_3414;
      official d Lbtc;d(Lbra;)Lavg;
    • getSoundVolume

      protected float getSoundVolume()
      Overrides:
      getSoundVolume in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named getSoundVolume Lnet/minecraft/entity/LivingEntity;getSoundVolume()F
      intermediary method_6107 Lnet/minecraft/class_1309;method_6107()F
      official fc Lbtc;fc()F
    • getChangeInNeckPitch

      public float getChangeInNeckPitch(int segmentOffset, double[] segment1, double[] segment2)
      Mappings:
      Namespace Name Mixin selector
      named getChangeInNeckPitch Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getChangeInNeckPitch(I[D[D)F
      intermediary method_6823 Lnet/minecraft/class_1510;method_6823(I[D[D)F
      official a Lcho;a(I[D[D)F
    • getRotationVectorFromPhase

      public Vec3d getRotationVectorFromPhase(float tickDelta)
      Mappings:
      Namespace Name Mixin selector
      named getRotationVectorFromPhase Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getRotationVectorFromPhase(F)Lnet/minecraft/util/math/Vec3d;
      intermediary method_6834 Lnet/minecraft/class_1510;method_6834(F)Lnet/minecraft/class_243;
      official G Lcho;G(F)Lewh;
    • crystalDestroyed

      public void crystalDestroyed(EndCrystalEntity endCrystal, BlockPos pos, DamageSource source)
      Mappings:
      Namespace Name Mixin selector
      named crystalDestroyed Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;crystalDestroyed(Lnet/minecraft/entity/decoration/EndCrystalEntity;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/damage/DamageSource;)V
      intermediary method_6828 Lnet/minecraft/class_1510;method_6828(Lnet/minecraft/class_1511;Lnet/minecraft/class_2338;Lnet/minecraft/class_1282;)V
      official a Lcho;a(Lchn;Lja;Lbra;)V
    • onTrackedDataSet

      public void onTrackedDataSet(TrackedData<?> data)
      Specified by:
      onTrackedDataSet in interface DataTracked
      Overrides:
      onTrackedDataSet in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named onTrackedDataSet Lnet/minecraft/entity/data/DataTracked;onTrackedDataSet(Lnet/minecraft/entity/data/TrackedData;)V
      intermediary method_5674 Lnet/minecraft/class_9221;method_5674(Lnet/minecraft/class_2940;)V
      official a Lajs;a(Lajp;)V
    • getPhaseManager

      public PhaseManager getPhaseManager()
      Mappings:
      Namespace Name Mixin selector
      named getPhaseManager Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getPhaseManager()Lnet/minecraft/entity/boss/dragon/phase/PhaseManager;
      intermediary method_6831 Lnet/minecraft/class_1510;method_6831()Lnet/minecraft/class_1526;
      official gk Lcho;gk()Lcif;
    • getFight

      Mappings:
      Namespace Name Mixin selector
      named getFight Lnet/minecraft/entity/boss/dragon/EnderDragonEntity;getFight()Lnet/minecraft/entity/boss/dragon/EnderDragonFight;
      intermediary method_6829 Lnet/minecraft/class_1510;method_6829()Lnet/minecraft/class_2881;
      official gl Lcho;gl()Ldwj;
    • addStatusEffect

      public boolean addStatusEffect(StatusEffectInstance effect, @Nullable @Nullable Entity source)
      Adds a status effect to this entity.
      Overrides:
      addStatusEffect in class LivingEntity
      Parameters:
      effect - the effect to add
      source - the source entity or null for non-entity sources
      Returns:
      whether the active status effects of this entity has been modified
      Implementation Note:
      A status effect may fail to be added due to getting overridden by existing effects or the effect being incompatible with this entity.
      Mappings:
      Namespace Name Mixin selector
      named addStatusEffect Lnet/minecraft/entity/LivingEntity;addStatusEffect(Lnet/minecraft/entity/effect/StatusEffectInstance;Lnet/minecraft/entity/Entity;)Z
      intermediary method_37222 Lnet/minecraft/class_1309;method_37222(Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;)Z
      official b Lbtc;b(Lbrp;Lbsh;)Z
    • canStartRiding

      protected boolean canStartRiding(Entity entity)
      Returns whether this entity can ride entity.

      Returning false causes the entity to be unable to ride other entities. For example, WitherEntity overrides this to return false, so withers cannot ride boats or minecarts. Note that this check can be bypassed by passing true to MobEntity.startRiding(Entity, boolean).

      This is the opposite of Entity.canAddPassenger(net.minecraft.entity.Entity).

      Overrides:
      canStartRiding in class Entity
      Returns:
      whether this entity can ride entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named canStartRiding Lnet/minecraft/entity/Entity;canStartRiding(Lnet/minecraft/entity/Entity;)Z
      intermediary method_5860 Lnet/minecraft/class_1297;method_5860(Lnet/minecraft/class_1297;)Z
      official o Lbsh;o(Lbsh;)Z
    • canUsePortals

      public boolean canUsePortals()
      Returns whether the entity can use nether portals and end portals.

      EnderDragonEntity, WitherEntity, and FishingBobberEntity cannot use portals.

      Overrides:
      canUsePortals in class LivingEntity
      Returns:
      whether the entity can use nether portals and end portals
      Mappings:
      Namespace Name Mixin selector
      named canUsePortals Lnet/minecraft/entity/Entity;canUsePortals()Z
      intermediary method_5822 Lnet/minecraft/class_1297;method_5822()Z
      official cy Lbsh;cy()Z
    • onSpawnPacket

      public void onSpawnPacket(EntitySpawnS2CPacket packet)
      Called on the client when the entity receives a spawn packet.

      This sets the entity's position, angles, ID, and UUID. Subclasses can override this to initialize additional fields.

      Overrides:
      onSpawnPacket in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named onSpawnPacket Lnet/minecraft/entity/Entity;onSpawnPacket(Lnet/minecraft/network/packet/s2c/play/EntitySpawnS2CPacket;)V
      intermediary method_31471 Lnet/minecraft/class_1297;method_31471(Lnet/minecraft/class_2604;)V
      official a Lbsh;a(Labo;)V
    • canTarget

      public boolean canTarget(LivingEntity target)
      Overrides:
      canTarget in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named canTarget Lnet/minecraft/entity/LivingEntity;canTarget(Lnet/minecraft/entity/LivingEntity;)Z
      intermediary method_18395 Lnet/minecraft/class_1309;method_18395(Lnet/minecraft/class_1309;)Z
      official c Lbtc;c(Lbtc;)Z
    • clampScale

      protected float clampScale(float scale)
      Overrides:
      clampScale in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named clampScale Lnet/minecraft/entity/LivingEntity;clampScale(F)F
      intermediary method_56077 Lnet/minecraft/class_1309;method_56077(F)F
      official b Lbtc;b(F)F