How to Create a Custom Food

In this tutorial I will be showing you how to create a custom food source for you to eat in game.  Let's begin!

Create a new Item Class, just like we did with the ItemBase. This time however, make sure you extend ItemFood.
Inside the constructor of this class, we need to adda few things that are specific towards foods.
public ItemCustomFood(String name, int amount, boolean isWolfFood)
{
    super(amount, isWolfFood);
    setUnlocalizedName(name);
    setRegistryName(name);
    setCreativeTab(Main.tutorialtab);
            
    ItemInit.ITEMS.add(this);
}
The String is to define the registry and unlocalized names.
The integer used in this is to specify how many food points your food will give you.
The isWolfFood boolean value, states whether you can feed a dog this type of food or not.
A boolean is a data type that can have one of 2 values, true or false.
Now we can go into our ItemInit and register the item like so:
public static final Item TUTORIAL_FOOD = new ItemCustomFood("tutorial_food", 4, false);
In this example, my food will fill 4 hunger slots, and can not be fed to wolves/dogs.
Now we need to add our assests, all we need is a texture and a model/item JSON file!
The model file is just like a normal item! This means that you can just copy your item and input the correct string values for the food source!

Finally we're finished!  Thank you for following this tutorial, and remember to look out for the next one!
- Mr. Pineapple