Class AbstractDecorationEntity

java.lang.Object
net.minecraft.entity.Entity
net.minecraft.entity.decoration.AbstractDecorationEntity
All Implemented Interfaces:
ScoreHolder, CommandOutput, Nameable, EntityLike
Direct Known Subclasses:
ItemFrameEntity, LeashKnotEntity, PaintingEntity

public abstract class AbstractDecorationEntity extends Entity
Mappings:
Namespace Name
official cbm
intermediary net/minecraft/class_1530
named net/minecraft/entity/decoration/AbstractDecorationEntity
  • Field Details

    • LOGGER

      private static final Logger LOGGER
      Mappings:
      Namespace Name Mixin selector
      official e Lcbm;e:Lorg/slf4j/Logger;
      intermediary field_39455 Lnet/minecraft/class_1530;field_39455:Lorg/slf4j/Logger;
      named LOGGER Lnet/minecraft/entity/decoration/AbstractDecorationEntity;LOGGER:Lorg/slf4j/Logger;
    • PREDICATE

      protected static final Predicate<Entity> PREDICATE
      Mappings:
      Namespace Name Mixin selector
      official b Lcbm;b:Ljava/util/function/Predicate;
      intermediary field_7098 Lnet/minecraft/class_1530;field_7098:Ljava/util/function/Predicate;
      named PREDICATE Lnet/minecraft/entity/decoration/AbstractDecorationEntity;PREDICATE:Ljava/util/function/Predicate;
    • obstructionCheckCounter

      private int obstructionCheckCounter
      Mappings:
      Namespace Name Mixin selector
      official f Lcbm;f:I
      intermediary field_7097 Lnet/minecraft/class_1530;field_7097:I
      named obstructionCheckCounter Lnet/minecraft/entity/decoration/AbstractDecorationEntity;obstructionCheckCounter:I
    • attachmentPos

      protected BlockPos attachmentPos
      Mappings:
      Namespace Name Mixin selector
      official c Lcbm;c:Lhx;
      intermediary field_7100 Lnet/minecraft/class_1530;field_7100:Lnet/minecraft/class_2338;
      named attachmentPos Lnet/minecraft/entity/decoration/AbstractDecorationEntity;attachmentPos:Lnet/minecraft/util/math/BlockPos;
    • facing

      protected Direction facing
      Mappings:
      Namespace Name Mixin selector
      official d Lcbm;d:Lic;
      intermediary field_7099 Lnet/minecraft/class_1530;field_7099:Lnet/minecraft/class_2350;
      named facing Lnet/minecraft/entity/decoration/AbstractDecorationEntity;facing:Lnet/minecraft/util/math/Direction;
  • Constructor Details

    • AbstractDecorationEntity

      protected AbstractDecorationEntity(EntityType<? extends AbstractDecorationEntity> type, World world)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lblv;<init>(Lblz;Lctp;)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
    • AbstractDecorationEntity

      protected AbstractDecorationEntity(EntityType<? extends AbstractDecorationEntity> type, World world, BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lcbm;<init>(Lblz;Lctp;Lhx;)V
      intermediary <init> Lnet/minecraft/class_1530;<init>(Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V
      named <init> Lnet/minecraft/entity/decoration/AbstractDecorationEntity;<init>(Lnet/minecraft/entity/EntityType;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)V
  • Method Details

    • initDataTracker

      protected void initDataTracker()
      Initializes data tracker.
      Specified by:
      initDataTracker in class Entity
      Mappings:
      Namespace Name Mixin selector
      official c_ Lblv;c_()V
      intermediary method_5693 Lnet/minecraft/class_1297;method_5693()V
      named initDataTracker Lnet/minecraft/entity/Entity;initDataTracker()V
    • setFacing

      protected void setFacing(Direction facing)
      Mappings:
      Namespace Name Mixin selector
      official a Lcbm;a(Lic;)V
      intermediary method_6892 Lnet/minecraft/class_1530;method_6892(Lnet/minecraft/class_2350;)V
      named setFacing Lnet/minecraft/entity/decoration/AbstractDecorationEntity;setFacing(Lnet/minecraft/util/math/Direction;)V
    • updateAttachmentPosition

      protected void updateAttachmentPosition()
      Mappings:
      Namespace Name Mixin selector
      official z Lcbm;z()V
      intermediary method_6895 Lnet/minecraft/class_1530;method_6895()V
      named updateAttachmentPosition Lnet/minecraft/entity/decoration/AbstractDecorationEntity;updateAttachmentPosition()V
    • method_6893

      private double method_6893(int int2)
      Mappings:
      Namespace Name Mixin selector
      official b Lcbm;b(I)D
      intermediary method_6893 Lnet/minecraft/class_1530;method_6893(I)D
      named method_6893 Lnet/minecraft/entity/decoration/AbstractDecorationEntity;method_6893(I)D
    • tick

      public void tick()
      Ticks this entity.
      Overrides:
      tick in class Entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official l Lblv;l()V
      intermediary method_5773 Lnet/minecraft/class_1297;method_5773()V
      named tick Lnet/minecraft/entity/Entity;tick()V
    • canStayAttached

      public boolean canStayAttached()
      Mappings:
      Namespace Name Mixin selector
      official A Lcbm;A()Z
      intermediary method_6888 Lnet/minecraft/class_1530;method_6888()Z
      named canStayAttached Lnet/minecraft/entity/decoration/AbstractDecorationEntity;canStayAttached()Z
    • canHit

      public boolean canHit()
      Returns whether the entity can be hit with a projectile or be targeted by the player crosshair.
      Overrides:
      canHit in class Entity
      Returns:
      whether the entity can be hit with a projectile or be targeted by the player crosshair
      Mappings:
      Namespace Name Mixin selector
      official bt Lblv;bt()Z
      intermediary method_5863 Lnet/minecraft/class_1297;method_5863()Z
      named canHit Lnet/minecraft/entity/Entity;canHit()Z
    • handleAttack

      public boolean handleAttack(Entity attacker)
      Handles a player attacking the entity. This is called before Entity.damage(net.minecraft.entity.damage.DamageSource, float) and can be used to restrict players from attacking the entity by returning true.
      Overrides:
      handleAttack in class Entity
      Returns:
      whether to stop handling the attack
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official u Lblv;u(Lblv;)Z
      intermediary method_5698 Lnet/minecraft/class_1297;method_5698(Lnet/minecraft/class_1297;)Z
      named handleAttack Lnet/minecraft/entity/Entity;handleAttack(Lnet/minecraft/entity/Entity;)Z
    • getHorizontalFacing

      public Direction getHorizontalFacing()
      Overrides:
      getHorizontalFacing in class Entity
      Mappings:
      Namespace Name Mixin selector
      official cE Lblv;cE()Lic;
      intermediary method_5735 Lnet/minecraft/class_1297;method_5735()Lnet/minecraft/class_2350;
      named getHorizontalFacing Lnet/minecraft/entity/Entity;getHorizontalFacing()Lnet/minecraft/util/math/Direction;
    • 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 Entity
      Returns:
      whether the entity was actually damaged
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lblv;a(Lbkt;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
    • move

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

      public void addVelocity(double deltaX, double deltaY, double deltaZ)
      Overrides:
      addVelocity in class Entity
      Mappings:
      Namespace Name Mixin selector
      official j Lblv;j(DDD)V
      intermediary method_5762 Lnet/minecraft/class_1297;method_5762(DDD)V
      named addVelocity Lnet/minecraft/entity/Entity;addVelocity(DDD)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.

      Specified by:
      writeCustomDataToNbt in class Entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official b Lblv;b(Lsn;)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 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.

      Specified by:
      readCustomDataFromNbt in class Entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lblv;a(Lsn;)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
    • getWidthPixels

      public abstract int getWidthPixels()
      Mappings:
      Namespace Name Mixin selector
      official B Lcbm;B()I
      intermediary method_6897 Lnet/minecraft/class_1530;method_6897()I
      named getWidthPixels Lnet/minecraft/entity/decoration/AbstractDecorationEntity;getWidthPixels()I
    • getHeightPixels

      public abstract int getHeightPixels()
      Mappings:
      Namespace Name Mixin selector
      official C Lcbm;C()I
      intermediary method_6891 Lnet/minecraft/class_1530;method_6891()I
      named getHeightPixels Lnet/minecraft/entity/decoration/AbstractDecorationEntity;getHeightPixels()I
    • onBreak

      public abstract void onBreak(@Nullable @Nullable Entity entity)
      Mappings:
      Namespace Name Mixin selector
      official a Lcbm;a(Lblv;)V
      intermediary method_6889 Lnet/minecraft/class_1530;method_6889(Lnet/minecraft/class_1297;)V
      named onBreak Lnet/minecraft/entity/decoration/AbstractDecorationEntity;onBreak(Lnet/minecraft/entity/Entity;)V
    • onPlace

      public abstract void onPlace()
      Mappings:
      Namespace Name Mixin selector
      official D Lcbm;D()V
      intermediary method_6894 Lnet/minecraft/class_1530;method_6894()V
      named onPlace Lnet/minecraft/entity/decoration/AbstractDecorationEntity;onPlace()V
    • dropStack

      public ItemEntity dropStack(ItemStack stack, float yOffset)
      Drops stack at the entity's position with the given Y offset.
      Overrides:
      dropStack in class Entity
      Returns:
      the spawned item entity, or null if the stack is empty or if called on the client
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lblv;a(Lcmy;F)Lcbu;
      intermediary method_5699 Lnet/minecraft/class_1297;method_5699(Lnet/minecraft/class_1799;F)Lnet/minecraft/class_1542;
      named dropStack Lnet/minecraft/entity/Entity;dropStack(Lnet/minecraft/item/ItemStack;F)Lnet/minecraft/entity/ItemEntity;
    • shouldSetPositionOnLoad

      protected boolean shouldSetPositionOnLoad()
      Overrides:
      shouldSetPositionOnLoad in class Entity
      Mappings:
      Namespace Name Mixin selector
      official bv Lblv;bv()Z
      intermediary method_5638 Lnet/minecraft/class_1297;method_5638()Z
      named shouldSetPositionOnLoad Lnet/minecraft/entity/Entity;shouldSetPositionOnLoad()Z
    • 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
      official a_ Lblv;a_(DDD)V
      intermediary method_5814 Lnet/minecraft/class_1297;method_5814(DDD)V
      named setPosition Lnet/minecraft/entity/Entity;setPosition(DDD)V
    • getDecorationBlockPos

      public BlockPos getDecorationBlockPos()
      Mappings:
      Namespace Name Mixin selector
      official E Lcbm;E()Lhx;
      intermediary method_6896 Lnet/minecraft/class_1530;method_6896()Lnet/minecraft/class_2338;
      named getDecorationBlockPos Lnet/minecraft/entity/decoration/AbstractDecorationEntity;getDecorationBlockPos()Lnet/minecraft/util/math/BlockPos;
    • applyRotation

      public float applyRotation(BlockRotation rotation)
      Applies rotation to the entity's yaw.
      Overrides:
      applyRotation in class Entity
      Mappings:
      Namespace Name Mixin selector
      official a Lblv;a(Lddc;)F
      intermediary method_5832 Lnet/minecraft/class_1297;method_5832(Lnet/minecraft/class_2470;)F
      named applyRotation Lnet/minecraft/entity/Entity;applyRotation(Lnet/minecraft/util/BlockRotation;)F
    • applyMirror

      public float applyMirror(BlockMirror mirror)
      Applies mirror to the entity's yaw.
      Overrides:
      applyMirror in class Entity
      Mappings:
      Namespace Name Mixin selector
      official a Lblv;a(Ldbm;)F
      intermediary method_5763 Lnet/minecraft/class_1297;method_5763(Lnet/minecraft/class_2415;)F
      named applyMirror Lnet/minecraft/entity/Entity;applyMirror(Lnet/minecraft/util/BlockMirror;)F
    • onStruckByLightning

      public void onStruckByLightning(ServerWorld world, LightningEntity lightning)
      Called when the entity is struck by lightning. This sets the entity on fire and deals lightning damage by default; entities that do not take such damage should override this method to do nothing.
      Overrides:
      onStruckByLightning in class Entity
      Mappings:
      Namespace Name Mixin selector
      official a Lblv;a(Land;Lbmk;)V
      intermediary method_5800 Lnet/minecraft/class_1297;method_5800(Lnet/minecraft/class_3218;Lnet/minecraft/class_1538;)V
      named onStruckByLightning Lnet/minecraft/entity/Entity;onStruckByLightning(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/entity/LightningEntity;)V
    • calculateDimensions

      public void calculateDimensions()
      Calculates and sets the dimension (bounding box) of the entity and refreshes its position.
      Overrides:
      calculateDimensions in class Entity
      Mappings:
      Namespace Name Mixin selector
      official k_ Lblv;k_()V
      intermediary method_18382 Lnet/minecraft/class_1297;method_18382()V
      named calculateDimensions Lnet/minecraft/entity/Entity;calculateDimensions()V