47 lines
1.8 KiB
Java
47 lines
1.8 KiB
Java
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);
|
|
}
|
|
}
|