Compiled from "ConsumableHerbBlockItem.java"
public class com.ogaba.sa_survival.item.common.ConsumableHerbBlockItem extends net.minecraft.world.item.BlockItem implements com.ogaba.sa_survival.item.tooltip.EffectTooltipSource {
  private final java.util.List<net.minecraft.world.effect.MobEffectInstance> effects;

  private final int duration;

  private final net.minecraft.sounds.SoundEvent chewSound;

  private final net.minecraft.sounds.SoundEvent finishSound;

  public com.ogaba.sa_survival.item.common.ConsumableHerbBlockItem(net.minecraft.world.level.block.Block, net.minecraft.world.item.Item$Properties, java.util.List<net.minecraft.world.effect.MobEffectInstance>, int, net.minecraft.sounds.SoundEvent, net.minecraft.sounds.SoundEvent);
    Code:
       0: aload_0
       1: aload_1
       2: aload_2
       3: invokespecial #29                 // Method net/minecraft/world/item/BlockItem."<init>":(Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V
       6: aload_0
       7: aload_3
       8: ifnonnull     17
      11: invokestatic  #35                 // Method java/util/Collections.emptyList:()Ljava/util/List;
      14: goto          21
      17: aload_3
      18: invokestatic  #45                 // InterfaceMethod java/util/List.copyOf:(Ljava/util/Collection;)Ljava/util/List;
      21: putfield      #47                 // Field effects:Ljava/util/List;
      24: aload_0
      25: iload         4
      27: putfield      #49                 // Field duration:I
      30: aload_0
      31: aload         5
      33: putfield      #51                 // Field chewSound:Lnet/minecraft/sounds/SoundEvent;
      36: aload_0
      37: aload         6
      39: putfield      #53                 // Field finishSound:Lnet/minecraft/sounds/SoundEvent;
      42: return

  public boolean m_5812_(net.minecraft.world.item.ItemStack);
    Code:
       0: iconst_0
       1: ireturn

  public boolean m_8120_(net.minecraft.world.item.ItemStack);
    Code:
       0: iconst_0
       1: ireturn

  public boolean isBookEnchantable(net.minecraft.world.item.ItemStack, net.minecraft.world.item.ItemStack);
    Code:
       0: iconst_0
       1: ireturn

  public boolean canApplyAtEnchantingTable(net.minecraft.world.item.ItemStack, net.minecraft.world.item.enchantment.Enchantment);
    Code:
       0: iconst_0
       1: ireturn

  public java.util.List<net.minecraft.world.effect.MobEffectInstance> getTooltipEffects();
    Code:
       0: aload_0
       1: getfield      #47                 // Field effects:Ljava/util/List;
       4: areturn

  public void m_7373_(net.minecraft.world.item.ItemStack, net.minecraft.world.level.Level, java.util.List<net.minecraft.network.chat.Component>, net.minecraft.world.item.TooltipFlag);
    Code:
       0: aload_0
       1: invokevirtual #79                 // Method getTooltipEffects:()Ljava/util/List;
       4: aload_3
       5: fconst_1
       6: invokestatic  #85                 // Method com/ogaba/sa_survival/item/tooltip/EffectTooltipUtil.addEffectTooltip:(Ljava/util/List;Ljava/util/List;F)V
       9: aload_0
      10: aload_1
      11: aload_2
      12: aload_3
      13: aload         4
      15: invokespecial #87                 // Method net/minecraft/world/item/BlockItem.m_7373_:(Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Ljava/util/List;Lnet/minecraft/world/item/TooltipFlag;)V
      18: return

  public net.minecraft.world.InteractionResultHolder<net.minecraft.world.item.ItemStack> m_7203_(net.minecraft.world.level.Level, net.minecraft.world.entity.player.Player, net.minecraft.world.InteractionHand);
    Code:
       0: aload_2
       1: invokevirtual #102                // Method net/minecraft/world/entity/player/Player.m_6144_:()Z
       4: ifeq          15
       7: aload_0
       8: aload_1
       9: aload_2
      10: aload_3
      11: invokespecial #104                // Method net/minecraft/world/item/BlockItem.m_7203_:(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResultHolder;
      14: areturn
      15: aload_2
      16: aload_3
      17: invokevirtual #108                // Method net/minecraft/world/entity/player/Player.m_6672_:(Lnet/minecraft/world/InteractionHand;)V
      20: aload_2
      21: aload_3
      22: invokevirtual #112                // Method net/minecraft/world/entity/player/Player.m_21120_:(Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/item/ItemStack;
      25: invokestatic  #118                // Method net/minecraft/world/InteractionResultHolder.m_19096_:(Ljava/lang/Object;)Lnet/minecraft/world/InteractionResultHolder;
      28: areturn

