Class PistonBlockEntity

java.lang.Object
net.minecraft.block.entity.BlockEntity
net.minecraft.block.entity.PistonBlockEntity

public class PistonBlockEntity extends BlockEntity
A piston block entity represents the block being pushed by a piston.
Mappings:
Namespace Name
official dbm
intermediary net/minecraft/class_2669
named net/minecraft/block/entity/PistonBlockEntity
  • Field Details

    • field_31382

      private static final int field_31382
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official b Ldbm;b:I
      intermediary field_31382 Lnet/minecraft/class_2669;field_31382:I
      named field_31382 Lnet/minecraft/block/entity/PistonBlockEntity;field_31382:I
    • field_31383

      private static final double field_31383
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official c Ldbm;c:D
      intermediary field_31383 Lnet/minecraft/class_2669;field_31383:D
      named field_31383 Lnet/minecraft/block/entity/PistonBlockEntity;field_31383:D
    • field_31381

      public static final double field_31381
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a:D
      intermediary field_31381 Lnet/minecraft/class_2669;field_31381:D
      named field_31381 Lnet/minecraft/block/entity/PistonBlockEntity;field_31381:D
    • field_12205

      private static final ThreadLocal<Direction> field_12205
      Mappings:
      Namespace Name Mixin selector
      official h Ldbm;h:Ljava/lang/ThreadLocal;
      intermediary field_12205 Lnet/minecraft/class_2669;field_12205:Ljava/lang/ThreadLocal;
      named field_12205 Lnet/minecraft/block/entity/PistonBlockEntity;field_12205:Ljava/lang/ThreadLocal;
    • pushedBlock

      private BlockState pushedBlock
      Mappings:
      Namespace Name Mixin selector
      official d Ldbm;d:Ldbq;
      intermediary field_12204 Lnet/minecraft/class_2669;field_12204:Lnet/minecraft/class_2680;
      named pushedBlock Lnet/minecraft/block/entity/PistonBlockEntity;pushedBlock:Lnet/minecraft/block/BlockState;
    • facing

      private Direction facing
      Mappings:
      Namespace Name Mixin selector
      official e Ldbm;e:Lgz;
      intermediary field_12201 Lnet/minecraft/class_2669;field_12201:Lnet/minecraft/class_2350;
      named facing Lnet/minecraft/block/entity/PistonBlockEntity;facing:Lnet/minecraft/util/math/Direction;
    • extending

      private boolean extending
      Mappings:
      Namespace Name Mixin selector
      official f Ldbm;f:Z
      intermediary field_12203 Lnet/minecraft/class_2669;field_12203:Z
      named extending Lnet/minecraft/block/entity/PistonBlockEntity;extending:Z
    • source

      private boolean source
      Mappings:
      Namespace Name Mixin selector
      official g Ldbm;g:Z
      intermediary field_12202 Lnet/minecraft/class_2669;field_12202:Z
      named source Lnet/minecraft/block/entity/PistonBlockEntity;source:Z
    • progress

      private float progress
      Mappings:
      Namespace Name Mixin selector
      official i Ldbm;i:F
      intermediary field_12207 Lnet/minecraft/class_2669;field_12207:F
      named progress Lnet/minecraft/block/entity/PistonBlockEntity;progress:F
    • lastProgress

      private float lastProgress
      Mappings:
      Namespace Name Mixin selector
      official j Ldbm;j:F
      intermediary field_12206 Lnet/minecraft/class_2669;field_12206:F
      named lastProgress Lnet/minecraft/block/entity/PistonBlockEntity;lastProgress:F
    • savedWorldTime

      private long savedWorldTime
      Mappings:
      Namespace Name Mixin selector
      official k Ldbm;k:J
      intermediary field_12208 Lnet/minecraft/class_2669;field_12208:J
      named savedWorldTime Lnet/minecraft/block/entity/PistonBlockEntity;savedWorldTime:J
    • field_26705

      private int field_26705
      Mappings:
      Namespace Name Mixin selector
      official l Ldbm;l:I
      intermediary field_26705 Lnet/minecraft/class_2669;field_26705:I
      named field_26705 Lnet/minecraft/block/entity/PistonBlockEntity;field_26705:I
  • Constructor Details

    • PistonBlockEntity

      public PistonBlockEntity(BlockPos pos, BlockState state)
      Mappings:
      Namespace Name Mixin selector
      official <init> Ldbm;<init>(Lgt;Ldbq;)V
      intermediary <init> Lnet/minecraft/class_2669;<init>(Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V
      named <init> Lnet/minecraft/block/entity/PistonBlockEntity;<init>(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)V
    • PistonBlockEntity

      public PistonBlockEntity(BlockPos pos, BlockState state, BlockState pushedBlock, Direction facing, boolean extending, boolean source)
      Mappings:
      Namespace Name Mixin selector
      official <init> Ldbm;<init>(Lgt;Ldbq;Ldbq;Lgz;ZZ)V
      intermediary <init> Lnet/minecraft/class_2669;<init>(Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;ZZ)V
      named <init> Lnet/minecraft/block/entity/PistonBlockEntity;<init>(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/Direction;ZZ)V
  • Method Details

    • toInitialChunkDataNbt

      public NbtCompound toInitialChunkDataNbt()
      Returns the serialized state of this block entity that is observable by clients.

      This is sent alongside the initial chunk data, as well as when the block entity implements BlockEntity.toUpdatePacket() and decides to use the default BlockEntityUpdateS2CPacket.

      "Observable state" is a state that clients can observe without specific interaction. For example, CampfireBlockEntity's cooked items are observable states, but chests' inventories are not observable states, since the player must first open that chest before they can see the contents.

      To send all NBT data of this block entity saved to disk, return BlockEntity.createNbt().

      Overrides:
      toInitialChunkDataNbt in class BlockEntity
      Returns:
      the serialized state of this block entity that is observable by clients
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official aq_ Lcze;aq_()Lre;
      intermediary method_16887 Lnet/minecraft/class_2586;method_16887()Lnet/minecraft/class_2487;
      named toInitialChunkDataNbt Lnet/minecraft/block/entity/BlockEntity;toInitialChunkDataNbt()Lnet/minecraft/nbt/NbtCompound;
    • isExtending

      public boolean isExtending()
      Mappings:
      Namespace Name Mixin selector
      official c Ldbm;c()Z
      intermediary method_11501 Lnet/minecraft/class_2669;method_11501()Z
      named isExtending Lnet/minecraft/block/entity/PistonBlockEntity;isExtending()Z
    • getFacing

      public Direction getFacing()
      Mappings:
      Namespace Name Mixin selector
      official d Ldbm;d()Lgz;
      intermediary method_11498 Lnet/minecraft/class_2669;method_11498()Lnet/minecraft/class_2350;
      named getFacing Lnet/minecraft/block/entity/PistonBlockEntity;getFacing()Lnet/minecraft/util/math/Direction;
    • isSource

      public boolean isSource()
      Mappings:
      Namespace Name Mixin selector
      official f Ldbm;f()Z
      intermediary method_11515 Lnet/minecraft/class_2669;method_11515()Z
      named isSource Lnet/minecraft/block/entity/PistonBlockEntity;isSource()Z
    • getProgress

      public float getProgress(float tickDelta)
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a(F)F
      intermediary method_11499 Lnet/minecraft/class_2669;method_11499(F)F
      named getProgress Lnet/minecraft/block/entity/PistonBlockEntity;getProgress(F)F
    • getRenderOffsetX

      public float getRenderOffsetX(float tickDelta)
      Mappings:
      Namespace Name Mixin selector
      official b Ldbm;b(F)F
      intermediary method_11494 Lnet/minecraft/class_2669;method_11494(F)F
      named getRenderOffsetX Lnet/minecraft/block/entity/PistonBlockEntity;getRenderOffsetX(F)F
    • getRenderOffsetY

      public float getRenderOffsetY(float tickDelta)
      Mappings:
      Namespace Name Mixin selector
      official c Ldbm;c(F)F
      intermediary method_11511 Lnet/minecraft/class_2669;method_11511(F)F
      named getRenderOffsetY Lnet/minecraft/block/entity/PistonBlockEntity;getRenderOffsetY(F)F
    • getRenderOffsetZ

      public float getRenderOffsetZ(float tickDelta)
      Mappings:
      Namespace Name Mixin selector
      official d Ldbm;d(F)F
      intermediary method_11507 Lnet/minecraft/class_2669;method_11507(F)F
      named getRenderOffsetZ Lnet/minecraft/block/entity/PistonBlockEntity;getRenderOffsetZ(F)F
    • getAmountExtended

      private float getAmountExtended(float progress)
      Mappings:
      Namespace Name Mixin selector
      official e Ldbm;e(F)F
      intermediary method_11504 Lnet/minecraft/class_2669;method_11504(F)F
      named getAmountExtended Lnet/minecraft/block/entity/PistonBlockEntity;getAmountExtended(F)F
    • getHeadBlockState

      private BlockState getHeadBlockState()
      Mappings:
      Namespace Name Mixin selector
      official w Ldbm;w()Ldbq;
      intermediary method_11496 Lnet/minecraft/class_2669;method_11496()Lnet/minecraft/class_2680;
      named getHeadBlockState Lnet/minecraft/block/entity/PistonBlockEntity;getHeadBlockState()Lnet/minecraft/block/BlockState;
    • pushEntities

      private static void pushEntities(World world, BlockPos pos, float float2, PistonBlockEntity blockEntity)
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a(Lcmi;Lgt;FLdbm;)V
      intermediary method_11503 Lnet/minecraft/class_2669;method_11503(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;FLnet/minecraft/class_2669;)V
      named pushEntities Lnet/minecraft/block/entity/PistonBlockEntity;pushEntities(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;FLnet/minecraft/block/entity/PistonBlockEntity;)V
    • moveEntity

      private static void moveEntity(Direction direction, Entity entity, double double2, Direction movementDirection)
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a(Lgz;Lbfh;DLgz;)V
      intermediary method_23672 Lnet/minecraft/class_2669;method_23672(Lnet/minecraft/class_2350;Lnet/minecraft/class_1297;DLnet/minecraft/class_2350;)V
      named moveEntity Lnet/minecraft/block/entity/PistonBlockEntity;moveEntity(Lnet/minecraft/util/math/Direction;Lnet/minecraft/entity/Entity;DLnet/minecraft/util/math/Direction;)V
    • moveEntitiesInHoneyBlock

      private static void moveEntitiesInHoneyBlock(World world, BlockPos pos, float float2, PistonBlockEntity blockEntity)
      Mappings:
      Namespace Name Mixin selector
      official b Ldbm;b(Lcmi;Lgt;FLdbm;)V
      intermediary method_23674 Lnet/minecraft/class_2669;method_23674(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;FLnet/minecraft/class_2669;)V
      named moveEntitiesInHoneyBlock Lnet/minecraft/block/entity/PistonBlockEntity;moveEntitiesInHoneyBlock(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;FLnet/minecraft/block/entity/PistonBlockEntity;)V
    • canMoveEntity

      private static boolean canMoveEntity(Box box, Entity entity)
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a(Lecz;Lbfh;)Z
      intermediary method_23671 Lnet/minecraft/class_2669;method_23671(Lnet/minecraft/class_238;Lnet/minecraft/class_1297;)Z
      named canMoveEntity Lnet/minecraft/block/entity/PistonBlockEntity;canMoveEntity(Lnet/minecraft/util/math/Box;Lnet/minecraft/entity/Entity;)Z
    • isPushingHoneyBlock

      private boolean isPushingHoneyBlock()
      Mappings:
      Namespace Name Mixin selector
      official x Ldbm;x()Z
      intermediary method_23364 Lnet/minecraft/class_2669;method_23364()Z
      named isPushingHoneyBlock Lnet/minecraft/block/entity/PistonBlockEntity;isPushingHoneyBlock()Z
    • getMovementDirection

      public Direction getMovementDirection()
      Mappings:
      Namespace Name Mixin selector
      official g Ldbm;g()Lgz;
      intermediary method_11506 Lnet/minecraft/class_2669;method_11506()Lnet/minecraft/class_2350;
      named getMovementDirection Lnet/minecraft/block/entity/PistonBlockEntity;getMovementDirection()Lnet/minecraft/util/math/Direction;
    • getIntersectionSize

      private static double getIntersectionSize(Box box, Direction direction, Box box2)
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a(Lecz;Lgz;Lecz;)D
      intermediary method_11497 Lnet/minecraft/class_2669;method_11497(Lnet/minecraft/class_238;Lnet/minecraft/class_2350;Lnet/minecraft/class_238;)D
      named getIntersectionSize Lnet/minecraft/block/entity/PistonBlockEntity;getIntersectionSize(Lnet/minecraft/util/math/Box;Lnet/minecraft/util/math/Direction;Lnet/minecraft/util/math/Box;)D
    • offsetHeadBox

      private static Box offsetHeadBox(BlockPos pos, Box box, PistonBlockEntity blockEntity)
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a(Lgt;Lecz;Ldbm;)Lecz;
      intermediary method_11500 Lnet/minecraft/class_2669;method_11500(Lnet/minecraft/class_2338;Lnet/minecraft/class_238;Lnet/minecraft/class_2669;)Lnet/minecraft/class_238;
      named offsetHeadBox Lnet/minecraft/block/entity/PistonBlockEntity;offsetHeadBox(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Box;Lnet/minecraft/block/entity/PistonBlockEntity;)Lnet/minecraft/util/math/Box;
    • push

      private static void push(BlockPos pos, Entity entity, Direction direction, double amount)
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a(Lgt;Lbfh;Lgz;D)V
      intermediary method_11514 Lnet/minecraft/class_2669;method_11514(Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_2350;D)V
      named push Lnet/minecraft/block/entity/PistonBlockEntity;push(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/Entity;Lnet/minecraft/util/math/Direction;D)V
    • getPushedBlock

      public BlockState getPushedBlock()
      Mappings:
      Namespace Name Mixin selector
      official i Ldbm;i()Ldbq;
      intermediary method_11495 Lnet/minecraft/class_2669;method_11495()Lnet/minecraft/class_2680;
      named getPushedBlock Lnet/minecraft/block/entity/PistonBlockEntity;getPushedBlock()Lnet/minecraft/block/BlockState;
    • finish

      public void finish()
      Mappings:
      Namespace Name Mixin selector
      official j Ldbm;j()V
      intermediary method_11513 Lnet/minecraft/class_2669;method_11513()V
      named finish Lnet/minecraft/block/entity/PistonBlockEntity;finish()V
    • tick

      public static void tick(World world, BlockPos pos, BlockState state, PistonBlockEntity blockEntity)
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a(Lcmi;Lgt;Ldbq;Ldbm;)V
      intermediary method_31707 Lnet/minecraft/class_2669;method_31707(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2669;)V
      named tick Lnet/minecraft/block/entity/PistonBlockEntity;tick(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Lnet/minecraft/block/entity/PistonBlockEntity;)V
    • readNbt

      public void readNbt(NbtCompound nbt)
      Reads data from nbt. Subclasses should override this if they store a persistent data.

      NBT is a storage format; therefore, a data from NBT is loaded to a block entity instance's fields, which are used for other operations instead of the NBT. The data is written back to NBT when saving the block 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:
      readNbt in class BlockEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lcze;a(Lre;)V
      intermediary method_11014 Lnet/minecraft/class_2586;method_11014(Lnet/minecraft/class_2487;)V
      named readNbt Lnet/minecraft/block/entity/BlockEntity;readNbt(Lnet/minecraft/nbt/NbtCompound;)V
    • writeNbt

      protected void writeNbt(NbtCompound nbt)
      Writes data to nbt. Subclasses should override this if they store a persistent data.

      NBT is a storage format; therefore, a data from NBT is loaded to a block entity instance's fields, which are used for other operations instead of the NBT. The data is written back to NBT when saving the block entity.

      Overrides:
      writeNbt in class BlockEntity
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official b Lcze;b(Lre;)V
      intermediary method_11007 Lnet/minecraft/class_2586;method_11007(Lnet/minecraft/class_2487;)V
      named writeNbt Lnet/minecraft/block/entity/BlockEntity;writeNbt(Lnet/minecraft/nbt/NbtCompound;)V
    • getCollisionShape

      public VoxelShape getCollisionShape(BlockView world, BlockPos pos)
      Mappings:
      Namespace Name Mixin selector
      official a Ldbm;a(Lclo;Lgt;)Ledx;
      intermediary method_11512 Lnet/minecraft/class_2669;method_11512(Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265;
      named getCollisionShape Lnet/minecraft/block/entity/PistonBlockEntity;getCollisionShape(Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/util/shape/VoxelShape;
    • getSavedWorldTime

      public long getSavedWorldTime()
      Mappings:
      Namespace Name Mixin selector
      official v Ldbm;v()J
      intermediary method_11508 Lnet/minecraft/class_2669;method_11508()J
      named getSavedWorldTime Lnet/minecraft/block/entity/PistonBlockEntity;getSavedWorldTime()J
    • setWorld

      public void setWorld(World world)
      Sets the world the block entity belongs to.

      This should not be called manually; however, this can be overridden to initialize fields dependent on the world.

      Overrides:
      setWorld in class BlockEntity
      Mappings:
      Namespace Name Mixin selector
      official a Lcze;a(Lcmi;)V
      intermediary method_31662 Lnet/minecraft/class_2586;method_31662(Lnet/minecraft/class_1937;)V
      named setWorld Lnet/minecraft/block/entity/BlockEntity;setWorld(Lnet/minecraft/world/World;)V