Skip to content

Commit

Permalink
feat: re-enable jei now that it is available on 1.19.3
Browse files Browse the repository at this point in the history
  • Loading branch information
klikli-dev committed Jan 30, 2023
1 parent 79455d5 commit e2dcd87
Show file tree
Hide file tree
Showing 10 changed files with 633 additions and 638 deletions.
9 changes: 4 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ repositories {
}
maven {
name = "Progwm16 maven - JEI"
url = 'https://dvs1.progwml6.com/files/maven'
url = 'https://maven.blamejared.com/'
content {
includeGroup "mezz.jei"
}
Expand Down Expand Up @@ -145,10 +145,9 @@ dependencies {
minecraft "net.minecraftforge:forge:${forge_version}"

//Jei
//TODO: reenable once updated
// compileOnly fg.deobf("mezz.jei:jei-${jei_mc_version}-common-api:${jei_version}")
// compileOnly fg.deobf("mezz.jei:jei-${jei_mc_version}-forge-api:${jei_version}")
// runtimeOnly fg.deobf("mezz.jei:jei-${jei_mc_version}-forge:${jei_version}")
compileOnly fg.deobf("mezz.jei:jei-${jei_mc_version}-common-api:${jei_version}")
compileOnly fg.deobf("mezz.jei:jei-${jei_mc_version}-forge-api:${jei_version}")
runtimeOnly fg.deobf("mezz.jei:jei-${jei_mc_version}-forge:${jei_version}")

//curios
compileOnly fg.deobf("top.theillusivec4.curios:curios-forge:${curios_mc_version}-${curios_version}:api")
Expand Down
12 changes: 6 additions & 6 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -5,22 +5,22 @@ org.gradle.daemon=false

mod_version=0.0.1
mc_version=1.19.3
forge_version=1.19.3-44.0.41
forge_version=1.19.3-44.1.8

mapping_channel=parchment
#postfix is target mc version, optional prefix is source parchment mc version
mapping_version=2022.12.18-1.19.3

jei_mc_version=1.19.2
jei_version=11.3.0.262
jei_mc_version=1.19.3
jei_version=12.1.1.13
curios_mc_version=1.19.3
curios_version=5.1.1.2
geckolib_mc_version=1.19.3
geckolib_version=4.0.2

# SmartBrainLib v1.7.4
smartbrainlib_file_id=4277541
smartbrainlib_src_file_id=4277542
# SmartBrainLib v1.8
smartbrainlib_file_id=4312180
smartbrainlib_src_file_id=4312182

modonomicon_mc_version=1.19.3
modonomicon_version=1.23.2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,20 +23,19 @@
package com.github.klikli_dev.occultism.integration.jei;

import com.google.common.base.Strings;
//import mezz.jei.api.runtime.IJeiRuntime;
import mezz.jei.api.runtime.IJeiRuntime;

public class JeiAccess {
//TODO: enable once jei is updated
public static String getFilterText() {
// IJeiRuntime runtime = JeiPlugin.getJeiRuntime();
// if (runtime != null)
// return runtime.getIngredientFilter().getFilterText();
IJeiRuntime runtime = JeiPlugin.getJeiRuntime();
if (runtime != null)
return runtime.getIngredientFilter().getFilterText();
return "";
}

public static void setFilterText(String filter) {
// IJeiRuntime runtime = JeiPlugin.getJeiRuntime();
// if (runtime != null)
// runtime.getIngredientFilter().setFilterText(Strings.nullToEmpty(filter));
IJeiRuntime runtime = JeiPlugin.getJeiRuntime();
if (runtime != null)
runtime.getIngredientFilter().setFilterText(Strings.nullToEmpty(filter));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -30,22 +30,22 @@
import com.github.klikli_dev.occultism.crafting.recipe.MinerRecipe;
import com.github.klikli_dev.occultism.crafting.recipe.RitualRecipe;
import com.github.klikli_dev.occultism.crafting.recipe.SpiritFireRecipe;
//import com.github.klikli_dev.occultism.integration.jei.recipes.CrushingRecipeCategory;
//import com.github.klikli_dev.occultism.integration.jei.recipes.MinerRecipeCategory;
//import com.github.klikli_dev.occultism.integration.jei.recipes.RitualRecipeCategory;
//import com.github.klikli_dev.occultism.integration.jei.recipes.SpiritFireRecipeCategory;
import com.github.klikli_dev.occultism.integration.jei.recipes.CrushingRecipeCategory;
import com.github.klikli_dev.occultism.integration.jei.recipes.MinerRecipeCategory;
import com.github.klikli_dev.occultism.integration.jei.recipes.RitualRecipeCategory;
import com.github.klikli_dev.occultism.integration.jei.recipes.SpiritFireRecipeCategory;
import com.github.klikli_dev.occultism.registry.OccultismBlocks;
import com.github.klikli_dev.occultism.registry.OccultismItems;
import com.github.klikli_dev.occultism.registry.OccultismRecipes;
//import mezz.jei.api.IModPlugin;
//import mezz.jei.api.constants.VanillaTypes;
//import mezz.jei.api.helpers.IStackHelper;
//import mezz.jei.api.recipe.transfer.IRecipeTransferHandlerHelper;
//import mezz.jei.api.registration.IRecipeCatalystRegistration;
//import mezz.jei.api.registration.IRecipeCategoryRegistration;
//import mezz.jei.api.registration.IRecipeRegistration;
//import mezz.jei.api.registration.IRecipeTransferRegistration;
//import mezz.jei.api.runtime.IJeiRuntime;
import mezz.jei.api.IModPlugin;
import mezz.jei.api.constants.VanillaTypes;
import mezz.jei.api.helpers.IStackHelper;
import mezz.jei.api.recipe.transfer.IRecipeTransferHandlerHelper;
import mezz.jei.api.registration.IRecipeCatalystRegistration;
import mezz.jei.api.registration.IRecipeCategoryRegistration;
import mezz.jei.api.registration.IRecipeRegistration;
import mezz.jei.api.registration.IRecipeTransferRegistration;
import mezz.jei.api.runtime.IJeiRuntime;
import net.minecraft.client.Minecraft;
import net.minecraft.client.multiplayer.ClientLevel;
import net.minecraft.network.chat.Component;
Expand All @@ -56,87 +56,87 @@
import net.minecraftforge.registries.ForgeRegistries;

import java.util.List;
//TODO: enable once jei is updated
//@mezz.jei.api.JeiPlugin
//public class JeiPlugin implements IModPlugin {
//
// protected static IJeiRuntime runtime;
//
// public static IJeiRuntime getJeiRuntime() {
// return runtime;
// }
//
// @Override
// public ResourceLocation getPluginUid() {
// return new ResourceLocation(Occultism.MODID, "jei");
// }
//
// @Override
// public void registerCategories(IRecipeCategoryRegistration registration) {
// registration.addRecipeCategories(new SpiritFireRecipeCategory(registration.getJeiHelpers().getGuiHelper()));
// registration.addRecipeCategories(new CrushingRecipeCategory(registration.getJeiHelpers().getGuiHelper()));
// registration.addRecipeCategories(new MinerRecipeCategory(registration.getJeiHelpers().getGuiHelper()));
// registration.addRecipeCategories(new RitualRecipeCategory(registration.getJeiHelpers().getGuiHelper()));
// }
//
// @Override
// public void registerRecipes(IRecipeRegistration registration) {
// ClientLevel level = Minecraft.getInstance().level;
// RecipeManager recipeManager = level.getRecipeManager();
//
// List<SpiritFireRecipe> spiritFireRecipes = recipeManager.getAllRecipesFor(OccultismRecipes.SPIRIT_FIRE_TYPE.get());
// registration.addRecipes(JeiRecipeTypes.SPIRIT_FIRE, spiritFireRecipes);
//
// List<CrushingRecipe> crushingRecipes = recipeManager.getAllRecipesFor(OccultismRecipes.CRUSHING_TYPE.get());
// registration.addRecipes(JeiRecipeTypes.CRUSHING, crushingRecipes);
//
// List<MinerRecipe> minerRecipes = recipeManager.getAllRecipesFor(OccultismRecipes.MINER_TYPE.get());
// registration.addRecipes(JeiRecipeTypes.MINER, minerRecipes);
//
// List<RitualRecipe> ritualRecipes = recipeManager.getAllRecipesFor(OccultismRecipes.RITUAL_TYPE.get());
// registration.addRecipes(JeiRecipeTypes.RITUAL, ritualRecipes);
//
// this.registerIngredientInfo(registration, OccultismItems.TALLOW.get());
// this.registerIngredientInfo(registration, OccultismBlocks.OTHERSTONE.get());
// this.registerIngredientInfo(registration, OccultismBlocks.OTHERWORLD_LOG.get());
// this.registerIngredientInfo(registration, OccultismBlocks.OTHERWORLD_LEAVES.get());
// this.registerIngredientInfo(registration, OccultismBlocks.OTHERWORLD_SAPLING.get());
// this.registerIngredientInfo(registration, OccultismBlocks.OTHERWORLD_SAPLING_NATURAL.get());
// this.registerIngredientInfo(registration, OccultismBlocks.IESNIUM_ORE.get());
// this.registerIngredientInfo(registration, OccultismBlocks.SPIRIT_FIRE.get());
// this.registerIngredientInfo(registration, OccultismItems.DATURA.get());
// }
//
// @Override
// public void registerRecipeTransferHandlers(IRecipeTransferRegistration registration) {
// IStackHelper stackHelper = registration.getJeiHelpers().getStackHelper();
// IRecipeTransferHandlerHelper handlerHelper = registration.getTransferHelper();
// registration.addUniversalRecipeTransferHandler(new StorageControllerRecipeTransferHandler<>(
// StorageControllerContainer.class, handlerHelper));
// registration.addUniversalRecipeTransferHandler(new StorageControllerRecipeTransferHandler<>(
// StorageRemoteContainer.class, handlerHelper));
// registration.addUniversalRecipeTransferHandler(new StorageControllerRecipeTransferHandler<>(
// StableWormholeContainer.class, handlerHelper));
// }
//
// @Override
// public void registerRecipeCatalysts(IRecipeCatalystRegistration registration) {
// registration.addRecipeCatalyst(new ItemStack(OccultismBlocks.SPIRIT_FIRE.get()),
// JeiRecipeTypes.SPIRIT_FIRE);
// registration.addRecipeCatalyst(new ItemStack(OccultismBlocks.DIMENSIONAL_MINESHAFT.get()),
// JeiRecipeTypes.MINER);
// registration.addRecipeCatalyst(new ItemStack(OccultismBlocks.GOLDEN_SACRIFICIAL_BOWL.get()),
// JeiRecipeTypes.RITUAL);
// }
//
// @Override
// public void onRuntimeAvailable(IJeiRuntime jeiRuntime) {
// JeiPlugin.runtime = jeiRuntime;
// JeiSettings.setJeiLoaded(true);
// }
//
// public void registerIngredientInfo(IRecipeRegistration registration, ItemLike ingredient) {
// registration.addIngredientInfo(new ItemStack(ingredient.asItem()), VanillaTypes.ITEM_STACK,
// Component.translatable("jei." + Occultism.MODID + ".ingredient." + ForgeRegistries.ITEMS.getKey(ingredient.asItem()).getPath() + ".description"));
// }
//}

@mezz.jei.api.JeiPlugin
public class JeiPlugin implements IModPlugin {

protected static IJeiRuntime runtime;

public static IJeiRuntime getJeiRuntime() {
return runtime;
}

@Override
public ResourceLocation getPluginUid() {
return new ResourceLocation(Occultism.MODID, "jei");
}

@Override
public void registerCategories(IRecipeCategoryRegistration registration) {
registration.addRecipeCategories(new SpiritFireRecipeCategory(registration.getJeiHelpers().getGuiHelper()));
registration.addRecipeCategories(new CrushingRecipeCategory(registration.getJeiHelpers().getGuiHelper()));
registration.addRecipeCategories(new MinerRecipeCategory(registration.getJeiHelpers().getGuiHelper()));
registration.addRecipeCategories(new RitualRecipeCategory(registration.getJeiHelpers().getGuiHelper()));
}

@Override
public void registerRecipes(IRecipeRegistration registration) {
ClientLevel level = Minecraft.getInstance().level;
RecipeManager recipeManager = level.getRecipeManager();

List<SpiritFireRecipe> spiritFireRecipes = recipeManager.getAllRecipesFor(OccultismRecipes.SPIRIT_FIRE_TYPE.get());
registration.addRecipes(JeiRecipeTypes.SPIRIT_FIRE, spiritFireRecipes);

List<CrushingRecipe> crushingRecipes = recipeManager.getAllRecipesFor(OccultismRecipes.CRUSHING_TYPE.get());
registration.addRecipes(JeiRecipeTypes.CRUSHING, crushingRecipes);

List<MinerRecipe> minerRecipes = recipeManager.getAllRecipesFor(OccultismRecipes.MINER_TYPE.get());
registration.addRecipes(JeiRecipeTypes.MINER, minerRecipes);

List<RitualRecipe> ritualRecipes = recipeManager.getAllRecipesFor(OccultismRecipes.RITUAL_TYPE.get());
registration.addRecipes(JeiRecipeTypes.RITUAL, ritualRecipes);

this.registerIngredientInfo(registration, OccultismItems.TALLOW.get());
this.registerIngredientInfo(registration, OccultismBlocks.OTHERSTONE.get());
this.registerIngredientInfo(registration, OccultismBlocks.OTHERWORLD_LOG.get());
this.registerIngredientInfo(registration, OccultismBlocks.OTHERWORLD_LEAVES.get());
this.registerIngredientInfo(registration, OccultismBlocks.OTHERWORLD_SAPLING.get());
this.registerIngredientInfo(registration, OccultismBlocks.OTHERWORLD_SAPLING_NATURAL.get());
this.registerIngredientInfo(registration, OccultismBlocks.IESNIUM_ORE.get());
this.registerIngredientInfo(registration, OccultismBlocks.SPIRIT_FIRE.get());
this.registerIngredientInfo(registration, OccultismItems.DATURA.get());
}

@Override
public void registerRecipeTransferHandlers(IRecipeTransferRegistration registration) {
IStackHelper stackHelper = registration.getJeiHelpers().getStackHelper();
IRecipeTransferHandlerHelper handlerHelper = registration.getTransferHelper();
registration.addUniversalRecipeTransferHandler(new StorageControllerRecipeTransferHandler<>(
StorageControllerContainer.class, handlerHelper));
registration.addUniversalRecipeTransferHandler(new StorageControllerRecipeTransferHandler<>(
StorageRemoteContainer.class, handlerHelper));
registration.addUniversalRecipeTransferHandler(new StorageControllerRecipeTransferHandler<>(
StableWormholeContainer.class, handlerHelper));
}

@Override
public void registerRecipeCatalysts(IRecipeCatalystRegistration registration) {
registration.addRecipeCatalyst(new ItemStack(OccultismBlocks.SPIRIT_FIRE.get()),
JeiRecipeTypes.SPIRIT_FIRE);
registration.addRecipeCatalyst(new ItemStack(OccultismBlocks.DIMENSIONAL_MINESHAFT.get()),
JeiRecipeTypes.MINER);
registration.addRecipeCatalyst(new ItemStack(OccultismBlocks.GOLDEN_SACRIFICIAL_BOWL.get()),
JeiRecipeTypes.RITUAL);
}

@Override
public void onRuntimeAvailable(IJeiRuntime jeiRuntime) {
JeiPlugin.runtime = jeiRuntime;
JeiSettings.setJeiLoaded(true);
}

public void registerIngredientInfo(IRecipeRegistration registration, ItemLike ingredient) {
registration.addIngredientInfo(new ItemStack(ingredient.asItem()), VanillaTypes.ITEM_STACK,
Component.translatable("jei." + Occultism.MODID + ".ingredient." + ForgeRegistries.ITEMS.getKey(ingredient.asItem()).getPath() + ".description"));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,17 @@

import com.github.klikli_dev.occultism.Occultism;
import com.github.klikli_dev.occultism.crafting.recipe.*;
//import mezz.jei.api.recipe.RecipeType;
import mezz.jei.api.recipe.RecipeType;

public class JeiRecipeTypes {
//TODO: enable once jei is updated
// public static final RecipeType<SpiritTradeRecipe> SPIRIT_TRADE =
// RecipeType.create(Occultism.MODID, "spirit_trade", SpiritTradeRecipe.class);
// public static final RecipeType<SpiritFireRecipe> SPIRIT_FIRE =
// RecipeType.create(Occultism.MODID, "spirit_fire", SpiritFireRecipe.class);
// public static final RecipeType<CrushingRecipe> CRUSHING =
// RecipeType.create(Occultism.MODID, "crushing", CrushingRecipe.class);
// public static final RecipeType<MinerRecipe> MINER =
// RecipeType.create(Occultism.MODID, "miner", MinerRecipe.class);
// public static final RecipeType<RitualRecipe> RITUAL =
// RecipeType.create(Occultism.MODID, "ritual", RitualRecipe.class);
public static final RecipeType<SpiritTradeRecipe> SPIRIT_TRADE =
RecipeType.create(Occultism.MODID, "spirit_trade", SpiritTradeRecipe.class);
public static final RecipeType<SpiritFireRecipe> SPIRIT_FIRE =
RecipeType.create(Occultism.MODID, "spirit_fire", SpiritFireRecipe.class);
public static final RecipeType<CrushingRecipe> CRUSHING =
RecipeType.create(Occultism.MODID, "crushing", CrushingRecipe.class);
public static final RecipeType<MinerRecipe> MINER =
RecipeType.create(Occultism.MODID, "miner", MinerRecipe.class);
public static final RecipeType<RitualRecipe> RITUAL =
RecipeType.create(Occultism.MODID, "ritual", RitualRecipe.class);
}
Loading

0 comments on commit e2dcd87

Please sign in to comment.