  public void m_5929_(net.minecraft.world.level.Level, net.minecraft.world.entity.LivingEntity, net.minecraft.world.item.ItemStack, int);
    Code:
       0: aload_1
       1: getfield      #130                // Field net/minecraft/world/level/Level.f_46443_:Z
       4: ifne          14
       7: aload_0
       8: getfield      #51                 // Field chewSound:Lnet/minecraft/sounds/SoundEvent;
      11: ifnonnull     15
      14: return
      15: iload         4
      17: bipush        12
      19: irem
      20: ifeq          24
      23: return
      24: aload_1
      25: aconst_null
      26: aload_2
      27: invokevirtual #136                // Method net/minecraft/world/entity/LivingEntity.m_20185_:()D
      30: aload_2
      31: invokevirtual #139                // Method net/minecraft/world/entity/LivingEntity.m_20186_:()D
      34: aload_2
      35: invokevirtual #142                // Method net/minecraft/world/entity/LivingEntity.m_20189_:()D
      38: aload_0
      39: getfield      #51                 // Field chewSound:Lnet/minecraft/sounds/SoundEvent;
      42: aload_2
      43: invokevirtual #146                // Method net/minecraft/world/entity/LivingEntity.m_5720_:()Lnet/minecraft/sounds/SoundSource;
      46: ldc           #147                // float 0.4f
      48: ldc           #148                // float 0.9f
      50: aload_1
      51: getfield      #152                // Field net/minecraft/world/level/Level.f_46441_:Lnet/minecraft/util/RandomSource;
      54: invokeinterface #158,  1          // InterfaceMethod net/minecraft/util/RandomSource.m_188501_:()F
      59: ldc           #159                // float 0.2f
      61: fmul
      62: fadd
      63: invokevirtual #163                // Method net/minecraft/world/level/Level.m_6263_:(Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V
      66: return

  public net.minecraft.world.item.ItemStack m_5922_(net.minecraft.world.item.ItemStack, net.minecraft.world.level.Level, net.minecraft.world.entity.LivingEntity);
    Code:
       0: aload_2
       1: getfield      #130                // Field net/minecraft/world/level/Level.f_46443_:Z
       4: ifne          92
       7: aload_0
       8: getfield      #47                 // Field effects:Ljava/util/List;
      11: invokeinterface #172,  1          // InterfaceMethod java/util/List.iterator:()Ljava/util/Iterator;
      16: astore        4
      18: aload         4
      20: invokeinterface #177,  1          // InterfaceMethod java/util/Iterator.hasNext:()Z
      25: ifeq          57
      28: aload         4
      30: invokeinterface #181,  1          // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
      35: checkcast     #183                // class net/minecraft/world/effect/MobEffectInstance
      38: astore        5
      40: aload_3
      41: new           #183                // class net/minecraft/world/effect/MobEffectInstance
      44: dup
      45: aload         5
      47: invokespecial #186                // Method net/minecraft/world/effect/MobEffectInstance."<init>":(Lnet/minecraft/world/effect/MobEffectInstance;)V
      50: invokevirtual #190                // Method net/minecraft/world/entity/LivingEntity.m_7292_:(Lnet/minecraft/world/effect/MobEffectInstance;)Z
      53: pop
      54: goto          18
      57: aload_0
      58: getfield      #53                 // Field finishSound:Lnet/minecraft/sounds/SoundEvent;
      61: ifnull        92
      64: aload_2
      65: aconst_null
      66: aload_3
      67: invokevirtual #136                // Method net/minecraft/world/entity/LivingEntity.m_20185_:()D
      70: aload_3
      71: invokevirtual #139                // Method net/minecraft/world/entity/LivingEntity.m_20186_:()D
      74: aload_3
      75: invokevirtual #142                // Method net/minecraft/world/entity/LivingEntity.m_20189_:()D
      78: aload_0
      79: getfield      #53                 // Field finishSound:Lnet/minecraft/sounds/SoundEvent;
      82: aload_3
      83: invokevirtual #146                // Method net/minecraft/world/entity/LivingEntity.m_5720_:()Lnet/minecraft/sounds/SoundSource;
      86: ldc           #191                // float 0.6f
      88: fconst_1
      89: invokevirtual #163                // Method net/minecraft/world/level/Level.m_6263_:(Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V
      92: aload_3
      93: instanceof    #98                 // class net/minecraft/world/entity/player/Player
      96: ifeq          121
      99: aload_3
     100: checkcast     #98                 // class net/minecraft/world/entity/player/Player
     103: astore        4
     105: aload         4
     107: invokevirtual #195                // Method net/minecraft/world/entity/player/Player.m_150110_:()Lnet/minecraft/world/entity/player/Abilities;
     110: getfield      #200                // Field net/minecraft/world/entity/player/Abilities.f_35937_:Z
     113: ifne          121
     116: aload_1
     117: iconst_1
     118: invokevirtual #206                // Method net/minecraft/world/item/ItemStack.m_41774_:(I)V
     121: aload_1
     122: areturn

  public net.minecraft.world.item.UseAnim m_6164_(net.minecraft.world.item.ItemStack);
    Code:
       0: getstatic     #216                // Field net/minecraft/world/item/UseAnim.EAT:Lnet/minecraft/world/item/UseAnim;
       3: areturn

  public int m_8105_(net.minecraft.world.item.ItemStack);
    Code:
       0: aload_0
       1: getfield      #49                 // Field duration:I
       4: ireturn

  public static com.ogaba.sa_survival.item.common.ConsumableHerbBlockItem$Builder builder(net.minecraft.world.level.block.Block, net.minecraft.world.item.Item$Properties);
    Code:
       0: new           #9                  // class com/ogaba/sa_survival/item/common/ConsumableHerbBlockItem$Builder
       3: dup
       4: aload_0
       5: aload_1
       6: invokespecial #221                // Method com/ogaba/sa_survival/item/common/ConsumableHerbBlockItem$Builder."<init>":(Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V
       9: areturn
}
