Class FluidIdentifierItem

java.lang.Object
net.minecraft.world.item.Item
com.hbm_m.item.liquids.FluidIdentifierItem
All Implemented Interfaces:
IItemControlReceiver, IItemFluidIdentifier, net.minecraft.world.flag.FeatureElement, net.minecraft.world.level.ItemLike, net.minecraftforge.common.extensions.IForgeItem

public class FluidIdentifierItem extends net.minecraft.world.item.Item implements IItemFluidIdentifier, IItemControlReceiver
Universal fluid identifier. Has two slots (primary/secondary) for fluid types. RMB: swap primary and secondary. Shift+RMB in air: open GUI to select fluids. Shift+RMB on a fluid duct: paint that fluid onto the entire connected duct network (same block type).
  • Nested Class Summary

    Nested classes/interfaces inherited from class net.minecraft.world.item.Item

    net.minecraft.world.item.Item.Properties
  • Field Summary

    Fields inherited from class net.minecraft.world.item.Item

    BASE_ATTACK_DAMAGE_UUID, BASE_ATTACK_SPEED_UUID, BY_BLOCK, canRepair, EAT_DURATION, MAX_BAR_WIDTH, MAX_STACK_SIZE

    Fields inherited from interface net.minecraft.world.flag.FeatureElement

    FILTERED_REGISTRIES
  • Constructor Summary

    Constructors
    Constructor
    Description
    FluidIdentifierItem(net.minecraft.world.item.Item.Properties properties)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    appendHoverText(net.minecraft.world.item.ItemStack stack, net.minecraft.world.level.Level level, List<net.minecraft.network.chat.Component> tooltip, net.minecraft.world.item.TooltipFlag flag)
     
    net.minecraft.network.chat.Component
    getName(net.minecraft.world.item.ItemStack stack)
     
    static int
    getTintColor(net.minecraft.world.item.ItemStack stack)
    Returns tint color for primary fluid (for ItemColor).
    static net.minecraft.world.level.material.Fluid
    getType(net.minecraft.world.item.ItemStack stack, boolean primary)
     
    net.minecraft.world.level.material.Fluid
    getType(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.item.ItemStack stack)
    Returns the fluid type this identifier is set to.
    static String
    getTypeName(net.minecraft.world.item.ItemStack stack, boolean primary)
     
    void
    receiveControl(net.minecraft.world.item.ItemStack stack, net.minecraft.nbt.CompoundTag data)
     
    static net.minecraft.world.level.material.Fluid
    resolvePrimaryForTank(net.minecraft.world.item.ItemStack stack)
    Резолвит первичный тип идентификатора для задания типа цистерны.
    static void
    setType(net.minecraft.world.item.ItemStack stack, String fluidName, boolean primary)
     
    static void
    setType(net.minecraft.world.item.ItemStack stack, net.minecraft.world.level.material.Fluid fluid, boolean primary)
     
    net.minecraft.world.InteractionResultHolder<net.minecraft.world.item.ItemStack>
    use(net.minecraft.world.level.Level level, net.minecraft.world.entity.player.Player player, net.minecraft.world.InteractionHand hand)
     
    net.minecraft.world.InteractionResult
    useOn(net.minecraft.world.item.context.UseOnContext context)
     

    Methods inherited from class net.minecraft.world.item.Item

    asItem, builtInRegistryHolder, byBlock, byId, canAttackBlock, canBeDepleted, canBeHurtBy, canFitInsideContainerItems, finishUsingItem, getBarColor, getBarWidth, getCraftingRemainingItem, getDefaultAttributeModifiers, getDefaultInstance, getDescription, getDescriptionId, getDescriptionId, getDestroySpeed, getDrinkingSound, getEatingSound, getEnchantmentValue, getFoodProperties, getId, getMaxDamage, getMaxStackSize, getOrCreateDescriptionId, getPlayerPOVHitResult, getRarity, getRenderPropertiesInternal, getTooltipImage, getUseAnimation, getUseDuration, hasCraftingRemainingItem, hurtEnemy, initializeClient, interactLivingEntity, inventoryTick, isBarVisible, isComplex, isCorrectToolForDrops, isEdible, isEnchantable, isFireResistant, isFoil, isRepairable, isValidRepairItem, mineBlock, onCraftedBy, onDestroyed, onUseTick, overrideOtherStackedOnMe, overrideStackedOnOther, releaseUsing, requiredFeatures, shouldOverrideMultiplayerNbt, toString, useOnRelease, verifyTagAfterLoad

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface net.minecraft.world.flag.FeatureElement

    isEnabled

    Methods inherited from interface net.minecraftforge.common.extensions.IForgeItem

    canApplyAtEnchantingTable, canContinueUsing, canDisableShield, canElytraFly, canEquip, canGrindstoneRepair, canPerformAction, canWalkOnPowderedSnow, createEntity, damageItem, doesSneakBypassUse, elytraFlightTick, getAllEnchantments, getArmorTexture, getAttributeModifiers, getBurnTime, getCraftingRemainingItem, getCreatorModId, getDamage, getDefaultTooltipHideFlags, getEnchantmentLevel, getEnchantmentValue, getEntityLifespan, getEquipmentSlot, getFoodProperties, getHighlightTip, getMaxDamage, getMaxStackSize, getShareTag, getSweepHitBox, getXpRepairRatio, hasCraftingRemainingItem, hasCustomEntity, initCapabilities, isBookEnchantable, isCorrectToolForDrops, isDamageable, isDamaged, isEnderMask, isNotReplaceableByPickAction, isPiglinCurrency, makesPiglinsNeutral, onArmorTick, onBlockStartBreak, onDestroyed, onDroppedByPlayer, onEntityItemUpdate, onEntitySwing, onHorseArmorTick, onInventoryTick, onItemUseFirst, onLeftClickEntity, onStopUsing, readShareTag, setDamage, shouldCauseBlockBreakReset, shouldCauseReequipAnimation
  • Constructor Details

    • FluidIdentifierItem

      public FluidIdentifierItem(net.minecraft.world.item.Item.Properties properties)
  • Method Details

    • useOn

      public net.minecraft.world.InteractionResult useOn(net.minecraft.world.item.context.UseOnContext context)
      Overrides:
      useOn in class net.minecraft.world.item.Item
    • use

      public net.minecraft.world.InteractionResultHolder<net.minecraft.world.item.ItemStack> use(net.minecraft.world.level.Level level, net.minecraft.world.entity.player.Player player, net.minecraft.world.InteractionHand hand)
      Overrides:
      use in class net.minecraft.world.item.Item
    • getName

      public net.minecraft.network.chat.Component getName(net.minecraft.world.item.ItemStack stack)
      Overrides:
      getName in class net.minecraft.world.item.Item
    • appendHoverText

      public void appendHoverText(net.minecraft.world.item.ItemStack stack, @Nullable net.minecraft.world.level.Level level, List<net.minecraft.network.chat.Component> tooltip, net.minecraft.world.item.TooltipFlag flag)
      Overrides:
      appendHoverText in class net.minecraft.world.item.Item
    • getType

      public net.minecraft.world.level.material.Fluid getType(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.item.ItemStack stack)
      Description copied from interface: IItemFluidIdentifier
      Returns the fluid type this identifier is set to. Level and pos may be null when used in GUI. Fluids.EMPTY (or mod "none" normalized by ducts) clears duct type when painting.
      Specified by:
      getType in interface IItemFluidIdentifier
    • receiveControl

      public void receiveControl(net.minecraft.world.item.ItemStack stack, net.minecraft.nbt.CompoundTag data)
      Specified by:
      receiveControl in interface IItemControlReceiver
    • getType

      public static net.minecraft.world.level.material.Fluid getType(net.minecraft.world.item.ItemStack stack, boolean primary)
    • resolvePrimaryForTank

      @Nullable public static net.minecraft.world.level.material.Fluid resolvePrimaryForTank(net.minecraft.world.item.ItemStack stack)
      Резолвит первичный тип идентификатора для задания типа цистерны. Жидкость найдена → возвращает её; первичный не задан / "none" / "empty" → ModFluids.NONE; не FluidIdentifierItem → null.
    • getTypeName

      public static String getTypeName(net.minecraft.world.item.ItemStack stack, boolean primary)
    • setType

      public static void setType(net.minecraft.world.item.ItemStack stack, net.minecraft.world.level.material.Fluid fluid, boolean primary)
    • setType

      public static void setType(net.minecraft.world.item.ItemStack stack, String fluidName, boolean primary)
    • getTintColor

      public static int getTintColor(net.minecraft.world.item.ItemStack stack)
      Returns tint color for primary fluid (for ItemColor).