Class EndermanEntity

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

public class EndermanEntity extends HostileEntity implements Angerable
Mappings:
Namespace Name
named net/minecraft/entity/mob/EndermanEntity
intermediary net/minecraft/class_1560
official cjv
  • Field Details

    • ATTACKING_SPEED_BOOST_ID

      private static final UUID ATTACKING_SPEED_BOOST_ID
      Mappings:
      Namespace Name Mixin selector
      named ATTACKING_SPEED_BOOST_ID Lnet/minecraft/entity/mob/EndermanEntity;ATTACKING_SPEED_BOOST_ID:Ljava/util/UUID;
      intermediary field_7256 Lnet/minecraft/class_1560;field_7256:Ljava/util/UUID;
      official c Lcjv;c:Ljava/util/UUID;
    • ATTACKING_SPEED_BOOST

      private static final EntityAttributeModifier ATTACKING_SPEED_BOOST
      Mappings:
      Namespace Name Mixin selector
      named ATTACKING_SPEED_BOOST Lnet/minecraft/entity/mob/EndermanEntity;ATTACKING_SPEED_BOOST:Lnet/minecraft/entity/attribute/EntityAttributeModifier;
      intermediary field_7252 Lnet/minecraft/class_1560;field_7252:Lnet/minecraft/class_1322;
      official d Lcjv;d:Lbux;
    • field_30462

      private static final int field_30462
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30462 Lnet/minecraft/entity/mob/EndermanEntity;field_30462:I
      intermediary field_30462 Lnet/minecraft/class_1560;field_30462:I
      official e Lcjv;e:I
    • field_30461

      private static final int field_30461
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30461 Lnet/minecraft/entity/mob/EndermanEntity;field_30461:I
      intermediary field_30461 Lnet/minecraft/class_1560;field_30461:I
      official bY Lcjv;bY:I
    • CARRIED_BLOCK

      private static final TrackedData<Optional<BlockState>> CARRIED_BLOCK
      Mappings:
      Namespace Name Mixin selector
      named CARRIED_BLOCK Lnet/minecraft/entity/mob/EndermanEntity;CARRIED_BLOCK:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_7257 Lnet/minecraft/class_1560;field_7257:Lnet/minecraft/class_2940;
      official bZ Lcjv;bZ:Lakk;
    • ANGRY

      private static final TrackedData<Boolean> ANGRY
      Mappings:
      Namespace Name Mixin selector
      named ANGRY Lnet/minecraft/entity/mob/EndermanEntity;ANGRY:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_7255 Lnet/minecraft/class_1560;field_7255:Lnet/minecraft/class_2940;
      official ca Lcjv;ca:Lakk;
    • PROVOKED

      private static final TrackedData<Boolean> PROVOKED
      Mappings:
      Namespace Name Mixin selector
      named PROVOKED Lnet/minecraft/entity/mob/EndermanEntity;PROVOKED:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_20618 Lnet/minecraft/class_1560;field_20618:Lnet/minecraft/class_2940;
      official cb Lcjv;cb:Lakk;
    • ANGER_TIME_RANGE

      private static final UniformIntProvider ANGER_TIME_RANGE
      Mappings:
      Namespace Name Mixin selector
      named ANGER_TIME_RANGE Lnet/minecraft/entity/mob/EndermanEntity;ANGER_TIME_RANGE:Lnet/minecraft/util/math/intprovider/UniformIntProvider;
      intermediary field_25378 Lnet/minecraft/class_1560;field_25378:Lnet/minecraft/class_6019;
      official ce Lcjv;ce:Lbqh;
    • lastAngrySoundAge

      private int lastAngrySoundAge
      Mappings:
      Namespace Name Mixin selector
      named lastAngrySoundAge Lnet/minecraft/entity/mob/EndermanEntity;lastAngrySoundAge:I
      intermediary field_7253 Lnet/minecraft/class_1560;field_7253:I
      official cc Lcjv;cc:I
    • ageWhenTargetSet

      private int ageWhenTargetSet
      Mappings:
      Namespace Name Mixin selector
      named ageWhenTargetSet Lnet/minecraft/entity/mob/EndermanEntity;ageWhenTargetSet:I
      intermediary field_7254 Lnet/minecraft/class_1560;field_7254:I
      official cd Lcjv;cd:I
    • angerTime

      private int angerTime
      Mappings:
      Namespace Name Mixin selector
      named angerTime Lnet/minecraft/entity/mob/EndermanEntity;angerTime:I
      intermediary field_25376 Lnet/minecraft/class_1560;field_25376:I
      official cf Lcjv;cf:I
    • angryAt

      @Nullable private @Nullable UUID angryAt
      Mappings:
      Namespace Name Mixin selector
      named angryAt Lnet/minecraft/entity/mob/EndermanEntity;angryAt:Ljava/util/UUID;
      intermediary field_25377 Lnet/minecraft/class_1560;field_25377:Ljava/util/UUID;
      official cg Lcjv;cg:Ljava/util/UUID;
  • Constructor Details

    • EndermanEntity

      public EndermanEntity(EntityType<? extends EndermanEntity> 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> Lbsw;<init>(Lbtc;Ldca;)V
  • Method Details

    • initGoals

      protected void initGoals()
      Overrides:
      initGoals in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named initGoals Lnet/minecraft/entity/mob/MobEntity;initGoals()V
      intermediary method_5959 Lnet/minecraft/class_1308;method_5959()V
      official z Lbtt;z()V
    • createEndermanAttributes

      public static DefaultAttributeContainer.Builder createEndermanAttributes()
      Mappings:
      Namespace Name Mixin selector
      named createEndermanAttributes Lnet/minecraft/entity/mob/EndermanEntity;createEndermanAttributes()Lnet/minecraft/entity/attribute/DefaultAttributeContainer$Builder;
      intermediary method_26910 Lnet/minecraft/class_1560;method_26910()Lnet/minecraft/class_5132$class_5133;
      official s Lcjv;s()Lbuy$a;
    • setTarget

      public void setTarget(@Nullable @Nullable LivingEntity target)
      Specified by:
      setTarget in interface Angerable
      Overrides:
      setTarget in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named setTarget Lnet/minecraft/entity/mob/MobEntity;setTarget(Lnet/minecraft/entity/LivingEntity;)V
      intermediary method_5980 Lnet/minecraft/class_1308;method_5980(Lnet/minecraft/class_1309;)V
      official h Lbtt;h(Lbtr;)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 Lbsw;a(Lako$a;)V
    • chooseRandomAngerTime

      public void chooseRandomAngerTime()
      Specified by:
      chooseRandomAngerTime in interface Angerable
      Mappings:
      Namespace Name Mixin selector
      named chooseRandomAngerTime Lnet/minecraft/entity/mob/Angerable;chooseRandomAngerTime()V
      intermediary method_29509 Lnet/minecraft/class_5354;method_29509()V
      official c Lbtx;c()V
    • setAngerTime

      public void setAngerTime(int angerTime)
      Specified by:
      setAngerTime in interface Angerable
      Mappings:
      Namespace Name Mixin selector
      named setAngerTime Lnet/minecraft/entity/mob/Angerable;setAngerTime(I)V
      intermediary method_29514 Lnet/minecraft/class_5354;method_29514(I)V
      official a Lbtx;a(I)V
    • getAngerTime

      public int getAngerTime()
      Specified by:
      getAngerTime in interface Angerable
      Mappings:
      Namespace Name Mixin selector
      named getAngerTime Lnet/minecraft/entity/mob/Angerable;getAngerTime()I
      intermediary method_29507 Lnet/minecraft/class_5354;method_29507()I
      official a Lbtx;a()I
    • setAngryAt

      public void setAngryAt(@Nullable @Nullable UUID angryAt)
      Specified by:
      setAngryAt in interface Angerable
      Mappings:
      Namespace Name Mixin selector
      named setAngryAt Lnet/minecraft/entity/mob/Angerable;setAngryAt(Ljava/util/UUID;)V
      intermediary method_29513 Lnet/minecraft/class_5354;method_29513(Ljava/util/UUID;)V
      official a Lbtx;a(Ljava/util/UUID;)V
    • getAngryAt

      @Nullable public @Nullable UUID getAngryAt()
      Specified by:
      getAngryAt in interface Angerable
      Mappings:
      Namespace Name Mixin selector
      named getAngryAt Lnet/minecraft/entity/mob/Angerable;getAngryAt()Ljava/util/UUID;
      intermediary method_29508 Lnet/minecraft/class_5354;method_29508()Ljava/util/UUID;
      official b Lbtx;b()Ljava/util/UUID;
    • playAngrySound

      public void playAngrySound()
      Mappings:
      Namespace Name Mixin selector
      named playAngrySound Lnet/minecraft/entity/mob/EndermanEntity;playAngrySound()V
      intermediary method_7030 Lnet/minecraft/class_1560;method_7030()V
      official u Lcjv;u()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 Lakn;a(Lakk;)V
    • 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 Lbsw;b(Lus;)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 Lbsw;a(Lus;)V
    • isPlayerStaring

      boolean isPlayerStaring(PlayerEntity player)
      Mappings:
      Namespace Name Mixin selector
      named isPlayerStaring Lnet/minecraft/entity/mob/EndermanEntity;isPlayerStaring(Lnet/minecraft/entity/player/PlayerEntity;)Z
      intermediary method_7026 Lnet/minecraft/class_1560;method_7026(Lnet/minecraft/class_1657;)Z
      official g Lcjv;g(Lcmz;)Z
    • tickMovement

      public void tickMovement()
      Overrides:
      tickMovement in class HostileEntity
      Mappings:
      Namespace Name Mixin selector
      named tickMovement Lnet/minecraft/entity/LivingEntity;tickMovement()V
      intermediary method_6007 Lnet/minecraft/class_1309;method_6007()V
      official n_ Lbtr;n_()V
    • hurtByWater

      public boolean hurtByWater()
      Overrides:
      hurtByWater in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named hurtByWater Lnet/minecraft/entity/LivingEntity;hurtByWater()Z
      intermediary method_29503 Lnet/minecraft/class_1309;method_29503()Z
      official fp Lbtr;fp()Z
    • mobTick

      protected void mobTick()
      Overrides:
      mobTick in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named mobTick Lnet/minecraft/entity/mob/MobEntity;mobTick()V
      intermediary method_5958 Lnet/minecraft/class_1308;method_5958()V
      official Z Lbtt;Z()V
    • teleportRandomly

      protected boolean teleportRandomly()
      Mappings:
      Namespace Name Mixin selector
      named teleportRandomly Lnet/minecraft/entity/mob/EndermanEntity;teleportRandomly()Z
      intermediary method_7029 Lnet/minecraft/class_1560;method_7029()Z
      official y Lcjv;y()Z
    • teleportTo

      boolean teleportTo(Entity entity)
      Mappings:
      Namespace Name Mixin selector
      named teleportTo Lnet/minecraft/entity/mob/EndermanEntity;teleportTo(Lnet/minecraft/entity/Entity;)Z
      intermediary method_7025 Lnet/minecraft/class_1560;method_7025(Lnet/minecraft/class_1297;)Z
      official b Lcjv;b(Lbsw;)Z
    • teleportTo

      private boolean teleportTo(double x, double y, double z)
      Mappings:
      Namespace Name Mixin selector
      named teleportTo Lnet/minecraft/entity/mob/EndermanEntity;teleportTo(DDD)Z
      intermediary method_7024 Lnet/minecraft/class_1560;method_7024(DDD)Z
      official r Lcjv;r(DDD)Z
    • 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 Lbtt;v()Lavz;
    • getHurtSound

      protected SoundEvent getHurtSound(DamageSource source)
      Overrides:
      getHurtSound in class HostileEntity
      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 Lbtr;d(Lbrp;)Lavz;
    • getDeathSound

      protected SoundEvent getDeathSound()
      Overrides:
      getDeathSound in class HostileEntity
      Mappings:
      Namespace Name Mixin selector
      named getDeathSound Lnet/minecraft/entity/LivingEntity;getDeathSound()Lnet/minecraft/sound/SoundEvent;
      intermediary method_6002 Lnet/minecraft/class_1309;method_6002()Lnet/minecraft/class_3414;
      official o_ Lbtr;o_()Lavz;
    • dropEquipment

      protected void dropEquipment(DamageSource source, int lootingMultiplier, boolean allowDrops)
      Overrides:
      dropEquipment in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named dropEquipment Lnet/minecraft/entity/LivingEntity;dropEquipment(Lnet/minecraft/entity/damage/DamageSource;IZ)V
      intermediary method_6099 Lnet/minecraft/class_1309;method_6099(Lnet/minecraft/class_1282;IZ)V
      official a Lbtr;a(Lbrp;IZ)V
    • setCarriedBlock

      public void setCarriedBlock(@Nullable @Nullable BlockState state)
      Mappings:
      Namespace Name Mixin selector
      named setCarriedBlock Lnet/minecraft/entity/mob/EndermanEntity;setCarriedBlock(Lnet/minecraft/block/BlockState;)V
      intermediary method_7032 Lnet/minecraft/class_1560;method_7032(Lnet/minecraft/class_2680;)V
      official d Lcjv;d(Ldse;)V
    • getCarriedBlock

      @Nullable public @Nullable BlockState getCarriedBlock()
      Mappings:
      Namespace Name Mixin selector
      named getCarriedBlock Lnet/minecraft/entity/mob/EndermanEntity;getCarriedBlock()Lnet/minecraft/block/BlockState;
      intermediary method_7027 Lnet/minecraft/class_1560;method_7027()Lnet/minecraft/class_2680;
      official gq Lcjv;gq()Ldse;
    • 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 Entity.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 Lbsw;a(Lbrp;F)Z
    • damageFromPotion

      private boolean damageFromPotion(DamageSource source, PotionEntity potion, float amount)
      Mappings:
      Namespace Name Mixin selector
      named damageFromPotion Lnet/minecraft/entity/mob/EndermanEntity;damageFromPotion(Lnet/minecraft/entity/damage/DamageSource;Lnet/minecraft/entity/projectile/thrown/PotionEntity;F)Z
      intermediary method_38068 Lnet/minecraft/class_1560;method_38068(Lnet/minecraft/class_1282;Lnet/minecraft/class_1686;F)Z
      official a Lcjv;a(Lbrp;Lcod;F)Z
    • isAngry

      public boolean isAngry()
      Mappings:
      Namespace Name Mixin selector
      named isAngry Lnet/minecraft/entity/mob/EndermanEntity;isAngry()Z
      intermediary method_7028 Lnet/minecraft/class_1560;method_7028()Z
      official gr Lcjv;gr()Z
    • isProvoked

      public boolean isProvoked()
      Mappings:
      Namespace Name Mixin selector
      named isProvoked Lnet/minecraft/entity/mob/EndermanEntity;isProvoked()Z
      intermediary method_22330 Lnet/minecraft/class_1560;method_22330()Z
      official gs Lcjv;gs()Z
    • setProvoked

      public void setProvoked()
      Mappings:
      Namespace Name Mixin selector
      named setProvoked Lnet/minecraft/entity/mob/EndermanEntity;setProvoked()V
      intermediary method_22331 Lnet/minecraft/class_1560;method_22331()V
      official gt Lcjv;gt()V
    • cannotDespawn

      public boolean cannotDespawn()
      Overrides:
      cannotDespawn in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named cannotDespawn Lnet/minecraft/entity/mob/MobEntity;cannotDespawn()Z
      intermediary method_17326 Lnet/minecraft/class_1308;method_17326()Z
      official W Lbtt;W()Z