Class ShulkerEntity

All Implemented Interfaces:
Attackable, DataTracked, EquipmentHolder, Monster, Targeter, VariantHolder<Optional<DyeColor>>, ScoreHolder, CommandOutput, Nameable, EntityLike

public class ShulkerEntity extends GolemEntity implements VariantHolder<Optional<DyeColor>>, Monster
Mappings:
Namespace Name
named net/minecraft/entity/mob/ShulkerEntity
intermediary net/minecraft/class_1606
official ckl
  • Field Details

    • COVERED_ARMOR_BONUS_ID

      private static final UUID COVERED_ARMOR_BONUS_ID
      Mappings:
      Namespace Name Mixin selector
      named COVERED_ARMOR_BONUS_ID Lnet/minecraft/entity/mob/ShulkerEntity;COVERED_ARMOR_BONUS_ID:Ljava/util/UUID;
      intermediary field_7341 Lnet/minecraft/class_1606;field_7341:Ljava/util/UUID;
      official e Lckl;e:Ljava/util/UUID;
    • COVERED_ARMOR_BONUS

      private static final EntityAttributeModifier COVERED_ARMOR_BONUS
      Mappings:
      Namespace Name Mixin selector
      named COVERED_ARMOR_BONUS Lnet/minecraft/entity/mob/ShulkerEntity;COVERED_ARMOR_BONUS:Lnet/minecraft/entity/attribute/EntityAttributeModifier;
      intermediary field_7342 Lnet/minecraft/class_1606;field_7342:Lnet/minecraft/class_1322;
      official bY Lckl;bY:Lbux;
    • ATTACHED_FACE

      protected static final TrackedData<Direction> ATTACHED_FACE
      Mappings:
      Namespace Name Mixin selector
      named ATTACHED_FACE Lnet/minecraft/entity/mob/ShulkerEntity;ATTACHED_FACE:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_7344 Lnet/minecraft/class_1606;field_7344:Lnet/minecraft/class_2940;
      official b Lckl;b:Lakk;
    • PEEK_AMOUNT

      protected static final TrackedData<Byte> PEEK_AMOUNT
      Mappings:
      Namespace Name Mixin selector
      named PEEK_AMOUNT Lnet/minecraft/entity/mob/ShulkerEntity;PEEK_AMOUNT:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_7346 Lnet/minecraft/class_1606;field_7346:Lnet/minecraft/class_2940;
      official c Lckl;c:Lakk;
    • COLOR

      protected static final TrackedData<Byte> COLOR
      Mappings:
      Namespace Name Mixin selector
      named COLOR Lnet/minecraft/entity/mob/ShulkerEntity;COLOR:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_7343 Lnet/minecraft/class_1606;field_7343:Lnet/minecraft/class_2940;
      official d Lckl;d:Lakk;
    • field_30487

      private static final int field_30487
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30487 Lnet/minecraft/entity/mob/ShulkerEntity;field_30487:I
      intermediary field_30487 Lnet/minecraft/class_1606;field_30487:I
      official bZ Lckl;bZ:I
    • field_30488

      private static final byte field_30488
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30488 Lnet/minecraft/entity/mob/ShulkerEntity;field_30488:B
      intermediary field_30488 Lnet/minecraft/class_1606;field_30488:B
      official ca Lckl;ca:B
    • field_30489

      private static final byte field_30489
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30489 Lnet/minecraft/entity/mob/ShulkerEntity;field_30489:B
      intermediary field_30489 Lnet/minecraft/class_1606;field_30489:B
      official cb Lckl;cb:B
    • field_30490

      private static final int field_30490
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30490 Lnet/minecraft/entity/mob/ShulkerEntity;field_30490:I
      intermediary field_30490 Lnet/minecraft/class_1606;field_30490:I
      official cc Lckl;cc:I
    • field_30491

      private static final int field_30491
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30491 Lnet/minecraft/entity/mob/ShulkerEntity;field_30491:I
      intermediary field_30491 Lnet/minecraft/class_1606;field_30491:I
      official cd Lckl;cd:I
    • field_30492

      private static final int field_30492
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30492 Lnet/minecraft/entity/mob/ShulkerEntity;field_30492:I
      intermediary field_30492 Lnet/minecraft/class_1606;field_30492:I
      official ce Lckl;ce:I
    • field_30493

      private static final float field_30493
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30493 Lnet/minecraft/entity/mob/ShulkerEntity;field_30493:F
      intermediary field_30493 Lnet/minecraft/class_1606;field_30493:F
      official cf Lckl;cf:F
    • SOUTH_VECTOR

      static final Vector3f SOUTH_VECTOR
      Mappings:
      Namespace Name Mixin selector
      named SOUTH_VECTOR Lnet/minecraft/entity/mob/ShulkerEntity;SOUTH_VECTOR:Lorg/joml/Vector3f;
      intermediary field_33765 Lnet/minecraft/class_1606;field_33765:Lorg/joml/Vector3f;
      official cg Lckl;cg:Lorg/joml/Vector3f;
    • field_48343

      private static final float field_48343
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_48343 Lnet/minecraft/entity/mob/ShulkerEntity;field_48343:F
      intermediary field_48343 Lnet/minecraft/class_1606;field_48343:F
      official ch Lckl;ch:F
    • field_30494

      private static final float field_30494
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30494 Lnet/minecraft/entity/mob/ShulkerEntity;field_30494:F
      intermediary field_30494 Lnet/minecraft/class_1606;field_30494:F
      official cm Lckl;cm:F
    • prevOpenProgress

      private float prevOpenProgress
      Mappings:
      Namespace Name Mixin selector
      named prevOpenProgress Lnet/minecraft/entity/mob/ShulkerEntity;prevOpenProgress:F
      intermediary field_7339 Lnet/minecraft/class_1606;field_7339:F
      official ci Lckl;ci:F
    • openProgress

      private float openProgress
      Mappings:
      Namespace Name Mixin selector
      named openProgress Lnet/minecraft/entity/mob/ShulkerEntity;openProgress:F
      intermediary field_7337 Lnet/minecraft/class_1606;field_7337:F
      official cj Lckl;cj:F
    • prevAttachedBlock

      @Nullable private @Nullable BlockPos prevAttachedBlock
      Mappings:
      Namespace Name Mixin selector
      named prevAttachedBlock Lnet/minecraft/entity/mob/ShulkerEntity;prevAttachedBlock:Lnet/minecraft/util/math/BlockPos;
      intermediary field_7345 Lnet/minecraft/class_1606;field_7345:Lnet/minecraft/class_2338;
      official ck Lckl;ck:Liz;
    • teleportLerpTimer

      private int teleportLerpTimer
      Mappings:
      Namespace Name Mixin selector
      named teleportLerpTimer Lnet/minecraft/entity/mob/ShulkerEntity;teleportLerpTimer:I
      intermediary field_7340 Lnet/minecraft/class_1606;field_7340:I
      official cl Lckl;cl:I
  • Constructor Details

    • ShulkerEntity

      public ShulkerEntity(EntityType<? extends ShulkerEntity> 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
    • getMoveEffect

      protected Entity.MoveEffect getMoveEffect()
      Returns the possible effect(s) of an entity moving.
      Overrides:
      getMoveEffect in class Entity
      Implementation Note:
      If an entity does not emit game events or play move sounds, this method should be overridden as returning a value other than ALL allows skipping some movement logic and boost ticking performance.
      Mappings:
      Namespace Name Mixin selector
      named getMoveEffect Lnet/minecraft/entity/Entity;getMoveEffect()Lnet/minecraft/entity/Entity$MoveEffect;
      intermediary method_33570 Lnet/minecraft/class_1297;method_33570()Lnet/minecraft/class_1297$class_5799;
      official bb Lbsw;bb()Lbsw$b;
    • 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 de Lbsw;de()Lawb;
    • getAmbientSound

      protected SoundEvent getAmbientSound()
      Overrides:
      getAmbientSound in class GolemEntity
      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;
    • playAmbientSound

      public void playAmbientSound()
      Overrides:
      playAmbientSound in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named playAmbientSound Lnet/minecraft/entity/mob/MobEntity;playAmbientSound()V
      intermediary method_5966 Lnet/minecraft/class_1308;method_5966()V
      official Q Lbtt;Q()V
    • 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_ Lbtr;o_()Lavz;
    • 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 d Lbtr;d(Lbrp;)Lavz;
    • 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
    • createShulkerAttributes

      public static DefaultAttributeContainer.Builder createShulkerAttributes()
      Mappings:
      Namespace Name Mixin selector
      named createShulkerAttributes Lnet/minecraft/entity/mob/ShulkerEntity;createShulkerAttributes()Lnet/minecraft/entity/attribute/DefaultAttributeContainer$Builder;
      intermediary method_26921 Lnet/minecraft/class_1606;method_26921()Lnet/minecraft/class_5132$class_5133;
      official s Lckl;s()Lbuy$a;
    • createBodyControl

      protected BodyControl createBodyControl()
      Overrides:
      createBodyControl in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named createBodyControl Lnet/minecraft/entity/mob/MobEntity;createBodyControl()Lnet/minecraft/entity/ai/control/BodyControl;
      intermediary method_5963 Lnet/minecraft/class_1308;method_5963()Lnet/minecraft/class_1330;
      official E Lbtt;E()Lbzn;
    • 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
    • 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
    • tick

      public void tick()
      Ticks this entity.
      Overrides:
      tick in class MobEntity
      See Also:
      API Note:
      This can be overridden to add additional logics. super.tick(); should be called in those cases.
      Implementation Note:
      By default, this delegates all logics to MobEntity.baseTick().
      Mappings:
      Namespace Name Mixin selector
      named tick Lnet/minecraft/entity/Entity;tick()V
      intermediary method_5773 Lnet/minecraft/class_1297;method_5773()V
      official l Lbsw;l()V
    • tryAttachOrTeleport

      private void tryAttachOrTeleport()
      Mappings:
      Namespace Name Mixin selector
      named tryAttachOrTeleport Lnet/minecraft/entity/mob/ShulkerEntity;tryAttachOrTeleport()V
      intermediary method_33348 Lnet/minecraft/class_1606;method_33348()V
      official gs Lckl;gs()V
    • calculateBoundingBox

      protected Box calculateBoundingBox()
      Overrides:
      calculateBoundingBox in class Entity
      Mappings:
      Namespace Name Mixin selector
      named calculateBoundingBox Lnet/minecraft/entity/Entity;calculateBoundingBox()Lnet/minecraft/util/math/Box;
      intermediary method_33332 Lnet/minecraft/class_1297;method_33332()Lnet/minecraft/class_238;
      official as Lbsw;as()Levo;
    • getExtraLength

      private static float getExtraLength(float openProgress)
      Mappings:
      Namespace Name Mixin selector
      named getExtraLength Lnet/minecraft/entity/mob/ShulkerEntity;getExtraLength(F)F
      intermediary method_33342 Lnet/minecraft/class_1606;method_33342(F)F
      official I Lckl;I(F)F
    • tickOpenProgress

      private boolean tickOpenProgress()
      Mappings:
      Namespace Name Mixin selector
      named tickOpenProgress Lnet/minecraft/entity/mob/ShulkerEntity;tickOpenProgress()Z
      intermediary method_33349 Lnet/minecraft/class_1606;method_33349()Z
      official gt Lckl;gt()Z
    • moveEntities

      private void moveEntities()
      Mappings:
      Namespace Name Mixin selector
      named moveEntities Lnet/minecraft/entity/mob/ShulkerEntity;moveEntities()V
      intermediary method_33350 Lnet/minecraft/class_1606;method_33350()V
      official gu Lckl;gu()V
    • calculateBoundingBox

      public static Box calculateBoundingBox(float scale, Direction facing, float extraLength)
      Mappings:
      Namespace Name Mixin selector
      named calculateBoundingBox Lnet/minecraft/entity/mob/ShulkerEntity;calculateBoundingBox(FLnet/minecraft/util/math/Direction;F)Lnet/minecraft/util/math/Box;
      intermediary method_33346 Lnet/minecraft/class_1606;method_33346(FLnet/minecraft/class_2350;F)Lnet/minecraft/class_238;
      official a Lckl;a(FLje;F)Levo;
    • calculateBoundingBox

      public static Box calculateBoundingBox(float scale, Direction facing, float prevExtraLength, float extraLength)
      Mappings:
      Namespace Name Mixin selector
      named calculateBoundingBox Lnet/minecraft/entity/mob/ShulkerEntity;calculateBoundingBox(FLnet/minecraft/util/math/Direction;FF)Lnet/minecraft/util/math/Box;
      intermediary method_33347 Lnet/minecraft/class_1606;method_33347(FLnet/minecraft/class_2350;FF)Lnet/minecraft/class_238;
      official a Lckl;a(FLje;FF)Levo;
    • startRiding

      public boolean startRiding(Entity entity, boolean force)
      Starts riding entity.

      For example, player.startRiding(horse) causes the player to ride a horse; the opposite, horse.startRiding(player), will cause the horse to ride a player.

      This fails when this entity is already riding the entity (or vice versa), or when this entity does not allow riding other entities (or vice versa) unless force is true. If this entity is already riding another entity, it will stop riding that entity first.

      Overrides:
      startRiding in class MobEntity
      Parameters:
      force - whether to bypass the entity's rideability check
      Returns:
      whether this entity successfully started riding
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named startRiding Lnet/minecraft/entity/Entity;startRiding(Lnet/minecraft/entity/Entity;Z)Z
      intermediary method_5873 Lnet/minecraft/class_1297;method_5873(Lnet/minecraft/class_1297;Z)Z
      official a Lbsw;a(Lbsw;Z)Z
    • stopRiding

      public void stopRiding()
      Stops riding the vehicle if present.

      For example, if player is riding on a horse, player.stopRiding() will dismount that player from the horse.

      Overrides:
      stopRiding in class LivingEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named stopRiding Lnet/minecraft/entity/Entity;stopRiding()V
      intermediary method_5848 Lnet/minecraft/class_1297;method_5848()V
      official ac Lbsw;ac()V
    • initialize

      @Nullable public @Nullable EntityData initialize(ServerWorldAccess world, LocalDifficulty difficulty, SpawnReason spawnReason, @Nullable @Nullable EntityData entityData)
      Overrides:
      initialize in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named initialize Lnet/minecraft/entity/mob/MobEntity;initialize(Lnet/minecraft/world/ServerWorldAccess;Lnet/minecraft/world/LocalDifficulty;Lnet/minecraft/entity/SpawnReason;Lnet/minecraft/entity/EntityData;)Lnet/minecraft/entity/EntityData;
      intermediary method_5943 Lnet/minecraft/class_1308;method_5943(Lnet/minecraft/class_5425;Lnet/minecraft/class_1266;Lnet/minecraft/class_3730;Lnet/minecraft/class_1315;)Lnet/minecraft/class_1315;
      official a Lbtt;a(Ldcp;Lbqu;Lbtv;Lbuk;)Lbuk;
    • move

      public void move(MovementType movementType, Vec3d movement)
      Overrides:
      move in class Entity
      Mappings:
      Namespace Name Mixin selector
      named move Lnet/minecraft/entity/Entity;move(Lnet/minecraft/entity/MovementType;Lnet/minecraft/util/math/Vec3d;)V
      intermediary method_5784 Lnet/minecraft/class_1297;method_5784(Lnet/minecraft/class_1313;Lnet/minecraft/class_243;)V
      official a Lbsw;a(Lbtw;Levt;)V
    • getVelocity

      public Vec3d getVelocity()
      Overrides:
      getVelocity in class Entity
      Mappings:
      Namespace Name Mixin selector
      named getVelocity Lnet/minecraft/entity/Entity;getVelocity()Lnet/minecraft/util/math/Vec3d;
      intermediary method_18798 Lnet/minecraft/class_1297;method_18798()Lnet/minecraft/class_243;
      official ds Lbsw;ds()Levt;
    • setVelocity

      public void setVelocity(Vec3d velocity)
      Overrides:
      setVelocity in class Entity
      Mappings:
      Namespace Name Mixin selector
      named setVelocity Lnet/minecraft/entity/Entity;setVelocity(Lnet/minecraft/util/math/Vec3d;)V
      intermediary method_18799 Lnet/minecraft/class_1297;method_18799(Lnet/minecraft/class_243;)V
      official h Lbsw;h(Levt;)V
    • setPosition

      public void setPosition(double x, double y, double z)
      Sets the position and refreshes the bounding box.

      This should be called after creating an instance of non-living entities. For living entities, Entity.refreshPositionAndAngles(net.minecraft.util.math.BlockPos, float, float) should be used instead.

      Overrides:
      setPosition in class Entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named setPosition Lnet/minecraft/entity/Entity;setPosition(DDD)V
      intermediary method_5814 Lnet/minecraft/class_1297;method_5814(DDD)V
      official a_ Lbsw;a_(DDD)V
    • findAttachSide

      @Nullable protected @Nullable Direction findAttachSide(BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      named findAttachSide Lnet/minecraft/entity/mob/ShulkerEntity;findAttachSide(Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/util/math/Direction;
      intermediary method_24351 Lnet/minecraft/class_1606;method_24351(Lnet/minecraft/class_2338;)Lnet/minecraft/class_2350;
      official i Lckl;i(Liz;)Lje;
    • canStay

      boolean canStay(BlockPos pos, Direction direction)
      Mappings:
      Namespace Name Mixin selector
      named canStay Lnet/minecraft/entity/mob/ShulkerEntity;canStay(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;)Z
      intermediary method_24350 Lnet/minecraft/class_1606;method_24350(Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z
      official a Lckl;a(Liz;Lje;)Z
    • isInvalidPosition

      private boolean isInvalidPosition(BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      named isInvalidPosition Lnet/minecraft/entity/mob/ShulkerEntity;isInvalidPosition(Lnet/minecraft/util/math/BlockPos;)Z
      intermediary method_33351 Lnet/minecraft/class_1606;method_33351(Lnet/minecraft/class_2338;)Z
      official j Lckl;j(Liz;)Z
    • tryTeleport

      protected boolean tryTeleport()
      Mappings:
      Namespace Name Mixin selector
      named tryTeleport Lnet/minecraft/entity/mob/ShulkerEntity;tryTeleport()Z
      intermediary method_7127 Lnet/minecraft/class_1606;method_7127()Z
      official u Lckl;u()Z
    • updateTrackedPositionAndAngles

      public void updateTrackedPositionAndAngles(double x, double y, double z, float yaw, float pitch, int interpolationSteps)
      Overrides:
      updateTrackedPositionAndAngles in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named updateTrackedPositionAndAngles Lnet/minecraft/entity/Entity;updateTrackedPositionAndAngles(DDDFFI)V
      intermediary method_5759 Lnet/minecraft/class_1297;method_5759(DDDFFI)V
      official a Lbsw;a(DDDFFI)V
    • 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
    • isClosed

      private boolean isClosed()
      Mappings:
      Namespace Name Mixin selector
      named isClosed Lnet/minecraft/entity/mob/ShulkerEntity;isClosed()Z
      intermediary method_7124 Lnet/minecraft/class_1606;method_7124()Z
      official gv Lckl;gv()Z
    • spawnNewShulker

      private void spawnNewShulker()
      Mappings:
      Namespace Name Mixin selector
      named spawnNewShulker Lnet/minecraft/entity/mob/ShulkerEntity;spawnNewShulker()V
      intermediary method_31547 Lnet/minecraft/class_1606;method_31547()V
      official gw Lckl;gw()V
    • isCollidable

      public boolean isCollidable()
      Returns whether other entities cannot occupy the same space with this entity.

      If true, other entities can stand on this entity without falling. BoatEntity and ShulkerEntity has this behavior.

      Overrides:
      isCollidable in class Entity
      Returns:
      whether other entities cannot occupy the same space with this entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named isCollidable Lnet/minecraft/entity/Entity;isCollidable()Z
      intermediary method_30948 Lnet/minecraft/class_1297;method_30948()Z
      official bF Lbsw;bF()Z
    • getAttachedFace

      public Direction getAttachedFace()
      Mappings:
      Namespace Name Mixin selector
      named getAttachedFace Lnet/minecraft/entity/mob/ShulkerEntity;getAttachedFace()Lnet/minecraft/util/math/Direction;
      intermediary method_7119 Lnet/minecraft/class_1606;method_7119()Lnet/minecraft/class_2350;
      official y Lckl;y()Lje;
    • setAttachedFace

      private void setAttachedFace(Direction face)
      Mappings:
      Namespace Name Mixin selector
      named setAttachedFace Lnet/minecraft/entity/mob/ShulkerEntity;setAttachedFace(Lnet/minecraft/util/math/Direction;)V
      intermediary method_35192 Lnet/minecraft/class_1606;method_35192(Lnet/minecraft/class_2350;)V
      official a Lckl;a(Lje;)V
    • onTrackedDataSet

      public void onTrackedDataSet(TrackedData<?> data)
      Called on the client when the tracked data is set.

      This can be overridden to refresh other fields when the tracked data is set or changed.

      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
    • getPeekAmount

      private int getPeekAmount()
      Mappings:
      Namespace Name Mixin selector
      named getPeekAmount Lnet/minecraft/entity/mob/ShulkerEntity;getPeekAmount()I
      intermediary method_7115 Lnet/minecraft/class_1606;method_7115()I
      official gx Lckl;gx()I
    • setPeekAmount

      void setPeekAmount(int peekAmount)
      Mappings:
      Namespace Name Mixin selector
      named setPeekAmount Lnet/minecraft/entity/mob/ShulkerEntity;setPeekAmount(I)V
      intermediary method_7122 Lnet/minecraft/class_1606;method_7122(I)V
      official b Lckl;b(I)V
    • getOpenProgress

      public float getOpenProgress(float delta)
      Mappings:
      Namespace Name Mixin selector
      named getOpenProgress Lnet/minecraft/entity/mob/ShulkerEntity;getOpenProgress(F)F
      intermediary method_7116 Lnet/minecraft/class_1606;method_7116(F)F
      official G Lckl;G(F)F
    • 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 Lbsw;a(Lacj;)V
    • getMaxLookPitchChange

      public int getMaxLookPitchChange()
      Returns the maximum degrees which the pitch can change when looking.

      This is used by the look control.

      It can return from 1 for entities that can hardly raise their head, like axolotls or dolphins, or 180 for entities that can freely raise and lower their head, like guardians. The default return value is 40.

      Overrides:
      getMaxLookPitchChange in class MobEntity
      Returns:
      the maximum degrees which the pitch can change when looking
      Mappings:
      Namespace Name Mixin selector
      named getMaxLookPitchChange Lnet/minecraft/entity/mob/MobEntity;getMaxLookPitchChange()I
      intermediary method_5978 Lnet/minecraft/class_1308;method_5978()I
      official aa Lbtt;aa()I
    • getMaxHeadRotation

      public int getMaxHeadRotation()
      Returns the maximum degrees which the head yaw can differ from the body yaw.

      This is used by the body control.

      It can return from 1 for entities that can hardly rotate their head, like axolotls or dolphins, or 180 for entities that can freely rotate their head, like shulkers. The default return value is 75.

      Overrides:
      getMaxHeadRotation in class MobEntity
      Returns:
      the maximum degrees which the head yaw can differ from the body yaw
      Mappings:
      Namespace Name Mixin selector
      named getMaxHeadRotation Lnet/minecraft/entity/mob/MobEntity;getMaxHeadRotation()I
      intermediary method_5986 Lnet/minecraft/class_1308;method_5986()I
      official ab Lbtt;ab()I
    • pushAwayFrom

      public void pushAwayFrom(Entity entity)
      Overrides:
      pushAwayFrom in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named pushAwayFrom Lnet/minecraft/entity/Entity;pushAwayFrom(Lnet/minecraft/entity/Entity;)V
      intermediary method_5697 Lnet/minecraft/class_1297;method_5697(Lnet/minecraft/class_1297;)V
      official h Lbsw;h(Lbsw;)V
    • getRenderPositionOffset

      public Optional<Vec3d> getRenderPositionOffset(float tickDelta)
      Mappings:
      Namespace Name Mixin selector
      named getRenderPositionOffset Lnet/minecraft/entity/mob/ShulkerEntity;getRenderPositionOffset(F)Ljava/util/Optional;
      intermediary method_33352 Lnet/minecraft/class_1606;method_33352(F)Ljava/util/Optional;
      official H Lckl;H(F)Ljava/util/Optional;
    • 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 Lbtr;b(F)F
    • setVariant

      public void setVariant(Optional<DyeColor> optional)
      Specified by:
      setVariant in interface VariantHolder<Optional<DyeColor>>
      Mappings:
      Namespace Name Mixin selector
      named setVariant Lnet/minecraft/entity/mob/ShulkerEntity;setVariant(Ljava/util/Optional;)V
      intermediary method_47880 Lnet/minecraft/class_1606;method_47880(Ljava/util/Optional;)V
      official a Lckl;a(Ljava/util/Optional;)V
    • getVariant

      public Optional<DyeColor> getVariant()
      Specified by:
      getVariant in interface VariantHolder<Optional<DyeColor>>
      Mappings:
      Namespace Name Mixin selector
      named getVariant Lnet/minecraft/entity/mob/ShulkerEntity;getVariant()Ljava/util/Optional;
      intermediary method_47881 Lnet/minecraft/class_1606;method_47881()Ljava/util/Optional;
      official gq Lckl;gq()Ljava/util/Optional;
    • getColor

      @Nullable public @Nullable DyeColor getColor()
      Mappings:
      Namespace Name Mixin selector
      named getColor Lnet/minecraft/entity/mob/ShulkerEntity;getColor()Lnet/minecraft/util/DyeColor;
      intermediary method_7121 Lnet/minecraft/class_1606;method_7121()Lnet/minecraft/class_1767;
      official gr Lckl;gr()Lctk;