package com.futhark.item; import com.futhark.Futhark; import net.fabricmc.fabric.api.item.v1.FabricItemSettings; import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents; import net.fabricmc.fabric.api.registry.CompostingChanceRegistry; import net.fabricmc.fabric.api.registry.FuelRegistry; import net.minecraft.entity.effect.StatusEffectInstance; import net.minecraft.entity.effect.StatusEffects; import net.minecraft.item.FoodComponent; import net.minecraft.item.Item; import net.minecraft.item.ItemGroups; import net.minecraft.registry.Registries; import net.minecraft.registry.Registry; import net.minecraft.util.Identifier; public class ModItems extends Item { public ModItems(Settings settings) { super(settings); } public static final FoodComponent JAFFA_CAKE_FOOD_COMPONENT = new FoodComponent.Builder() .alwaysEdible() .snack() .hunger(10) .saturationModifier(1.5f) // The duration is in ticks, 20 ticks = 1 second .statusEffect(new StatusEffectInstance(StatusEffects.HASTE, 120 * 20, 2), 1.0f) .build(); public static final Item JAFFA_CAKE = register( new Item(new FabricItemSettings().food(JAFFA_CAKE_FOOD_COMPONENT)), "jaffa_cake" ); public static Item register(Item item, String id) { return Registry.register(Registries.ITEM, new Identifier(Futhark.MOD_ID, id), item); } public static void initialize() { Futhark.LOGGER.info("Registering Items"); ItemGroupEvents.modifyEntriesEvent(ItemGroups.FOOD_AND_DRINK).register((itemGroup) -> itemGroup.add(ModItems.JAFFA_CAKE)); CompostingChanceRegistry.INSTANCE.add(ModItems.JAFFA_CAKE, 1.0f); FuelRegistry.INSTANCE.add(ModItems.JAFFA_CAKE, 30 * 20); } }