Class BlockPredicatesComponent

java.lang.Object
net.minecraft.component.type.BlockPredicatesComponent

public class BlockPredicatesComponent extends Object
Stores a list of block predicates to match against a given block in a world.

The result is cached to reduce cost for successive lookups on the same block.

API Note:
This class is used to store the data and implement the functionality of the minecraft:can_place_on and minecraft:can_break components.
Mappings:
Namespace Name
named net/minecraft/component/type/BlockPredicatesComponent
intermediary net/minecraft/class_6538
official daw
  • Field Details

    • LOGGER

      private static final Logger LOGGER
      Mappings:
      Namespace Name Mixin selector
      named LOGGER Lnet/minecraft/component/type/BlockPredicatesComponent;LOGGER:Lorg/slf4j/Logger;
      intermediary field_60366 Lnet/minecraft/class_6538;field_60366:Lorg/slf4j/Logger;
      official e Ldaw;e:Lorg/slf4j/Logger;
    • CODEC

      public static final com.mojang.serialization.Codec<BlockPredicatesComponent> CODEC
      Mappings:
      Namespace Name Mixin selector
      named CODEC Lnet/minecraft/component/type/BlockPredicatesComponent;CODEC:Lcom/mojang/serialization/Codec;
      intermediary field_49245 Lnet/minecraft/class_6538;field_49245:Lcom/mojang/serialization/Codec;
      official a Ldaw;a:Lcom/mojang/serialization/Codec;
    • PACKET_CODEC

      public static final PacketCodec<RegistryByteBuf,BlockPredicatesComponent> PACKET_CODEC
      Mappings:
      Namespace Name Mixin selector
      named PACKET_CODEC Lnet/minecraft/component/type/BlockPredicatesComponent;PACKET_CODEC:Lnet/minecraft/network/codec/PacketCodec;
      intermediary field_49246 Lnet/minecraft/class_6538;field_49246:Lnet/minecraft/class_9139;
      official b Ldaw;b:Lzm;
    • CAN_BREAK_TEXT

      public static final Text CAN_BREAK_TEXT
      Mappings:
      Namespace Name Mixin selector
      named CAN_BREAK_TEXT Lnet/minecraft/component/type/BlockPredicatesComponent;CAN_BREAK_TEXT:Lnet/minecraft/text/Text;
      intermediary field_49247 Lnet/minecraft/class_6538;field_49247:Lnet/minecraft/class_2561;
      official c Ldaw;c:Lxo;
    • CAN_PLACE_TEXT

      public static final Text CAN_PLACE_TEXT
      Mappings:
      Namespace Name Mixin selector
      named CAN_PLACE_TEXT Lnet/minecraft/component/type/BlockPredicatesComponent;CAN_PLACE_TEXT:Lnet/minecraft/text/Text;
      intermediary field_49248 Lnet/minecraft/class_6538;field_49248:Lnet/minecraft/class_2561;
      official d Ldaw;d:Lxo;
    • CAN_USE_UNKNOWN_TEXT

      private static final Text CAN_USE_UNKNOWN_TEXT
      Mappings:
      Namespace Name Mixin selector
      named CAN_USE_UNKNOWN_TEXT Lnet/minecraft/component/type/BlockPredicatesComponent;CAN_USE_UNKNOWN_TEXT:Lnet/minecraft/text/Text;
      intermediary field_49251 Lnet/minecraft/class_6538;field_49251:Lnet/minecraft/class_2561;
      official f Ldaw;f:Lxo;
    • predicates

      private final List<BlockPredicate> predicates
      Mappings:
      Namespace Name Mixin selector
      named predicates Lnet/minecraft/component/type/BlockPredicatesComponent;predicates:Ljava/util/List;
      intermediary field_49252 Lnet/minecraft/class_6538;field_49252:Ljava/util/List;
      official g Ldaw;g:Ljava/util/List;
    • tooltipText

      @Nullable private @Nullable List<Text> tooltipText
      Mappings:
      Namespace Name Mixin selector
      named tooltipText Lnet/minecraft/component/type/BlockPredicatesComponent;tooltipText:Ljava/util/List;
      intermediary field_49254 Lnet/minecraft/class_6538;field_49254:Ljava/util/List;
      official h Ldaw;h:Ljava/util/List;
    • cachedPos

      Mappings:
      Namespace Name Mixin selector
      named cachedPos Lnet/minecraft/component/type/BlockPredicatesComponent;cachedPos:Lnet/minecraft/block/pattern/CachedBlockPosition;
      intermediary field_34450 Lnet/minecraft/class_6538;field_34450:Lnet/minecraft/class_2694;
      official i Ldaw;i:Leef;
    • lastResult

      private boolean lastResult
      Mappings:
      Namespace Name Mixin selector
      named lastResult Lnet/minecraft/component/type/BlockPredicatesComponent;lastResult:Z
      intermediary field_34451 Lnet/minecraft/class_6538;field_34451:Z
      official j Ldaw;j:Z
    • nbtAware

      private boolean nbtAware
      Mappings:
      Namespace Name Mixin selector
      named nbtAware Lnet/minecraft/component/type/BlockPredicatesComponent;nbtAware:Z
      intermediary field_34452 Lnet/minecraft/class_6538;field_34452:Z
      official k Ldaw;k:Z
  • Constructor Details

    • BlockPredicatesComponent

      public BlockPredicatesComponent(List<BlockPredicate> predicates)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/component/type/BlockPredicatesComponent;<init>(Ljava/util/List;)V
      intermediary <init> Lnet/minecraft/class_6538;<init>(Ljava/util/List;)V
      official <init> Ldaw;<init>(Ljava/util/List;)V
  • Method Details

    • canUseCache

      private static boolean canUseCache(CachedBlockPosition pos, @Nullable @Nullable CachedBlockPosition cachedPos, boolean nbtAware)
      Mappings:
      Namespace Name Mixin selector
      named canUseCache Lnet/minecraft/component/type/BlockPredicatesComponent;canUseCache(Lnet/minecraft/block/pattern/CachedBlockPosition;Lnet/minecraft/block/pattern/CachedBlockPosition;Z)Z
      intermediary method_38071 Lnet/minecraft/class_6538;method_38071(Lnet/minecraft/class_2694;Lnet/minecraft/class_2694;Z)Z
      official a Ldaw;a(Leef;Leef;Z)Z
    • getNbt

      private static NbtCompound getNbt(BlockEntity blockEntity, DynamicRegistryManager registries, ErrorReporter errorReporter)
      Mappings:
      Namespace Name Mixin selector
      named getNbt Lnet/minecraft/component/type/BlockPredicatesComponent;getNbt(Lnet/minecraft/block/entity/BlockEntity;Lnet/minecraft/registry/DynamicRegistryManager;Lnet/minecraft/util/ErrorReporter;)Lnet/minecraft/nbt/NbtCompound;
      intermediary method_71392 Lnet/minecraft/class_6538;method_71392(Lnet/minecraft/class_2586;Lnet/minecraft/class_5455;Lnet/minecraft/class_8942;)Lnet/minecraft/class_2487;
      official a Ldaw;a(Leaz;Ljz;Lbci;)Lui;
    • check

      public boolean check(CachedBlockPosition cachedPos)
      Returns true if any of the predicates in this component matched against the block at pos, false otherwise.
      Returns:
      true if any of the predicates in this component matched against the block at pos, false otherwise
      Mappings:
      Namespace Name Mixin selector
      named check Lnet/minecraft/component/type/BlockPredicatesComponent;check(Lnet/minecraft/block/pattern/CachedBlockPosition;)Z
      intermediary method_38070 Lnet/minecraft/class_6538;method_38070(Lnet/minecraft/class_2694;)Z
      official a Ldaw;a(Leef;)Z
    • getOrCreateTooltipText

      private List<Text> getOrCreateTooltipText()
      Mappings:
      Namespace Name Mixin selector
      named getOrCreateTooltipText Lnet/minecraft/component/type/BlockPredicatesComponent;getOrCreateTooltipText()Ljava/util/List;
      intermediary method_65042 Lnet/minecraft/class_6538;method_65042()Ljava/util/List;
      official a Ldaw;a()Ljava/util/List;
    • addTooltips

      public void addTooltips(Consumer<Text> adder)
      Mappings:
      Namespace Name Mixin selector
      named addTooltips Lnet/minecraft/component/type/BlockPredicatesComponent;addTooltips(Ljava/util/function/Consumer;)V
      intermediary method_57330 Lnet/minecraft/class_6538;method_57330(Ljava/util/function/Consumer;)V
      official a Ldaw;a(Ljava/util/function/Consumer;)V
    • createTooltipText

      private static List<Text> createTooltipText(List<BlockPredicate> blockPredicates)
      Mappings:
      Namespace Name Mixin selector
      named createTooltipText Lnet/minecraft/component/type/BlockPredicatesComponent;createTooltipText(Ljava/util/List;)Ljava/util/List;
      intermediary method_57329 Lnet/minecraft/class_6538;method_57329(Ljava/util/List;)Ljava/util/List;
      official a Ldaw;a(Ljava/util/List;)Ljava/util/List;
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
      Mappings:
      Namespace Name Mixin selector
      named equals Lnet/minecraft/component/type/BlockPredicatesComponent;equals(Ljava/lang/Object;)Z
      intermediary equals Lnet/minecraft/class_6538;equals(Ljava/lang/Object;)Z
      official equals Ldaw;equals(Ljava/lang/Object;)Z
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object