Class PaintingEntity

All Implemented Interfaces:
DataTracked, VariantHolder<RegistryEntry<PaintingVariant>>, ScoreHolder, Nameable, EntityLike

public class PaintingEntity extends AbstractDecorationEntity implements VariantHolder<RegistryEntry<PaintingVariant>>
Mappings:
Namespace Name
named net/minecraft/entity/decoration/painting/PaintingEntity
intermediary net/minecraft/class_1534
official clv
  • Field Details

    • VARIANT

      private static final TrackedData<RegistryEntry<PaintingVariant>> VARIANT
      Mappings:
      Namespace Name Mixin selector
      named VARIANT Lnet/minecraft/entity/decoration/painting/PaintingEntity;VARIANT:Lnet/minecraft/entity/data/TrackedData;
      intermediary field_38941 Lnet/minecraft/class_1534;field_38941:Lnet/minecraft/class_2940;
      official g Lclv;g:Lalc;
    • VARIANT_MAP_CODEC

      public static final com.mojang.serialization.MapCodec<RegistryEntry<PaintingVariant>> VARIANT_MAP_CODEC
      Mappings:
      Namespace Name Mixin selector
      named VARIANT_MAP_CODEC Lnet/minecraft/entity/decoration/painting/PaintingEntity;VARIANT_MAP_CODEC:Lcom/mojang/serialization/MapCodec;
      intermediary field_49238 Lnet/minecraft/class_1534;field_49238:Lcom/mojang/serialization/MapCodec;
      official d Lclv;d:Lcom/mojang/serialization/MapCodec;
    • VARIANT_ENTRY_CODEC

      public static final com.mojang.serialization.Codec<RegistryEntry<PaintingVariant>> VARIANT_ENTRY_CODEC
      Mappings:
      Namespace Name Mixin selector
      named VARIANT_ENTRY_CODEC Lnet/minecraft/entity/decoration/painting/PaintingEntity;VARIANT_ENTRY_CODEC:Lcom/mojang/serialization/Codec;
      intermediary field_49239 Lnet/minecraft/class_1534;field_49239:Lcom/mojang/serialization/Codec;
      official e Lclv;e:Lcom/mojang/serialization/Codec;
    • field_51595

      public static final float field_51595
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_51595 Lnet/minecraft/entity/decoration/painting/PaintingEntity;field_51595:F
      intermediary field_51595 Lnet/minecraft/class_1534;field_51595:F
      official f Lclv;f:F
  • Constructor Details

    • PaintingEntity

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

      private PaintingEntity(World world, BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/entity/decoration/painting/PaintingEntity;<init>(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)V
      intermediary <init> Lnet/minecraft/class_1534;<init>(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V
      official <init> Lclv;<init>(Ldhh;Ljh;)V
    • PaintingEntity

      public PaintingEntity(World world, BlockPos pos, Direction direction, RegistryEntry<PaintingVariant> variant)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/entity/decoration/painting/PaintingEntity;<init>(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;Lnet/minecraft/registry/entry/RegistryEntry;)V
      intermediary <init> Lnet/minecraft/class_1534;<init>(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_6880;)V
      official <init> Lclv;<init>(Ldhh;Ljh;Ljm;Ljq;)V
  • Method Details

    • initDataTracker

      protected void initDataTracker(DataTracker.Builder builder)
      Initializes data tracker.
      Specified by:
      initDataTracker in class Entity
      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
    • 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 Entity
      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 Lalf;a(Lalc;)V
    • setVariant

      public void setVariant(RegistryEntry<PaintingVariant> variant)
      Specified by:
      setVariant in interface VariantHolder<RegistryEntry<PaintingVariant>>
      Mappings:
      Namespace Name Mixin selector
      named setVariant Lnet/minecraft/entity/decoration/painting/PaintingEntity;setVariant(Lnet/minecraft/registry/entry/RegistryEntry;)V
      intermediary method_43402 Lnet/minecraft/class_1534;method_43402(Lnet/minecraft/class_6880;)V
      official b Lclv;b(Ljq;)V
    • getVariant

      public RegistryEntry<PaintingVariant> getVariant()
      Specified by:
      getVariant in interface VariantHolder<RegistryEntry<PaintingVariant>>
      Mappings:
      Namespace Name Mixin selector
      named getVariant Lnet/minecraft/entity/decoration/painting/PaintingEntity;getVariant()Lnet/minecraft/registry/entry/RegistryEntry;
      intermediary method_43404 Lnet/minecraft/class_1534;method_43404()Lnet/minecraft/class_6880;
      official s Lclv;s()Ljq;
    • placePainting

      public static Optional<PaintingEntity> placePainting(World world, BlockPos pos, Direction facing)
      Mappings:
      Namespace Name Mixin selector
      named placePainting Lnet/minecraft/entity/decoration/painting/PaintingEntity;placePainting(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;)Ljava/util/Optional;
      intermediary method_43401 Lnet/minecraft/class_1534;method_43401(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Ljava/util/Optional;
      official a Lclv;a(Ldhh;Ljh;Ljm;)Ljava/util/Optional;
    • getSize

      private static int getSize(RegistryEntry<PaintingVariant> variant)
      Mappings:
      Namespace Name Mixin selector
      named getSize Lnet/minecraft/entity/decoration/painting/PaintingEntity;getSize(Lnet/minecraft/registry/entry/RegistryEntry;)I
      intermediary method_43403 Lnet/minecraft/class_1534;method_43403(Lnet/minecraft/class_6880;)I
      official c Lclv;c(Ljq;)I
    • 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 BlockAttachedEntity
      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 BlockAttachedEntity
      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
    • calculateBoundingBox

      protected Box calculateBoundingBox(BlockPos pos, Direction side)
      Specified by:
      calculateBoundingBox in class AbstractDecorationEntity
      Mappings:
      Namespace Name Mixin selector
      named calculateBoundingBox Lnet/minecraft/entity/decoration/AbstractDecorationEntity;calculateBoundingBox(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;)Lnet/minecraft/util/math/Box;
      intermediary method_59943 Lnet/minecraft/class_1530;method_59943(Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_238;
      official a Lcls;a(Ljh;Ljm;)Lfbs;
    • getOffset

      private double getOffset(int length)
      Mappings:
      Namespace Name Mixin selector
      named getOffset Lnet/minecraft/entity/decoration/painting/PaintingEntity;getOffset(I)D
      intermediary method_59946 Lnet/minecraft/class_1534;method_59946(I)D
      official b Lclv;b(I)D
    • onBreak

      public void onBreak(ServerWorld world, @Nullable @Nullable Entity breaker)
      Specified by:
      onBreak in class BlockAttachedEntity
      Mappings:
      Namespace Name Mixin selector
      named onBreak Lnet/minecraft/entity/decoration/BlockAttachedEntity;onBreak(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/entity/Entity;)V
      intermediary method_6889 Lnet/minecraft/class_9691;method_6889(Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)V
      official a Lclq;a(Lash;Lbvj;)V
    • onPlace

      public void onPlace()
      Specified by:
      onPlace in class AbstractDecorationEntity
      Mappings:
      Namespace Name Mixin selector
      named onPlace Lnet/minecraft/entity/decoration/AbstractDecorationEntity;onPlace()V
      intermediary method_6894 Lnet/minecraft/class_1530;method_6894()V
      official z Lcls;z()V
    • refreshPositionAndAngles

      public void refreshPositionAndAngles(double x, double y, double z, float yaw, float pitch)
      Sets the entity's position, yaw, and pitch, and refreshes several position-related fields.

      This should be used over other methods for setting positions of mobs.

      Overrides:
      refreshPositionAndAngles in class Entity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named refreshPositionAndAngles Lnet/minecraft/entity/Entity;refreshPositionAndAngles(DDDFF)V
      intermediary method_5808 Lnet/minecraft/class_1297;method_5808(DDDFF)V
      official b Lbvj;b(DDDFF)V
    • updateTrackedPositionAndAngles

      public void updateTrackedPositionAndAngles(double x, double y, double z, float yaw, float pitch, int interpolationSteps)
      Overrides:
      updateTrackedPositionAndAngles in class Entity
      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 Lbvj;a(DDDFFI)V
    • getSyncedPos

      public Vec3d getSyncedPos()
      Returns the position of the entity synced to clients.

      This is the same as Entity.getPos() except for paintings which return the attachment position.

      Overrides:
      getSyncedPos in class Entity
      Returns:
      the position of the entity synced to clients
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named getSyncedPos Lnet/minecraft/entity/Entity;getSyncedPos()Lnet/minecraft/util/math/Vec3d;
      intermediary method_43390 Lnet/minecraft/class_1297;method_43390()Lnet/minecraft/class_243;
      official dv Lbvj;dv()Lfbx;
    • createSpawnPacket

      public Packet<ClientPlayPacketListener> createSpawnPacket(EntityTrackerEntry entityTrackerEntry)
      Returns a packet to notify the clients of the entity's spawning.
      Overrides:
      createSpawnPacket in class Entity
      Returns:
      a packet to notify the clients of the entity's spawning
      API Note:
      Subclasses should return new EntitySpawnS2CPacket(this), unless they use a custom spawning packet.
      Mappings:
      Namespace Name Mixin selector
      named createSpawnPacket Lnet/minecraft/entity/Entity;createSpawnPacket(Lnet/minecraft/server/network/EntityTrackerEntry;)Lnet/minecraft/network/packet/Packet;
      intermediary method_18002 Lnet/minecraft/class_1297;method_18002(Lnet/minecraft/class_3231;)Lnet/minecraft/class_2596;
      official a Lbvj;a(Lasf;)Laac;
    • 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 Entity
      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 Lbvj;a(Lacs;)V
    • getPickBlockStack

      public ItemStack getPickBlockStack()
      Returns the stack for creative "pick block" functionality, or null if there is none.

      If the entity has an item representation (such as boats or minecarts), this should be overridden to return a new stack. Note that MobEntity handles the spawn eggs. ItemFrameEntity instead returns the copy of the stack held in the frame.

      Overrides:
      getPickBlockStack in class Entity
      Returns:
      the stack for creative "pick block" functionality, or null if there is none
      Mappings:
      Namespace Name Mixin selector
      named getPickBlockStack Lnet/minecraft/entity/Entity;getPickBlockStack()Lnet/minecraft/item/ItemStack;
      intermediary method_31480 Lnet/minecraft/class_1297;method_31480()Lnet/minecraft/class_1799;
      official dJ Lbvj;dJ()Lcxo;