Class StemBlock

All Implemented Interfaces:
Fertilizable, ItemConvertible, ToggleableFeature

public class StemBlock extends PlantBlock implements Fertilizable
Mappings:
Namespace Name
official dla
intermediary net/minecraft/class_2513
named net/minecraft/block/StemBlock
  • Field Details

    • CODEC

      public static final com.mojang.serialization.MapCodec<StemBlock> CODEC
      Mappings:
      Namespace Name Mixin selector
      official a Ldla;a:Lcom/mojang/serialization/MapCodec;
      intermediary field_46462 Lnet/minecraft/class_2513;field_46462:Lcom/mojang/serialization/MapCodec;
      named CODEC Lnet/minecraft/block/StemBlock;CODEC:Lcom/mojang/serialization/MapCodec;
    • MAX_AGE

      public static final int MAX_AGE
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official b Ldla;b:I
      intermediary field_31255 Lnet/minecraft/class_2513;field_31255:I
      named MAX_AGE Lnet/minecraft/block/StemBlock;MAX_AGE:I
    • AGE

      public static final IntProperty AGE
      Mappings:
      Namespace Name Mixin selector
      official c Ldla;c:Ldrh;
      intermediary field_11584 Lnet/minecraft/class_2513;field_11584:Lnet/minecraft/class_2758;
      named AGE Lnet/minecraft/block/StemBlock;AGE:Lnet/minecraft/state/property/IntProperty;
    • field_31256

      protected static final float field_31256
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official d Ldla;d:F
      intermediary field_31256 Lnet/minecraft/class_2513;field_31256:F
      named field_31256 Lnet/minecraft/block/StemBlock;field_31256:F
    • AGE_TO_SHAPE

      protected static final VoxelShape[] AGE_TO_SHAPE
      Mappings:
      Namespace Name Mixin selector
      official e Ldla;e:[Leui;
      intermediary field_11583 Lnet/minecraft/class_2513;field_11583:[Lnet/minecraft/class_265;
      named AGE_TO_SHAPE Lnet/minecraft/block/StemBlock;AGE_TO_SHAPE:[Lnet/minecraft/util/shape/VoxelShape;
    • gourdBlock

      private final RegistryKey<Block> gourdBlock
      Mappings:
      Namespace Name Mixin selector
      official f Ldla;f:Lakg;
      intermediary field_11585 Lnet/minecraft/class_2513;field_11585:Lnet/minecraft/class_5321;
      named gourdBlock Lnet/minecraft/block/StemBlock;gourdBlock:Lnet/minecraft/registry/RegistryKey;
    • attachedStemBlock

      private final RegistryKey<Block> attachedStemBlock
      Mappings:
      Namespace Name Mixin selector
      official g Ldla;g:Lakg;
      intermediary field_46463 Lnet/minecraft/class_2513;field_46463:Lnet/minecraft/class_5321;
      named attachedStemBlock Lnet/minecraft/block/StemBlock;attachedStemBlock:Lnet/minecraft/registry/RegistryKey;
    • pickBlockItem

      private final RegistryKey<Item> pickBlockItem
      Mappings:
      Namespace Name Mixin selector
      official h Ldla;h:Lakg;
      intermediary field_27205 Lnet/minecraft/class_2513;field_27205:Lnet/minecraft/class_5321;
      named pickBlockItem Lnet/minecraft/block/StemBlock;pickBlockItem:Lnet/minecraft/registry/RegistryKey;
  • Constructor Details

    • StemBlock

      protected StemBlock(RegistryKey<Block> gourdBlock, RegistryKey<Block> attachedStemBlock, RegistryKey<Item> pickBlockItem, AbstractBlock.Settings settings)
      Mappings:
      Namespace Name Mixin selector
      official <init> Ldla;<init>(Lakg;Lakg;Lakg;Ldqg$d;)V
      intermediary <init> Lnet/minecraft/class_2513;<init>(Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_4970$class_2251;)V
      named <init> Lnet/minecraft/block/StemBlock;<init>(Lnet/minecraft/registry/RegistryKey;Lnet/minecraft/registry/RegistryKey;Lnet/minecraft/registry/RegistryKey;Lnet/minecraft/block/AbstractBlock$Settings;)V
  • Method Details

    • getCodec

      public com.mojang.serialization.MapCodec<StemBlock> getCodec()
      Specified by:
      getCodec in class PlantBlock
      Mappings:
      Namespace Name Mixin selector
      official a Ldqg;a()Lcom/mojang/serialization/MapCodec;
      intermediary method_53969 Lnet/minecraft/class_4970;method_53969()Lcom/mojang/serialization/MapCodec;
      named getCodec Lnet/minecraft/block/AbstractBlock;getCodec()Lcom/mojang/serialization/MapCodec;
    • getOutlineShape

      protected VoxelShape getOutlineShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context)
      Overrides:
      getOutlineShape in class AbstractBlock
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Ldqg;a(Ldqh;Lczj;Lin;Letu;)Leui;
      intermediary method_9530 Lnet/minecraft/class_4970;method_9530(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265;
      named getOutlineShape Lnet/minecraft/block/AbstractBlock;getOutlineShape(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/ShapeContext;)Lnet/minecraft/util/shape/VoxelShape;
    • canPlantOnTop

      protected boolean canPlantOnTop(BlockState floor, BlockView world, BlockPos pos)
      Overrides:
      canPlantOnTop in class PlantBlock
      Mappings:
      Namespace Name Mixin selector
      official b Lddn;b(Ldqh;Lczj;Lin;)Z
      intermediary method_9695 Lnet/minecraft/class_2261;method_9695(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z
      named canPlantOnTop Lnet/minecraft/block/PlantBlock;canPlantOnTop(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;)Z
    • randomTick

      protected void randomTick(BlockState state, ServerWorld world, BlockPos pos, Random random)
      Called server-side when a block gets ticked randomly. This can be overridden to implement various logics, most commonly plant growth. Default implementation does nothing. To control the rate of the action, use random.

      Random tick speed is controlled by the game rule randomTickSpeed and can be disabled. Only blocks within 128-block cylinder (i.e. ignoring Y coordinates) around players receive random ticks.

      Blocks overriding this must use AbstractBlock.Settings.ticksRandomly() block settings.

      Here are some examples:

      Overrides:
      randomTick in class AbstractBlock
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official b Ldqg;b(Ldqh;Laqh;Lin;Layg;)V
      intermediary method_9514 Lnet/minecraft/class_4970;method_9514(Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V
      named randomTick Lnet/minecraft/block/AbstractBlock;randomTick(Lnet/minecraft/block/BlockState;Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/random/Random;)V
    • getPickStack

      public ItemStack getPickStack(WorldView world, BlockPos pos, BlockState state)
      Returns the new item stack when using pick block functionality.

      Pick block is available via middle-clicking by default. Blocks without the corresponding BlockItem, such as crops, should override this method to return the correct item stack.

      Overrides:
      getPickStack in class Block
      Returns:
      the new item stack when using pick block functionality
      Mappings:
      Namespace Name Mixin selector
      official a Ldde;a(Ldag;Lin;Ldqh;)Lcsz;
      intermediary method_9574 Lnet/minecraft/class_2248;method_9574(Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_1799;
      named getPickStack Lnet/minecraft/block/Block;getPickStack(Lnet/minecraft/world/WorldView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Lnet/minecraft/item/ItemStack;
    • isFertilizable

      public boolean isFertilizable(WorldView world, BlockPos pos, BlockState state)
      Specified by:
      isFertilizable in interface Fertilizable
      Mappings:
      Namespace Name Mixin selector
      official b Lddh;b(Ldag;Lin;Ldqh;)Z
      intermediary method_9651 Lnet/minecraft/class_2256;method_9651(Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z
      named isFertilizable Lnet/minecraft/block/Fertilizable;isFertilizable(Lnet/minecraft/world/WorldView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Z
    • canGrow

      public boolean canGrow(World world, Random random, BlockPos pos, BlockState state)
      Specified by:
      canGrow in interface Fertilizable
      Mappings:
      Namespace Name Mixin selector
      official a Lddh;a(Ldad;Layg;Lin;Ldqh;)Z
      intermediary method_9650 Lnet/minecraft/class_2256;method_9650(Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z
      named canGrow Lnet/minecraft/block/Fertilizable;canGrow(Lnet/minecraft/world/World;Lnet/minecraft/util/math/random/Random;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Z
    • grow

      public void grow(ServerWorld world, Random random, BlockPos pos, BlockState state)
      Specified by:
      grow in interface Fertilizable
      Mappings:
      Namespace Name Mixin selector
      official a Lddh;a(Laqh;Layg;Lin;Ldqh;)V
      intermediary method_9652 Lnet/minecraft/class_2256;method_9652(Lnet/minecraft/class_3218;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V
      named grow Lnet/minecraft/block/Fertilizable;grow(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/util/math/random/Random;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)V
    • appendProperties

      protected void appendProperties(StateManager.Builder<Block,BlockState> builder)
      Appends block state properties to this block. To use this, override and call StateManager.Builder.add(net.minecraft.state.property.Property<?>[]) inside the method. See Properties for the list of pre-defined properties.
      Overrides:
      appendProperties in class Block
      Mappings:
      Namespace Name Mixin selector
      official a Ldde;a(Ldqi$a;)V
      intermediary method_9515 Lnet/minecraft/class_2248;method_9515(Lnet/minecraft/class_2689$class_2690;)V
      named appendProperties Lnet/minecraft/block/Block;appendProperties(Lnet/minecraft/state/StateManager$Builder;)V