Class IronGolemEntity

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

public class IronGolemEntity extends GolemEntity implements Angerable
Mappings:
Namespace Name
named net/minecraft/entity/passive/IronGolemEntity
intermediary net/minecraft/class_1439
official cii
  • 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
      named IRON_GOLEM_FLAGS Lnet/minecraft/entity/passive/IronGolemEntity;IRON_GOLEM_FLAGS:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_6763 Lnet/minecraft/class_1439;field_6763:Lnet/minecraft/class_2940;
      official c Lcii;c:Lalc;
    • HEALTH_PER_INGOT

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

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

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

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

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

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

    • IronGolemEntity

      public IronGolemEntity(EntityType<? extends IronGolemEntity> 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> Lbvj;<init>(Lbvq;Ldhh;)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 B Lbwh;B()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 Lbvj;a(Lalg$a;)V
    • createIronGolemAttributes

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

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

      protected void pushAway(Entity entity)
      Overrides:
      pushAway in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named pushAway Lnet/minecraft/entity/LivingEntity;pushAway(Lnet/minecraft/entity/Entity;)V
      intermediary method_6087 Lnet/minecraft/class_1309;method_6087(Lnet/minecraft/class_1297;)V
      official D Lbwf;D(Lbvj;)V
    • 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 d_ Lbwf;d_()V
    • shouldSpawnSprintingParticles

      public boolean shouldSpawnSprintingParticles()
      Overrides:
      shouldSpawnSprintingParticles in class Entity
      Mappings:
      Namespace Name Mixin selector
      named shouldSpawnSprintingParticles Lnet/minecraft/entity/Entity;shouldSpawnSprintingParticles()Z
      intermediary method_27298 Lnet/minecraft/class_1297;method_27298()Z
      official bv Lbvj;bv()Z
    • canTarget

      public boolean canTarget(EntityType<?> type)
      Overrides:
      canTarget in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named canTarget Lnet/minecraft/entity/LivingEntity;canTarget(Lnet/minecraft/entity/EntityType;)Z
      intermediary method_5973 Lnet/minecraft/class_1309;method_5973(Lnet/minecraft/class_1299;)Z
      official a Lbwf;a(Lbvq;)Z
    • 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 Lbvj;b(Lux;)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 Lbvj;a(Lux;)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 Lbwk;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 Lbwk;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 Lbwk;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 Lbwk;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 Lbwk;b()Ljava/util/UUID;
    • getAttackDamage

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

      public boolean tryAttack(ServerWorld world, Entity target)
      Overrides:
      tryAttack in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named tryAttack Lnet/minecraft/entity/LivingEntity;tryAttack(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/entity/Entity;)Z
      intermediary method_6121 Lnet/minecraft/class_1309;method_6121(Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)Z
      official c Lbwf;c(Lash;Lbvj;)Z
    • damage

      public boolean damage(ServerWorld world, 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 LivingEntity.isInvulnerableTo(net.minecraft.server.world.ServerWorld, 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/server/world/ServerWorld;Lnet/minecraft/entity/damage/DamageSource;F)Z
      intermediary method_64397 Lnet/minecraft/class_1297;method_64397(Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;F)Z
      official a Lbvj;a(Lash;Lbtz;F)Z
    • getCrackLevel

      public Cracks.CrackLevel getCrackLevel()
      Mappings:
      Namespace Name Mixin selector
      named getCrackLevel Lnet/minecraft/entity/passive/IronGolemEntity;getCrackLevel()Lnet/minecraft/entity/passive/Cracks$CrackLevel;
      intermediary method_23347 Lnet/minecraft/class_1439;method_23347()Lnet/minecraft/class_9273$class_4621;
      official p Lcii;p()Lbvg$a;
    • 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:
      API Note:
      To send an entity status, use World.sendEntityStatus(net.minecraft.entity.Entity, byte).
      Mappings:
      Namespace Name Mixin selector
      named handleStatus Lnet/minecraft/entity/Entity;handleStatus(B)V
      intermediary method_5711 Lnet/minecraft/class_1297;method_5711(B)V
      official b Lbvj;b(B)V
    • getAttackTicksLeft

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

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

      protected SoundEvent getHurtSound(DamageSource source)
      Overrides:
      getHurtSound in class GolemEntity
      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 e Lbwf;e(Lbtz;)Laxe;
    • getDeathSound

      protected SoundEvent getDeathSound()
      Overrides:
      getDeathSound in class GolemEntity
      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_ Lbwf;o_()Laxe;
    • interactMob

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

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

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

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

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

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

      public boolean canSpawn(WorldView world)
      Overrides:
      canSpawn in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named canSpawn Lnet/minecraft/entity/mob/MobEntity;canSpawn(Lnet/minecraft/world/WorldView;)Z
      intermediary method_5957 Lnet/minecraft/class_1308;method_5957(Lnet/minecraft/class_4538;)Z
      official a Lbwh;a(Ldhk;)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
      named getLeashOffset Lnet/minecraft/entity/Entity;getLeashOffset()Lnet/minecraft/util/math/Vec3d;
      intermediary method_29919 Lnet/minecraft/class_1297;method_29919()Lnet/minecraft/class_243;
      official cT Lbvj;cT()Lfbx;