package net.mcreator.tbfme.item; import net.minecraft.world.World; import net.minecraft.util.math.Direction; import net.minecraft.util.math.BlockPos; import net.minecraft.util.Rarity; import net.minecraft.util.ActionResult; import net.minecraft.text.Text; import net.minecraft.text.LiteralText; import net.minecraft.item.ItemUsageContext; import net.minecraft.item.ItemStack; import net.minecraft.item.Item; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.client.item.TooltipContext; import net.minecraft.block.BlockState; import net.mcreator.tbfme.procedures.PaintBrushRightClickedOnBlockProcedure; import net.fabricmc.fabric.api.item.v1.FabricItemSettings; import net.fabricmc.api.Environment; import net.fabricmc.api.EnvType; import java.util.Map; import java.util.List; import java.util.HashMap; public class PaintBrushItem extends Item { public PaintBrushItem() { super(new FabricItemSettings().group(TBFMEItemGroup.get()).maxCount(1).rarity(Rarity.COMMON)); } @Override public int getMaxUseTime(ItemStack itemstack) { return 0; } @Override public float getMiningSpeedMultiplier(ItemStack stack, BlockState state) { return (float) (1F); } @Override @Environment(EnvType.CLIENT) public void appendTooltip(ItemStack stack, World world, List tooltip, TooltipContext context) { tooltip.add(new LiteralText("a red paint brush but there is no paint :(")); } @Override public int getEnchantability() { return 0; } @Override public ActionResult useOnBlock(ItemUsageContext context) { World world = context.getWorld(); BlockPos pos = context.getBlockPos(); PlayerEntity entity = context.getPlayer(); Direction direction = context.getSide(); int x = pos.getX(); int y = pos.getY(); int z = pos.getZ(); ItemStack itemstack = context.getItem(); { Map $_dependencies = new HashMap<>(); $_dependencies.put("entity", entity); $_dependencies.put("x", x); $_dependencies.put("y", y); $_dependencies.put("z", z); $_dependencies.put("world", world); PaintBrushRightClickedOnBlockProcedure.executeProcedure($_dependencies); } return ActionResult.PASS; } }