Class ParrotEntity

All Implemented Interfaces:
Attackable, DataTracked, EquipmentHolder, Flutterer, Leashable, Tameable, Targeter, VariantHolder<ParrotEntity.Variant>, ScoreHolder, Nameable, EntityLike

public class ParrotEntity extends TameableShoulderEntity implements VariantHolder<ParrotEntity.Variant>, Flutterer
Mappings:
Namespace Name
named net/minecraft/entity/passive/ParrotEntity
intermediary net/minecraft/class_1453
official cim
  • Field Details

    • VARIANT

      private static final TrackedData<Integer> VARIANT
      Mappings:
      Namespace Name Mixin selector
      named VARIANT Lnet/minecraft/entity/passive/ParrotEntity;VARIANT:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_6826 Lnet/minecraft/class_1453;field_6826:Lnet/minecraft/class_2940;
      official ch Lcim;ch:Lalc;
    • CAN_IMITATE

      private static final Predicate<MobEntity> CAN_IMITATE
      Mappings:
      Namespace Name Mixin selector
      named CAN_IMITATE Lnet/minecraft/entity/passive/ParrotEntity;CAN_IMITATE:Ljava/util/function/Predicate;
      intermediary field_6821 Lnet/minecraft/class_1453;field_6821:Ljava/util/function/Predicate;
      official ci Lcim;ci:Ljava/util/function/Predicate;
    • MOB_SOUNDS

      static final Map<EntityType<?>,SoundEvent> MOB_SOUNDS
      Mappings:
      Namespace Name Mixin selector
      named MOB_SOUNDS Lnet/minecraft/entity/passive/ParrotEntity;MOB_SOUNDS:Ljava/util/Map;
      intermediary field_6822 Lnet/minecraft/class_1453;field_6822:Ljava/util/Map;
      official cj Lcim;cj:Ljava/util/Map;
    • flapProgress

      public float flapProgress
      Mappings:
      Namespace Name Mixin selector
      named flapProgress Lnet/minecraft/entity/passive/ParrotEntity;flapProgress:F
      intermediary field_6818 Lnet/minecraft/class_1453;field_6818:F
      official cd Lcim;cd:F
    • maxWingDeviation

      public float maxWingDeviation
      Mappings:
      Namespace Name Mixin selector
      named maxWingDeviation Lnet/minecraft/entity/passive/ParrotEntity;maxWingDeviation:F
      intermediary field_6819 Lnet/minecraft/class_1453;field_6819:F
      official ce Lcim;ce:F
    • prevMaxWingDeviation

      public float prevMaxWingDeviation
      Mappings:
      Namespace Name Mixin selector
      named prevMaxWingDeviation Lnet/minecraft/entity/passive/ParrotEntity;prevMaxWingDeviation:F
      intermediary field_6827 Lnet/minecraft/class_1453;field_6827:F
      official cf Lcim;cf:F
    • prevFlapProgress

      public float prevFlapProgress
      Mappings:
      Namespace Name Mixin selector
      named prevFlapProgress Lnet/minecraft/entity/passive/ParrotEntity;prevFlapProgress:F
      intermediary field_6829 Lnet/minecraft/class_1453;field_6829:F
      official cg Lcim;cg:F
    • flapSpeed

      private float flapSpeed
      Mappings:
      Namespace Name Mixin selector
      named flapSpeed Lnet/minecraft/entity/passive/ParrotEntity;flapSpeed:F
      intermediary field_6824 Lnet/minecraft/class_1453;field_6824:F
      official ck Lcim;ck:F
    • field_28640

      private float field_28640
      Mappings:
      Namespace Name Mixin selector
      named field_28640 Lnet/minecraft/entity/passive/ParrotEntity;field_28640:F
      intermediary field_28640 Lnet/minecraft/class_1453;field_28640:F
      official cl Lcim;cl:F
    • songPlaying

      private boolean songPlaying
      Mappings:
      Namespace Name Mixin selector
      named songPlaying Lnet/minecraft/entity/passive/ParrotEntity;songPlaying:Z
      intermediary field_6823 Lnet/minecraft/class_1453;field_6823:Z
      official cm Lcim;cm:Z
    • songSource

      @Nullable private @Nullable BlockPos songSource
      Mappings:
      Namespace Name Mixin selector
      named songSource Lnet/minecraft/entity/passive/ParrotEntity;songSource:Lnet/minecraft/util/math/BlockPos;
      intermediary field_6820 Lnet/minecraft/class_1453;field_6820:Lnet/minecraft/class_2338;
      official cn Lcim;cn:Ljh;
  • Constructor Details

    • ParrotEntity

      public ParrotEntity(EntityType<? extends ParrotEntity> 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

    • initialize

      @Nullable public @Nullable EntityData initialize(ServerWorldAccess world, LocalDifficulty difficulty, SpawnReason spawnReason, @Nullable @Nullable EntityData entityData)
      Overrides:
      initialize in class PassiveEntity
      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 Lbwh;a(Ldhy;Lbtg;Lbvp;Lbwy;)Lbwy;
    • isBaby

      public boolean isBaby()
      Overrides:
      isBaby in class PassiveEntity
      Mappings:
      Namespace Name Mixin selector
      named isBaby Lnet/minecraft/entity/LivingEntity;isBaby()Z
      intermediary method_6109 Lnet/minecraft/class_1309;method_6109()Z
      official e_ Lbwf;e_()Z
    • 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
    • createParrotAttributes

      public static DefaultAttributeContainer.Builder createParrotAttributes()
      Mappings:
      Namespace Name Mixin selector
      named createParrotAttributes Lnet/minecraft/entity/passive/ParrotEntity;createParrotAttributes()Lnet/minecraft/entity/attribute/DefaultAttributeContainer$Builder;
      intermediary method_26889 Lnet/minecraft/class_1453;method_26889()Lnet/minecraft/class_5132$class_5133;
      official gA Lcim;gA()Lbxm$a;
    • createNavigation

      protected EntityNavigation createNavigation(World world)
      Overrides:
      createNavigation in class MobEntity
      Mappings:
      Namespace Name Mixin selector
      named createNavigation Lnet/minecraft/entity/mob/MobEntity;createNavigation(Lnet/minecraft/world/World;)Lnet/minecraft/entity/ai/pathing/EntityNavigation;
      intermediary method_5965 Lnet/minecraft/class_1308;method_5965(Lnet/minecraft/class_1937;)Lnet/minecraft/class_1408;
      official b Lbwh;b(Ldhh;)Lcfr;
    • tickMovement

      public void tickMovement()
      Overrides:
      tickMovement in class AnimalEntity
      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
    • setNearbySongPlaying

      public void setNearbySongPlaying(BlockPos songPosition, boolean playing)
      Overrides:
      setNearbySongPlaying in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named setNearbySongPlaying Lnet/minecraft/entity/LivingEntity;setNearbySongPlaying(Lnet/minecraft/util/math/BlockPos;Z)V
      intermediary method_6006 Lnet/minecraft/class_1309;method_6006(Lnet/minecraft/class_2338;Z)V
      official a Lbwf;a(Ljh;Z)V
    • isSongPlaying

      public boolean isSongPlaying()
      Mappings:
      Namespace Name Mixin selector
      named isSongPlaying Lnet/minecraft/entity/passive/ParrotEntity;isSongPlaying()Z
      intermediary method_6582 Lnet/minecraft/class_1453;method_6582()Z
      official gB Lcim;gB()Z
    • flapWings

      private void flapWings()
      Mappings:
      Namespace Name Mixin selector
      named flapWings Lnet/minecraft/entity/passive/ParrotEntity;flapWings()V
      intermediary method_6578 Lnet/minecraft/class_1453;method_6578()V
      official gF Lcim;gF()V
    • imitateNearbyMob

      public static boolean imitateNearbyMob(World world, Entity parrot)
      Mappings:
      Namespace Name Mixin selector
      named imitateNearbyMob Lnet/minecraft/entity/passive/ParrotEntity;imitateNearbyMob(Lnet/minecraft/world/World;Lnet/minecraft/entity/Entity;)Z
      intermediary method_6587 Lnet/minecraft/class_1453;method_6587(Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;)Z
      official a Lcim;a(Ldhh;Lbvj;)Z
    • interactMob

      public ActionResult interactMob(PlayerEntity player, Hand hand)
      Overrides:
      interactMob in class AnimalEntity
      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;
    • isBreedingItem

      public boolean isBreedingItem(ItemStack stack)
      Specified by:
      isBreedingItem in class AnimalEntity
      Mappings:
      Namespace Name Mixin selector
      named isBreedingItem Lnet/minecraft/entity/passive/AnimalEntity;isBreedingItem(Lnet/minecraft/item/ItemStack;)Z
      intermediary method_6481 Lnet/minecraft/class_1429;method_6481(Lnet/minecraft/class_1799;)Z
      official j Lchw;j(Lcxo;)Z
    • canSpawn

      public static boolean canSpawn(EntityType<ParrotEntity> type, WorldAccess world, SpawnReason spawnReason, BlockPos pos, Random random)
      Mappings:
      Namespace Name Mixin selector
      named canSpawn Lnet/minecraft/entity/passive/ParrotEntity;canSpawn(Lnet/minecraft/entity/EntityType;Lnet/minecraft/world/WorldAccess;Lnet/minecraft/entity/SpawnReason;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/random/Random;)Z
      intermediary method_20667 Lnet/minecraft/class_1453;method_20667(Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z
      official c Lcim;c(Lbvq;Ldhi;Lbvp;Ljh;Lbam;)Z
    • fall

      protected void fall(double heightDifference, boolean onGround, BlockState state, BlockPos landedPosition)
      Called when the entity falls. Flying mobs should override this to do nothing.
      Overrides:
      fall in class LivingEntity
      Implementation Note:
      If on ground, this calls Block.onLandedUpon(net.minecraft.world.World, net.minecraft.block.BlockState, net.minecraft.util.math.BlockPos, net.minecraft.entity.Entity, float), which can add or reduce fall damage, emits GameEvent.HIT_GROUND, then calls Entity.onLanding(). Otherwise, if heightDifference is negative, it subtracts that value from Entity.fallDistance.
      Mappings:
      Namespace Name Mixin selector
      named fall Lnet/minecraft/entity/Entity;fall(DZLnet/minecraft/block/BlockState;Lnet/minecraft/util/math/BlockPos;)V
      intermediary method_5623 Lnet/minecraft/class_1297;method_5623(DZLnet/minecraft/class_2680;Lnet/minecraft/class_2338;)V
      official a Lbvj;a(DZLdxu;Ljh;)V
    • canBreedWith

      public boolean canBreedWith(AnimalEntity other)
      Overrides:
      canBreedWith in class AnimalEntity
      Mappings:
      Namespace Name Mixin selector
      named canBreedWith Lnet/minecraft/entity/passive/AnimalEntity;canBreedWith(Lnet/minecraft/entity/passive/AnimalEntity;)Z
      intermediary method_6474 Lnet/minecraft/class_1429;method_6474(Lnet/minecraft/class_1429;)Z
      official a Lchw;a(Lchw;)Z
    • createChild

      @Nullable public @Nullable PassiveEntity createChild(ServerWorld world, PassiveEntity entity)
      Specified by:
      createChild in class PassiveEntity
      Mappings:
      Namespace Name Mixin selector
      named createChild Lnet/minecraft/entity/passive/PassiveEntity;createChild(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/entity/passive/PassiveEntity;)Lnet/minecraft/entity/passive/PassiveEntity;
      intermediary method_5613 Lnet/minecraft/class_1296;method_5613(Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1296;
      official a Lbva;a(Lash;Lbva;)Lbva;
    • getAmbientSound

      @Nullable public @Nullable 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 u Lbwh;u()Laxe;
    • getRandomSound

      public static SoundEvent getRandomSound(World world, Random random)
      Mappings:
      Namespace Name Mixin selector
      named getRandomSound Lnet/minecraft/entity/passive/ParrotEntity;getRandomSound(Lnet/minecraft/world/World;Lnet/minecraft/util/math/random/Random;)Lnet/minecraft/sound/SoundEvent;
      intermediary method_6583 Lnet/minecraft/class_1453;method_6583(Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;)Lnet/minecraft/class_3414;
      official a Lcim;a(Ldhh;Lbam;)Laxe;
    • getSound

      private static SoundEvent getSound(EntityType<?> imitate)
      Mappings:
      Namespace Name Mixin selector
      named getSound Lnet/minecraft/entity/passive/ParrotEntity;getSound(Lnet/minecraft/entity/EntityType;)Lnet/minecraft/sound/SoundEvent;
      intermediary method_6586 Lnet/minecraft/class_1453;method_6586(Lnet/minecraft/class_1299;)Lnet/minecraft/class_3414;
      official b Lcim;b(Lbvq;)Laxe;
    • 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 e Lbwf;e(Lbtz;)Laxe;
    • getDeathSound

      protected SoundEvent getDeathSound()
      Overrides:
      getDeathSound in class LivingEntity
      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;
    • 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
    • isFlappingWings

      protected 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 ba Lbvj;ba()Z
    • addFlapEffects

      protected 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 TameableShoulderEntity.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 aZ Lbvj;aZ()V
    • getSoundPitch

      public float getSoundPitch()
      Overrides:
      getSoundPitch in class LivingEntity
      Mappings:
      Namespace Name Mixin selector
      named getSoundPitch Lnet/minecraft/entity/LivingEntity;getSoundPitch()F
      intermediary method_6017 Lnet/minecraft/class_1309;method_6017()F
      official fh Lbwf;fh()F
    • getSoundPitch

      public static float getSoundPitch(Random random)
      Mappings:
      Namespace Name Mixin selector
      named getSoundPitch Lnet/minecraft/entity/passive/ParrotEntity;getSoundPitch(Lnet/minecraft/util/math/random/Random;)F
      intermediary method_6580 Lnet/minecraft/class_1453;method_6580(Lnet/minecraft/class_5819;)F
      official a Lcim;a(Lbam;)F
    • 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 dn Lbvj;dn()Laxg;
    • isPushable

      public boolean isPushable()
      Returns whether the entity can be pushed by other entities.
      Overrides:
      isPushable in class LivingEntity
      Returns:
      whether the entity can be pushed by other entities
      Mappings:
      Namespace Name Mixin selector
      named isPushable Lnet/minecraft/entity/Entity;isPushable()Z
      intermediary method_5810 Lnet/minecraft/class_1297;method_5810()Z
      official bI Lbvj;bI()Z
    • 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
    • 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
    • getVariant

      public ParrotEntity.Variant getVariant()
      Specified by:
      getVariant in interface VariantHolder<ParrotEntity.Variant>
      Mappings:
      Namespace Name Mixin selector
      named getVariant Lnet/minecraft/entity/passive/ParrotEntity;getVariant()Lnet/minecraft/entity/passive/ParrotEntity$Variant;
      intermediary method_6584 Lnet/minecraft/class_1453;method_6584()Lnet/minecraft/class_1453$class_7989;
      official gC Lcim;gC()Lcim$b;
    • setVariant

      public void setVariant(ParrotEntity.Variant variant)
      Specified by:
      setVariant in interface VariantHolder<ParrotEntity.Variant>
      Mappings:
      Namespace Name Mixin selector
      named setVariant Lnet/minecraft/entity/passive/ParrotEntity;setVariant(Lnet/minecraft/entity/passive/ParrotEntity$Variant;)V
      intermediary method_47848 Lnet/minecraft/class_1453;method_47848(Lnet/minecraft/class_1453$class_7989;)V
      official a Lcim;a(Lcim$b;)V
    • initDataTracker

      protected void initDataTracker(DataTracker.Builder builder)
      Initializes data tracker.
      Overrides:
      initDataTracker in class TameableEntity
      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
    • 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 TameableEntity
      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 TameableEntity
      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
    • isInAir

      public boolean isInAir()
      Specified by:
      isInAir in interface Flutterer
      Mappings:
      Namespace Name Mixin selector
      named isInAir Lnet/minecraft/entity/Flutterer;isInAir()Z
      intermediary method_6581 Lnet/minecraft/class_1432;method_6581()Z
      official gD Lcif;gD()Z
    • canTeleportOntoLeaves

      protected boolean canTeleportOntoLeaves()
      Overrides:
      canTeleportOntoLeaves in class TameableEntity
      Mappings:
      Namespace Name Mixin selector
      named canTeleportOntoLeaves Lnet/minecraft/entity/passive/TameableEntity;canTeleportOntoLeaves()Z
      intermediary method_60716 Lnet/minecraft/class_1321;method_60716()Z
      official gs Lbxc;gs()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;