Fix missing code block (Muramasa)
This commit is contained in:
parent
0bbc311204
commit
b7bde9ca14
1 changed files with 51 additions and 23 deletions
|
@ -37,6 +37,7 @@ import net.minecraftforge.fluids.FluidStack;
|
||||||
import net.minecraftforge.oredict.ShapedOreRecipe;
|
import net.minecraftforge.oredict.ShapedOreRecipe;
|
||||||
import net.minecraftforge.oredict.ShapelessOreRecipe;
|
import net.minecraftforge.oredict.ShapelessOreRecipe;
|
||||||
|
|
||||||
|
import java.lang.reflect.Method;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.Map.Entry;
|
import java.util.Map.Entry;
|
||||||
|
|
||||||
|
@ -555,7 +556,7 @@ public class GT_ModHandler {
|
||||||
if (GregTech_API.sRecipeFile.get(ConfigCategories.Machines.maceration, aInput, true)) {
|
if (GregTech_API.sRecipeFile.get(ConfigCategories.Machines.maceration, aInput, true)) {
|
||||||
GT_Utility.addSimpleIC2MachineRecipe(aInput, getMaceratorRecipeList(), null, aOutput1);
|
GT_Utility.addSimpleIC2MachineRecipe(aInput, getMaceratorRecipeList(), null, aOutput1);
|
||||||
}
|
}
|
||||||
|
addMagneticraftRecipe(aInput, aOutput1, aOutput2, aChance2, aOutput3, aChance3);
|
||||||
RA.addPulveriserRecipe(aInput, new ItemStack[]{aOutput1, aOutput2, aOutput3}, new int[]{10000, aChance2 <= 0 ? 1000 : 100 * aChance2, aChance3 <= 0 ? 1000 : 100 * aChance3}, 400, 2);
|
RA.addPulveriserRecipe(aInput, new ItemStack[]{aOutput1, aOutput2, aOutput3}, new int[]{10000, aChance2 <= 0 ? 1000 : 100 * aChance2, aChance3 <= 0 ? 1000 : 100 * aChance3}, 400, 2);
|
||||||
|
|
||||||
if (!OrePrefixes.log.contains(aInput)) {
|
if (!OrePrefixes.log.contains(aInput)) {
|
||||||
|
@ -591,6 +592,31 @@ public class GT_ModHandler {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static Class tClass;
|
||||||
|
static Method tMethod1;
|
||||||
|
static Method tMethod2;
|
||||||
|
|
||||||
|
public static boolean addMagneticraftRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aChance2, ItemStack aOutput3, int aChance3){
|
||||||
|
if(GT_Mod.gregtechproxy.mMagneticraftRecipes && Loader.isModLoaded("Magneticraft")){
|
||||||
|
try {
|
||||||
|
if(tClass==null)tClass = Class.forName("com.cout970.magneticraft.api.access.MgRecipeRegister");
|
||||||
|
if(tMethod1==null)tMethod1 = tClass.getMethod("registerCrusherRecipe", ItemStack.class, ItemStack.class,ItemStack.class, float.class, ItemStack.class, float.class);
|
||||||
|
if(tMethod2==null)tMethod2 = tClass.getMethod("registerGrinderRecipe", ItemStack.class, ItemStack.class,ItemStack.class, float.class, ItemStack.class, float.class);
|
||||||
|
|
||||||
|
ItemData tData = GT_OreDictUnificator.getAssociation(aInput);
|
||||||
|
if(tData!=null&&tData.mPrefix!=null){
|
||||||
|
if(tData.mPrefix==OrePrefixes.ore||tData.mPrefix==OrePrefixes.oreBlackgranite||tData.mPrefix==OrePrefixes.oreEndstone||tData.mPrefix==OrePrefixes.oreNetherrack||tData.mPrefix==OrePrefixes.oreRedgranite){
|
||||||
|
tMethod1.invoke(null, aInput, aOutput1, aOutput2,(float)((float)aChance2/GT_Mod.gregtechproxy.mMagneticraftBonusOutputPercent), aOutput3,(float)((float)aChance3/GT_Mod.gregtechproxy.mMagneticraftBonusOutputPercent));
|
||||||
|
}else if(tData.mPrefix==OrePrefixes.crushed||tData.mPrefix==OrePrefixes.crushedCentrifuged||tData.mPrefix==OrePrefixes.crushedPurified){
|
||||||
|
tMethod2.invoke(null, aInput, aOutput1, aOutput2,(float)((float)aChance2/GT_Mod.gregtechproxy.mMagneticraftBonusOutputPercent), aOutput3,(float)((float)aChance3/GT_Mod.gregtechproxy.mMagneticraftBonusOutputPercent));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (Exception e) {e.printStackTrace();}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds a Recipe to the Sawmills of GregTech and ThermalCraft
|
* Adds a Recipe to the Sawmills of GregTech and ThermalCraft
|
||||||
*/
|
*/
|
||||||
|
@ -1324,6 +1350,7 @@ public class GT_ModHandler {
|
||||||
for (IRecipe tRecipe : (ArrayList<IRecipe>) CraftingManager.getInstance().getRecipeList()) {
|
for (IRecipe tRecipe : (ArrayList<IRecipe>) CraftingManager.getInstance().getRecipeList()) {
|
||||||
ItemStack tStack = tRecipe.getRecipeOutput();
|
ItemStack tStack = tRecipe.getRecipeOutput();
|
||||||
if (GT_Utility.isStackValid(tStack) && tStack.getMaxStackSize() == 1 && tStack.getMaxDamage() > 0 && !(tStack.getItem() instanceof ItemBlock) && !(tStack.getItem() instanceof IReactorComponent) && !isElectricItem(tStack) && !GT_Utility.isStackInList(tStack, sNonReplaceableItems)) {
|
if (GT_Utility.isStackValid(tStack) && tStack.getMaxStackSize() == 1 && tStack.getMaxDamage() > 0 && !(tStack.getItem() instanceof ItemBlock) && !(tStack.getItem() instanceof IReactorComponent) && !isElectricItem(tStack) && !GT_Utility.isStackInList(tStack, sNonReplaceableItems)) {
|
||||||
|
//if (!(tRecipe instanceof ShapelessRecipes) || tRecipe instanceof ShapelessOreRecipe) {
|
||||||
if (tRecipe instanceof ShapedOreRecipe) {
|
if (tRecipe instanceof ShapedOreRecipe) {
|
||||||
boolean temp = true;
|
boolean temp = true;
|
||||||
for (Object tObject : ((ShapedOreRecipe) tRecipe).getInput()) {
|
for (Object tObject : ((ShapedOreRecipe) tRecipe).getInput()) {
|
||||||
|
@ -1336,8 +1363,7 @@ public class GT_ModHandler {
|
||||||
temp = false;
|
temp = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}}
|
||||||
}
|
|
||||||
if (temp) {sSingleNonBlockDamagableRecipeList.add(tRecipe);}
|
if (temp) {sSingleNonBlockDamagableRecipeList.add(tRecipe);}
|
||||||
} else if (tRecipe instanceof ShapedRecipes) {
|
} else if (tRecipe instanceof ShapedRecipes) {
|
||||||
boolean temp = true;
|
boolean temp = true;
|
||||||
|
@ -1351,6 +1377,7 @@ public class GT_ModHandler {
|
||||||
} else {
|
} else {
|
||||||
sSingleNonBlockDamagableRecipeList.add(tRecipe);
|
sSingleNonBlockDamagableRecipeList.add(tRecipe);
|
||||||
}
|
}
|
||||||
|
//}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
GT_Log.out.println("GT_Mod: Created a List of Tool Recipes containing " + sSingleNonBlockDamagableRecipeList.size() + " Recipes for recycling." + (sSingleNonBlockDamagableRecipeList.size() > 1024 ? " Scanning all these Recipes is the reason for the startup Lag you receive right now." : E));
|
GT_Log.out.println("GT_Mod: Created a List of Tool Recipes containing " + sSingleNonBlockDamagableRecipeList.size() + " Recipes for recycling." + (sSingleNonBlockDamagableRecipeList.size() > 1024 ? " Scanning all these Recipes is the reason for the startup Lag you receive right now." : E));
|
||||||
|
@ -1372,6 +1399,7 @@ public class GT_ModHandler {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
/*ArrayList<ItemStack> */
|
/*ArrayList<ItemStack> */
|
||||||
if (sSingleNonBlockDamagableRecipeList_verified.size() != 0) {rList = getRecipeOutputs(sSingleNonBlockDamagableRecipeList_verified, true, aRecipe);}
|
if (sSingleNonBlockDamagableRecipeList_verified.size() != 0) {rList = getRecipeOutputs(sSingleNonBlockDamagableRecipeList_verified, true, aRecipe);}
|
||||||
|
@ -1496,7 +1524,7 @@ public class GT_ModHandler {
|
||||||
for (Entry<IRecipeInput, RecipeOutput> tEntry : aRecipeList.entrySet()) {
|
for (Entry<IRecipeInput, RecipeOutput> tEntry : aRecipeList.entrySet()) {
|
||||||
if (tEntry.getKey().matches(aInput)) {
|
if (tEntry.getKey().matches(aInput)) {
|
||||||
if (tEntry.getKey().getAmount() <= aInput.stackSize) {
|
if (tEntry.getKey().getAmount() <= aInput.stackSize) {
|
||||||
ItemStack[] tList = (ItemStack[]) tEntry.getValue().items.toArray();
|
ItemStack[] tList = (ItemStack[]) tEntry.getValue().items.toArray(new ItemStack[tEntry.getValue().items.size()]);
|
||||||
if (tList.length == 0) break;
|
if (tList.length == 0) break;
|
||||||
ItemStack[] rList = new ItemStack[aOutputSlots.length];
|
ItemStack[] rList = new ItemStack[aOutputSlots.length];
|
||||||
rRecipeMetaData.setTag("return", tEntry.getValue().metadata);
|
rRecipeMetaData.setTag("return", tEntry.getValue().metadata);
|
||||||
|
|
Loading…
Add table
Reference in a new issue