BloodMagic/src/main/java/WayofTime/bloodmagic/compat/guideapi/CompatibilityGuideAPI.java

71 lines
2 KiB
Java
Raw Normal View History

2016-06-03 16:56:13 -07:00
package WayofTime.bloodmagic.compat.guideapi;
import net.minecraft.init.Blocks;
2016-06-03 16:56:13 -07:00
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
import net.minecraft.item.crafting.IRecipe;
2016-06-04 13:56:02 -07:00
import net.minecraftforge.fml.common.FMLCommonHandler;
2016-06-03 16:56:13 -07:00
import net.minecraftforge.fml.common.registry.GameRegistry;
2016-06-04 13:56:02 -07:00
import net.minecraftforge.fml.relauncher.Side;
import WayofTime.bloodmagic.compat.ICompatibility;
import amerifrance.guideapi.api.GuideAPI;
import net.minecraftforge.oredict.ShapelessOreRecipe;
2016-06-03 16:56:13 -07:00
public class CompatibilityGuideAPI implements ICompatibility
{
private static IRecipe guideRecipe = null;
private static boolean worldFlag;
2016-06-03 16:56:13 -07:00
@Override
public void loadCompatibility(InitializationPhase phase)
{
switch (phase)
{
case PRE_INIT:
{
GuideBloodMagic.initBook();
GameRegistry.register(GuideBloodMagic.guideBook);
if (FMLCommonHandler.instance().getSide() == Side.CLIENT)
GuideAPI.setModel(GuideBloodMagic.guideBook);
2016-06-04 13:56:02 -07:00
break;
}
case INIT:
{
guideRecipe = new ShapelessOreRecipe(GuideAPI.getStackFromBook(GuideBloodMagic.guideBook), new ItemStack(Items.BOOK), Blocks.GLASS, Items.FEATHER);
break;
}
case POST_INIT:
{
if (FMLCommonHandler.instance().getSide() == Side.CLIENT)
GuideBloodMagic.initCategories();
break;
}
case MAPPING:
{
if (!worldFlag) {
GameRegistry.addRecipe(guideRecipe);
worldFlag = true;
} else {
CraftingManager.getInstance().getRecipeList().remove(guideRecipe);
worldFlag = false;
}
break;
}
2016-06-03 16:56:13 -07:00
}
}
@Override
public String getModId()
{
2016-06-03 16:56:13 -07:00
return "guideapi";
}
@Override
public boolean enableCompat()
{
2016-06-03 16:56:13 -07:00
return true;
}
}