updated JEI, and improved support
This commit is contained in:
parent
5cf116d8a4
commit
ba90e49822
7 changed files with 48 additions and 46 deletions
|
@ -109,7 +109,7 @@ dependencies {
|
|||
// deobfCompile name: "MineTweaker3", version: "1.8-3.0.10B", classifier: "Dev"
|
||||
// shade 'IC2-Classic-API-STANDALONE:IC2-Classic-API-STANDALONE:1.1.0.19-5:api'
|
||||
compile 'RebornCore:RebornCore-1.8.8:1.1.0.+:dev'
|
||||
deobfCompile "mezz.jei:jei_1.8.8:2.0.5.6"
|
||||
deobfCompile "mezz.jei:jei_1.8.8:2.3.0.18"
|
||||
|
||||
testCompile 'junit:junit:4.12'
|
||||
}
|
||||
|
|
|
@ -14,18 +14,18 @@ public class CompatManager {
|
|||
public static boolean isIC2Loaded = false;
|
||||
public static boolean isIC2ClassicLoaded = false;
|
||||
public static boolean isClassicEnet = false;
|
||||
public static boolean isGregTechLoaded = false;
|
||||
public static boolean isGregTechLoaded = false;
|
||||
|
||||
public CompatManager() {
|
||||
isIC2Loaded = Loader.isModLoaded("IC2");
|
||||
isIC2ClassicLoaded = false;
|
||||
if(isIC2ClassicLoaded){
|
||||
if (isIC2ClassicLoaded) {
|
||||
isClassicEnet = true;
|
||||
}
|
||||
if(Loader.isModLoaded("Uncomplication")){
|
||||
if (Loader.isModLoaded("Uncomplication")) {
|
||||
isClassicEnet = true;
|
||||
}
|
||||
if(Loader.isModLoaded("gregtech")){
|
||||
if (Loader.isModLoaded("gregtech")) {
|
||||
isGregTechLoaded = true;
|
||||
}
|
||||
registerCompact(JEIPlugin.class, "JEI");
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package techreborn.compat.jei;
|
||||
|
||||
import mezz.jei.api.JEIManager;
|
||||
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
|
||||
|
@ -10,7 +9,7 @@ import techreborn.compat.ICompatModule;
|
|||
public class JEIPlugin implements ICompatModule {
|
||||
@Override
|
||||
public void preInit(FMLPreInitializationEvent event) {
|
||||
JEIManager.pluginRegistry.registerPlugin(new TechRebornPlugin());
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,20 +1,18 @@
|
|||
package techreborn.compat.jei;
|
||||
|
||||
import mezz.jei.api.IModPlugin;
|
||||
import mezz.jei.api.recipe.IRecipeCategory;
|
||||
import mezz.jei.api.recipe.IRecipeHandler;
|
||||
import mezz.jei.api.IModRegistry;
|
||||
import net.minecraftforge.fml.common.Loader;
|
||||
import techreborn.api.reactor.FusionReactorRecipeHelper;
|
||||
import techreborn.api.recipe.RecipeHandler;
|
||||
import techreborn.compat.jei.fusionReactor.FusionReactorRecipeCategory;
|
||||
import techreborn.compat.jei.fusionReactor.FusionReactorRecipeHandler;
|
||||
import techreborn.lib.ModInfo;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@mezz.jei.api.JEIPlugin
|
||||
public class TechRebornPlugin implements IModPlugin {
|
||||
@Override
|
||||
public boolean isModLoaded() {
|
||||
|
@ -22,23 +20,15 @@ public class TechRebornPlugin implements IModPlugin {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Iterable<? extends IRecipeCategory> getRecipeCategories() {
|
||||
return Arrays.asList(
|
||||
public void register(IModRegistry registry) {
|
||||
registry.addRecipeCategories(
|
||||
new FusionReactorRecipeCategory()
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Iterable<? extends IRecipeHandler> getRecipeHandlers() {
|
||||
return Arrays.asList(
|
||||
registry.addRecipeHandlers(
|
||||
new FusionReactorRecipeHandler()
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Iterable<Object> getRecipes() {
|
||||
List<Object> recipes = new ArrayList<>();
|
||||
recipes.addAll(FusionReactorRecipeHelper.reactorRecipes);
|
||||
return recipes;
|
||||
registry.addRecipes(recipes);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,15 +2,14 @@ package techreborn.compat.jei.fusionReactor;
|
|||
|
||||
import mezz.jei.api.JEIManager;
|
||||
import mezz.jei.api.gui.IDrawable;
|
||||
import mezz.jei.api.gui.IGuiFluidTanks;
|
||||
import mezz.jei.api.gui.IGuiItemStacks;
|
||||
import mezz.jei.api.gui.IRecipeLayout;
|
||||
import mezz.jei.api.recipe.IRecipeCategory;
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import techreborn.client.gui.GuiFusionReactor;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import java.util.Collection;
|
||||
|
||||
public class FusionReactorRecipeCategory implements IRecipeCategory {
|
||||
|
||||
|
@ -22,13 +21,19 @@ public class FusionReactorRecipeCategory implements IRecipeCategory {
|
|||
private final IDrawable background;
|
||||
|
||||
public FusionReactorRecipeCategory() {
|
||||
background = JEIManager.guiHelper.createDrawable(GuiFusionReactor.texture, 55, 16, 82, 54);
|
||||
background = JEIManager.guiHelper.createDrawable(GuiFusionReactor.texture, 86, 16, 85, 64, 0, 40, 20, 20);
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
@Override
|
||||
public String getUid() {
|
||||
return "FusionReactor";
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
@Override
|
||||
public String getTitle() {
|
||||
return "Fustion Reactor";
|
||||
return "Fusion Reactor";
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
|
@ -38,18 +43,23 @@ public class FusionReactorRecipeCategory implements IRecipeCategory {
|
|||
}
|
||||
|
||||
@Override
|
||||
public void init(@Nonnull IGuiItemStacks guiItemStacks, @Nonnull IGuiFluidTanks guiFluidTanks) {
|
||||
guiItemStacks.init(inputSlot1, 0, 0);
|
||||
guiItemStacks.init(inputSlot2, 0, 25);
|
||||
guiItemStacks.init(outputSlot, 60, 18);
|
||||
public void drawExtras(Minecraft minecraft) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRecipe(@Nonnull IGuiItemStacks guiItemStacks, @Nonnull IGuiFluidTanks guiFluidTanks, @Nonnull IRecipeWrapper recipeWrapper) {
|
||||
if(recipeWrapper instanceof FusionReactorRecipeWrapper){
|
||||
guiItemStacks.set(inputSlot1, (ItemStack) recipeWrapper.getInputs().get(0));
|
||||
guiItemStacks.set(inputSlot2, (ItemStack) recipeWrapper.getInputs().get(1));
|
||||
guiItemStacks.set(outputSlot, recipeWrapper.getOutputs());
|
||||
public void init(@Nonnull IRecipeLayout recipeLayout) {
|
||||
recipeLayout.getItemStacks().init(inputSlot1, true, 21, 0);
|
||||
recipeLayout.getItemStacks().init(inputSlot2, true, 21, 36);
|
||||
recipeLayout.getItemStacks().init(outputSlot, false, 80, 18);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRecipe(@Nonnull IRecipeLayout recipeLayout, @Nonnull IRecipeWrapper recipeWrapper) {
|
||||
if (recipeWrapper instanceof FusionReactorRecipeWrapper) {
|
||||
recipeLayout.getItemStacks().set(inputSlot1, (ItemStack) recipeWrapper.getInputs().get(0));
|
||||
recipeLayout.getItemStacks().set(inputSlot2, (ItemStack) recipeWrapper.getInputs().get(1));
|
||||
recipeLayout.getItemStacks().set(outputSlot, recipeWrapper.getOutputs());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package techreborn.compat.jei.fusionReactor;
|
||||
|
||||
import mezz.jei.api.recipe.IRecipeCategory;
|
||||
import mezz.jei.api.recipe.IRecipeHandler;
|
||||
import mezz.jei.api.recipe.IRecipeWrapper;
|
||||
import techreborn.api.reactor.FusionReactorRecipe;
|
||||
|
@ -18,8 +17,8 @@ public class FusionReactorRecipeHandler implements IRecipeHandler<FusionReactorR
|
|||
|
||||
@Nonnull
|
||||
@Override
|
||||
public Class<? extends IRecipeCategory> getRecipeCategoryClass() {
|
||||
return FusionReactorRecipeCategory.class;
|
||||
public String getRecipeCategoryUid() {
|
||||
return "FusionReactor";
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
|
|
|
@ -8,7 +8,6 @@ import net.minecraft.item.ItemStack;
|
|||
import net.minecraftforge.fluids.FluidStack;
|
||||
import techreborn.api.reactor.FusionReactorRecipe;
|
||||
|
||||
import java.awt.*;
|
||||
import java.text.DecimalFormat;
|
||||
import java.text.DecimalFormatSymbols;
|
||||
import java.text.NumberFormat;
|
||||
|
@ -53,15 +52,20 @@ public class FusionReactorRecipeWrapper implements IRecipeWrapper {
|
|||
@Override
|
||||
public void drawInfo(Minecraft minecraft) {
|
||||
FontRenderer fontRendererObj = minecraft.fontRendererObj;
|
||||
// fontRendererObj.drawString(baseRecipe.getEuTick() + "", 69 - fontRendererObj.getStringWidth(baseRecipe.getEuTick() + "") / 2, 0, Color.gray.getRGB());
|
||||
// fontRendererObj.drawString(baseRecipe.getEuTick() + "", 69 - fontRendererObj.getStringWidth(baseRecipe.getEuTick() + "") / 2, 0, Color.gray.getRGB());
|
||||
|
||||
DecimalFormat formatter = (DecimalFormat) NumberFormat.getInstance(Locale.US);
|
||||
DecimalFormatSymbols symbols = formatter.getDecimalFormatSymbols();
|
||||
symbols.setGroupingSeparator('.');
|
||||
formatter.setDecimalFormatSymbols(symbols);
|
||||
fontRendererObj.drawString("Start: " + formatter.format(baseRecipe.getStartEU()) + "EU", 16, 0, -1);
|
||||
fontRendererObj.drawString("EU/t: " + baseRecipe.getEuTick() , 16, 10, -1);
|
||||
fontRendererObj.drawString("Ticks to process: " + baseRecipe.getTickTime(), 14, 20, -1);
|
||||
fontRendererObj.drawString("Time to process: " + baseRecipe.getTickTime() / 20 + " seconds", 14, 30, -1);
|
||||
fontRendererObj.drawStringWithShadow("Start: " + formatter.format(baseRecipe.getStartEU()) + "EU", 0, 70, -1);
|
||||
fontRendererObj.drawStringWithShadow("EU/t: " + baseRecipe.getEuTick(), 0, 80, -1);
|
||||
fontRendererObj.drawStringWithShadow("Ticks to process: " + baseRecipe.getTickTime(), 0, 90, -1);
|
||||
fontRendererObj.drawStringWithShadow("Time to process: " + baseRecipe.getTickTime() / 20 + " seconds", 0, 100, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean usesOreDictionaryComparison() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue