Class IronGolemEntity

All Implemented Interfaces:
Attackable, Angerable, Targeter, CommandOutput, Nameable, EntityLike

public class IronGolemEntity extends GolemEntity implements Angerable
Mappings:
Namespace Name
official brv
intermediary net/minecraft/class_1439
named net/minecraft/entity/passive/IronGolemEntity
  • Field Details

    • IRON_GOLEM_FLAGS

      protected static final TrackedData<Byte> IRON_GOLEM_FLAGS
      The tracked flags of iron golems. Only has the 1 bit for whether a golem is created by a player.
      Mappings:
      Namespace Name Mixin selector
      official c Lbrv;c:Laby;
      intermediary field_6763 Lnet/minecraft/class_1439;field_6763:Lnet/minecraft/class_2940;
      named IRON_GOLEM_FLAGS Lnet/minecraft/entity/passive/IronGolemEntity;IRON_GOLEM_FLAGS:Lnet/minecraft/entity/data/TrackedData;
    • HEALTH_PER_INGOT

      private static final int HEALTH_PER_INGOT
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official d Lbrv;d:I
      intermediary field_30338 Lnet/minecraft/class_1439;field_30338:I
      named HEALTH_PER_INGOT Lnet/minecraft/entity/passive/IronGolemEntity;HEALTH_PER_INGOT:I
    • ANGER_TIME_RANGE

      private static final UniformIntProvider ANGER_TIME_RANGE
      Mappings:
      Namespace Name Mixin selector
      official bU Lbrv;bU:Lbdh;
      intermediary field_25365 Lnet/minecraft/class_1439;field_25365:Lnet/minecraft/class_6019;
      named ANGER_TIME_RANGE Lnet/minecraft/entity/passive/IronGolemEntity;ANGER_TIME_RANGE:Lnet/minecraft/util/math/intprovider/UniformIntProvider;
    • attackTicksLeft

      private int attackTicksLeft
      Mappings:
      Namespace Name Mixin selector
      official e Lbrv;e:I
      intermediary field_6762 Lnet/minecraft/class_1439;field_6762:I
      named attackTicksLeft Lnet/minecraft/entity/passive/IronGolemEntity;attackTicksLeft:I
    • lookingAtVillagerTicksLeft

      private int lookingAtVillagerTicksLeft
      Mappings:
      Namespace Name Mixin selector
      official bT Lbrv;bT:I
      intermediary field_6759 Lnet/minecraft/class_1439;field_6759:I
      named lookingAtVillagerTicksLeft Lnet/minecraft/entity/passive/IronGolemEntity;lookingAtVillagerTicksLeft:I
    • angerTime

      private int angerTime
      Mappings:
      Namespace Name Mixin selector
      official bV Lbrv;bV:I
      intermediary field_25366 Lnet/minecraft/class_1439;field_25366:I
      named angerTime Lnet/minecraft/entity/passive/IronGolemEntity;angerTime:I
    • angryAt

      @Nullable private @Nullable UUID angryAt
      Mappings:
      Namespace Name Mixin selector
      official bW Lbrv;bW:Ljava/util/UUID;
      intermediary field_25367 Lnet/minecraft/class_1439;field_25367:Ljava/util/UUID;
      named angryAt Lnet/minecraft/entity/passive/IronGolemEntity;angryAt:Ljava/util/UUID;
  • Constructor Details

    • IronGolemEntity

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

    • initGoals

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

      protected void initDataTracker()
      Initializes data tracker.
      Overrides:
      initDataTracker in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      official a_ Lbfh;a_()V
      intermediary method_5693 Lnet/minecraft/class_1297;method_5693()V
      named initDataTracker Lnet/minecraft/entity/Entity;initDataTracker()V
    • createIronGolemAttributes

      public static DefaultAttributeContainer.Builder createIronGolemAttributes()
      Mappings:
      Namespace Name Mixin selector
      official p Lbrv;p()Lbhd$a;
      intermediary method_26886 Lnet/minecraft/class_1439;method_26886()Lnet/minecraft/class_5132$class_5133;
      named createIronGolemAttributes Lnet/minecraft/entity/passive/IronGolemEntity;createIronGolemAttributes()Lnet/minecraft/entity/attribute/DefaultAttributeContainer$Builder;
    • getNextAirUnderwater

      protected int getNextAirUnderwater(int air)
      Overrides:
      getNextAirUnderwater in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      official m Lbfx;m(I)I
      intermediary method_6130 Lnet/minecraft/class_1309;method_6130(I)I
      named getNextAirUnderwater Lnet/minecraft/entity/LivingEntity;getNextAirUnderwater(I)I
    • pushAway

      protected void pushAway(Entity entity)
      Overrides:
      pushAway in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      official A Lbfx;A(Lbfh;)V
      intermediary method_6087 Lnet/minecraft/class_1309;method_6087(Lnet/minecraft/class_1297;)V
      named pushAway Lnet/minecraft/entity/LivingEntity;pushAway(Lnet/minecraft/entity/Entity;)V
    • tickMovement

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

      public boolean canTarget(EntityType<?> type)
      Overrides:
      canTarget in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      official a Lbfx;a(Lbfl;)Z
      intermediary method_5973 Lnet/minecraft/class_1309;method_5973(Lnet/minecraft/class_1299;)Z
      named canTarget Lnet/minecraft/entity/LivingEntity;canTarget(Lnet/minecraft/entity/EntityType;)Z
    • writeCustomDataToNbt

      public void writeCustomDataToNbt(NbtCompound nbt)
      Writes custom data to nbt. Subclasses has 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
      official b Lbfh;b(Lqr;)V
      intermediary method_5652 Lnet/minecraft/class_1297;method_5652(Lnet/minecraft/class_2487;)V
      named writeCustomDataToNbt Lnet/minecraft/entity/Entity;writeCustomDataToNbt(Lnet/minecraft/nbt/NbtCompound;)V
    • readCustomDataFromNbt

      public void readCustomDataFromNbt(NbtCompound nbt)
      Reads custom data from nbt. Subclasses has 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
      official a Lbfh;a(Lqr;)V
      intermediary method_5749 Lnet/minecraft/class_1297;method_5749(Lnet/minecraft/class_2487;)V
      named readCustomDataFromNbt Lnet/minecraft/entity/Entity;readCustomDataFromNbt(Lnet/minecraft/nbt/NbtCompound;)V
    • chooseRandomAngerTime

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

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

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

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

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

      private float getAttackDamage()
      Mappings:
      Namespace Name Mixin selector
      official fZ Lbrv;fZ()F
      intermediary method_22328 Lnet/minecraft/class_1439;method_22328()F
      named getAttackDamage Lnet/minecraft/entity/passive/IronGolemEntity;getAttackDamage()F
    • tryAttack

      public boolean tryAttack(Entity target)
      Overrides:
      tryAttack in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      official z Lbfx;z(Lbfh;)Z
      intermediary method_6121 Lnet/minecraft/class_1309;method_6121(Lnet/minecraft/class_1297;)Z
      named tryAttack Lnet/minecraft/entity/LivingEntity;tryAttack(Lnet/minecraft/entity/Entity;)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 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
      official a Lbfh;a(Lbem;F)Z
      intermediary method_5643 Lnet/minecraft/class_1297;method_5643(Lnet/minecraft/class_1282;F)Z
      named damage Lnet/minecraft/entity/Entity;damage(Lnet/minecraft/entity/damage/DamageSource;F)Z
    • getCrack

      public IronGolemEntity.Crack getCrack()
      Mappings:
      Namespace Name Mixin selector
      official q Lbrv;q()Lbrv$a;
      intermediary method_23347 Lnet/minecraft/class_1439;method_23347()Lnet/minecraft/class_1439$class_4621;
      named getCrack Lnet/minecraft/entity/passive/IronGolemEntity;getCrack()Lnet/minecraft/entity/passive/IronGolemEntity$Crack;
    • handleStatus

      public void handleStatus(byte status)
      Called on the client when the entity receives an entity status from the server. They are often used to spawn particles or play sounds. Subclasses can override this method to handle custom entity status.
      Overrides:
      handleStatus in class MobEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official b Lbfh;b(B)V
      intermediary method_5711 Lnet/minecraft/class_1297;method_5711(B)V
      named handleStatus Lnet/minecraft/entity/Entity;handleStatus(B)V
    • getAttackTicksLeft

      public int getAttackTicksLeft()
      Mappings:
      Namespace Name Mixin selector
      official t Lbrv;t()I
      intermediary method_6501 Lnet/minecraft/class_1439;method_6501()I
      named getAttackTicksLeft Lnet/minecraft/entity/passive/IronGolemEntity;getAttackTicksLeft()I
    • setLookingAtVillager

      public void setLookingAtVillager(boolean lookingAtVillager)
      Mappings:
      Namespace Name Mixin selector
      official x Lbrv;x(Z)V
      intermediary method_6497 Lnet/minecraft/class_1439;method_6497(Z)V
      named setLookingAtVillager Lnet/minecraft/entity/passive/IronGolemEntity;setLookingAtVillager(Z)V
    • getHurtSound

      protected SoundEvent getHurtSound(DamageSource source)
      Overrides:
      getHurtSound in class GolemEntity
      Mappings:
      Namespace Name Mixin selector
      official d Lbfx;d(Lbem;)Lamg;
      intermediary method_6011 Lnet/minecraft/class_1309;method_6011(Lnet/minecraft/class_1282;)Lnet/minecraft/class_3414;
      named getHurtSound Lnet/minecraft/entity/LivingEntity;getHurtSound(Lnet/minecraft/entity/damage/DamageSource;)Lnet/minecraft/sound/SoundEvent;
    • getDeathSound

      protected SoundEvent getDeathSound()
      Overrides:
      getDeathSound in class GolemEntity
      Mappings:
      Namespace Name Mixin selector
      official g_ Lbfx;g_()Lamg;
      intermediary method_6002 Lnet/minecraft/class_1309;method_6002()Lnet/minecraft/class_3414;
      named getDeathSound Lnet/minecraft/entity/LivingEntity;getDeathSound()Lnet/minecraft/sound/SoundEvent;
    • interactMob

      protected ActionResult interactMob(PlayerEntity player, Hand hand)
      Overrides:
      interactMob in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      official b Lbfz;b(Lbym;Lbdv;)Lbdw;
      intermediary method_5992 Lnet/minecraft/class_1308;method_5992(Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269;
      named interactMob Lnet/minecraft/entity/mob/MobEntity;interactMob(Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/Hand;)Lnet/minecraft/util/ActionResult;
    • playStepSound

      protected void playStepSound(BlockPos pos, BlockState state)
      Overrides:
      playStepSound in class Entity
      Mappings:
      Namespace Name Mixin selector
      official b Lbfh;b(Lgu;Ldby;)V
      intermediary method_5712 Lnet/minecraft/class_1297;method_5712(Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V
      named playStepSound Lnet/minecraft/entity/Entity;playStepSound(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)V
    • getLookingAtVillagerTicks

      public int getLookingAtVillagerTicks()
      Mappings:
      Namespace Name Mixin selector
      official fX Lbrv;fX()I
      intermediary method_6502 Lnet/minecraft/class_1439;method_6502()I
      named getLookingAtVillagerTicks Lnet/minecraft/entity/passive/IronGolemEntity;getLookingAtVillagerTicks()I
    • isPlayerCreated

      public boolean isPlayerCreated()
      Mappings:
      Namespace Name Mixin selector
      official fY Lbrv;fY()Z
      intermediary method_6496 Lnet/minecraft/class_1439;method_6496()Z
      named isPlayerCreated Lnet/minecraft/entity/passive/IronGolemEntity;isPlayerCreated()Z
    • setPlayerCreated

      public void setPlayerCreated(boolean playerCreated)
      Mappings:
      Namespace Name Mixin selector
      official y Lbrv;y(Z)V
      intermediary method_6499 Lnet/minecraft/class_1439;method_6499(Z)V
      named setPlayerCreated Lnet/minecraft/entity/passive/IronGolemEntity;setPlayerCreated(Z)V
    • onDeath

      public void onDeath(DamageSource damageSource)
      Overrides:
      onDeath in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      official a Lbfx;a(Lbem;)V
      intermediary method_6078 Lnet/minecraft/class_1309;method_6078(Lnet/minecraft/class_1282;)V
      named onDeath Lnet/minecraft/entity/LivingEntity;onDeath(Lnet/minecraft/entity/damage/DamageSource;)V
    • canSpawn

      public boolean canSpawn(WorldView world)
      Overrides:
      canSpawn in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      official a Lbfz;a(Lcmn;)Z
      intermediary method_5957 Lnet/minecraft/class_1308;method_5957(Lnet/minecraft/class_4538;)Z
      named canSpawn Lnet/minecraft/entity/mob/MobEntity;canSpawn(Lnet/minecraft/world/WorldView;)Z
    • getLeashOffset

      public Vec3d getLeashOffset()
      Returns the offset from the entity's position where the leash is attached to.

      This is different from Entity.getLeashPos(float); this method is called on the entity which a leash is attached to.

      Overrides:
      getLeashOffset in class Entity
      Returns:
      the offset from the entity's position where the leash is attached to
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official cG Lbfh;cG()Leea;
      intermediary method_29919 Lnet/minecraft/class_1297;method_29919()Lnet/minecraft/class_243;
      named getLeashOffset Lnet/minecraft/entity/Entity;getLeashOffset()Lnet/minecraft/util/math/Vec3d;