aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r--src/main/java/gregtech/api/enums/Element.java9
-rw-r--r--src/main/java/gregtech/api/enums/ItemList.java7
-rw-r--r--src/main/java/gregtech/api/enums/Materials.java34
-rw-r--r--src/main/java/gregtech/api/enums/Textures.java5
-rw-r--r--src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java106
-rw-r--r--src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java54
-rw-r--r--src/main/java/gregtech/api/util/GT_Recipe.java7
7 files changed, 170 insertions, 52 deletions
diff --git a/src/main/java/gregtech/api/enums/Element.java b/src/main/java/gregtech/api/enums/Element.java
index 72b2adfab8..5eadd70960 100644
--- a/src/main/java/gregtech/api/enums/Element.java
+++ b/src/main/java/gregtech/api/enums/Element.java
@@ -135,9 +135,10 @@ public enum Element {
Tn(125, 198, 0, -1, null, "Tritanium", false),
SpFe(26, 42, 0, -1, null, "Meteoric Iron", false),
- De(22, 27, 0, -1, null, "Desh", false),
+ De(22, 27, 0, -1, null, "Desh", false),
Oh(76, 125, 0, -1, null, "Oriharukon", false),
-
+ Di(500, 500, 0, -1, null, "Dimensionally Transcendent Matter", false),
+
Ma(0, 0, 100, -1, null, "Magic", false),
Nq(130, 200, 0, -1, null, "Naquadah", false),
Nt(0, 1000, 0, -1, null, "Neutronium", false),
@@ -266,9 +267,9 @@ public enum Element {
$Ts(-117, -177, 0, -1, null, "Anti-Tenness", false),
$Og(-118, -176, 0, -1, null, "Anti-Oganesson", false),
$Tn(-125, -198, 0, -1, null, "Anti-Tritanium", false),
-
+
$SpFe(-26, -42, 0, -1, null, "Anti-Meteoric Iron", true),
- $De(-22, -27, 0, -1, null, "Anti-Desh", true),
+ $De(-22, -27, 0, -1, null, "Anti-Desh", true),
$Oh(-76, -125, 0, -1, null, "Anti-Oriharukon", true),
$Ma(0, 0, -100, -1, null, "Anti-Magic", false),
diff --git a/src/main/java/gregtech/api/enums/ItemList.java b/src/main/java/gregtech/api/enums/ItemList.java
index 2c1aacf3b1..46f18a4999 100644
--- a/src/main/java/gregtech/api/enums/ItemList.java
+++ b/src/main/java/gregtech/api/enums/ItemList.java
@@ -795,9 +795,9 @@ public enum ItemList implements IItemContainer {
Casing_MAX,
Casing_BronzePlatedBricks,
Casing_HeatProof,
- Casing_Coil_Cupronickel_Deprecated,
- Casing_Coil_Kanthal_Deprecated,
- Casing_Coil_Nichrome_Deprecated,
+ Casing_Dim_Trans,
+ Casing_Dim_Injector,
+ Casing_Dim_Bridge,
Casing_Coil_Superconductor,
Casing_SolidSteel,
@@ -1083,6 +1083,7 @@ public enum ItemList implements IItemContainer {
Machine_Multi_LargeBoiler_Titanium,
Machine_Multi_LargeBoiler_TungstenSteel,
Machine_Multi_BlastFurnace,
+ Machine_Multi_PlasmaForge,
Machine_Multi_ImplosionCompressor,
Machine_Multi_VacuumFreezer,
Machine_Multi_Furnace,
diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java
index 2dc29af7ab..4a66779a58 100644
--- a/src/main/java/gregtech/api/enums/Materials.java
+++ b/src/main/java/gregtech/api/enums/Materials.java
@@ -363,7 +363,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
public static Materials Ethanol = new Materials( 706, TextureSet.SET_FLUID , 1.0F, 0, 0, 16 , 255, 128, 0, 0, "Ethanol" , "Ethanol" , 0, 192, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange , 1, Arrays.asList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.VENENUM, 1), new TC_AspectStack(TC_Aspects.AQUA, 1)));
public static Materials FishOil = new Materials( 711, TextureSet.SET_FLUID , 1.0F, 0, 0, 16 , 255, 196, 0, 0, "FishOil" , "Fish Oil" , 3, 2, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow , Arrays.asList(new TC_AspectStack(TC_Aspects.CORPUS, 2)));
public static Materials FermentedBiomass = new MaterialBuilder(691, TextureSet.SET_FLUID , "Fermented Biomass").addCell().addFluid().setRGB(68, 85, 0).setColor(Dyes.dyeBrown).constructMaterial();
- public static Materials Fuel = new Materials( 708, TextureSet.SET_FLUID , 1.0F, 0, 0, 16 , 255, 255, 0, 0, "Fuel" , "Diesel" , 0, 480, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow );
+ public static Materials Fuel = new Materials( 708, TextureSet.SET_FLUID , 1.0F, 0, 0, 16 , 255, 255, 0, 0, "Fuel" , "Diesel" , 0, 480, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow );
public static Materials Glue = new Materials( 726, TextureSet.SET_FLUID , 1.0F, 0, 0, 16 , 200, 196, 0, 0, "Glue" , "Refined Glue" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange , Arrays.asList(new TC_AspectStack(TC_Aspects.LIMUS, 2)));
public static Materials Gunpowder = new Materials( 800, TextureSet.SET_DULL , 1.0F, 0, 0, 1 , 128, 128, 128, 0, "Gunpowder" , "Gunpowder" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeGray , Arrays.asList(new TC_AspectStack(TC_Aspects.PERDITIO, 3), new TC_AspectStack(TC_Aspects.IGNIS, 4)));
public static Materials FryingOilHot = new Materials( 727, TextureSet.SET_FLUID , 1.0F, 0, 0, 16 , 200, 196, 0, 0, "FryingOilHot" , "Hot Frying Oil" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange , Arrays.asList(new TC_AspectStack(TC_Aspects.AQUA, 1), new TC_AspectStack(TC_Aspects.IGNIS, 1)));
@@ -846,6 +846,20 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
public static Materials SuperCoolant = new MaterialBuilder( -1, TextureSet.SET_DULL,"Super Coolant").setRGB(2, 91, 111).addFluid().constructMaterial().setLiquidTemperature(1);
+ public static Materials DimensionallyTranscendentCrudeCatalyst = new Materials( 748, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 10, 20, 20, 1, "DimensionallyTranscendentCrudeCatalyst" , "Dimensionally Transcendent Crude Catalyst" , 0, 0, 100000000, 1, false, true, 1, 1, 1, Dyes.dyeCyan).setHasCorrespondingFluid(true);
+ public static Materials DimensionallyTranscendentProsaicCatalyst = new Materials( 747, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 10, 20, 20, 1, "DimensionallyTranscendentProsaicCatalyst" , "Dimensionally Transcendent Prosaic Catalyst" , 0, 0, 100000000, 1, false, true, 1, 1, 1, Dyes.dyeGreen).setHasCorrespondingFluid(true);
+ public static Materials DimensionallyTranscendentResplendentCatalyst = new Materials( 746, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 10, 20, 20, 1, "DimensionallyTranscendentResplendentCatalyst" , "Dimensionally Transcendent Resplendent Catalyst" , 0, 0, 100000000, 1, false, true, 1, 1, 1, Dyes.dyeLime).setHasCorrespondingFluid(true);
+ public static Materials DimensionallyTranscendentExoticCatalyst = new Materials( 745, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 10, 20, 20, 1, "DimensionallyTranscendentExoticCatalyst" , "Dimensionally Transcendent Exotic Catalyst" , 0, 0, 100000000, 1, false, true, 1, 1, 1, Dyes.dyeMagenta).setHasCorrespondingFluid(true);
+
+ public static Materials ExcitedDTCC = new Materials( 109, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 10, 20, 20, 1, "ExcitedDTCC" , "Excited Dimensionally Transcendent Crude Catalyst" , -1, -1, 500000000, 1, false, true, 1, 1, 1, Dyes.dyeCyan);
+ public static Materials ExcitedDTPC = new Materials( 113, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 35, 59, 41, 1, "ExcitedDTPC" , "Excited Dimensionally Transcendent Prosaic Catalyst" , -1, -1, 500000000, 1, false, true, 1, 1, 1, Dyes.dyeGreen);
+ public static Materials ExcitedDTRC = new Materials( 121, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 38, 20, 56, 1, "ExcitedDTRC" , "Excited Dimensionally Transcendent Resplendent Catalyst" , -1, -1, 500000000, 1, false, true, 1, 1, 1, Dyes.dyeLime);
+ public static Materials ExcitedDTEC = new Materials( 126, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 240, 240, 41, 1, "ExcitedDTEC" , "Excited Dimensionally Transcendent Exotic Catalyst" , -1, -1, 500000000, 1, false, true, 1, 1, 1, Dyes.dyeMagenta);
+
+ public static Materials DimensionallyTranscendentResidue = new Materials( 589, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 0, 0, 0, 1, "DimensionallyTranscendentResidue" , "Dimensionally Transcendent Residue" , -1, -1, 25, 1, false, true, 1, 1, 1, Dyes.dyeBlack);
+
+ public static Materials SpaceTime = new Materials( 588, TextureSet.SET_FLUID , 1.0F, 0, 2, 16 , 0, 0, 255, 240, "SpaceTime" , "SpaceTime" , -1, -1, 14, 0, false, true, 2, 1, 1, Dyes.dyeBlue , Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1)));
+
/**
* Materials which are renamed automatically
*/
@@ -964,10 +978,10 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
mEnchantmentArmorsLevel = 0,
mToolQuality = 0;
public short
- mMeltingPoint = 0,
- mBlastFurnaceTemp = 0,
- mGasTemp = 0;
+ mBlastFurnaceTemp = 0;
public int
+ mMeltingPoint = 0,
+ mGasTemp = 0,
mMetaItemSubID,
mTypes = 0,
mDurability = 16,
@@ -1082,7 +1096,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
*/
public Materials(int aMetaItemSubID, TextureSet aIconSet, float aToolSpeed, int aDurability, int aToolQuality, int aTypes, int aR, int aG, int aB, int aA, String aName, String aDefaultLocalName, int aFuelType, int aFuelPower, int aMeltingPoint, int aBlastFurnaceTemp, boolean aBlastFurnaceRequired, boolean aTransparent, int aOreValue, int aDensityMultiplier, int aDensityDivider, Dyes aColor, String aConfigSection, boolean aCustomOre, String aCustomID) {
this(aMetaItemSubID, aIconSet, aToolSpeed, aDurability, aToolQuality, true, aName, aDefaultLocalName, aConfigSection, aCustomOre, aCustomID);
- mMeltingPoint = (short) aMeltingPoint;
+ mMeltingPoint = aMeltingPoint;
mBlastFurnaceRequired = aBlastFurnaceRequired;
mBlastFurnaceTemp = (short) aBlastFurnaceTemp;
mTransparent = aTransparent;
@@ -1603,6 +1617,8 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
//Pentacadmiummagneiumhexaoxid.mChemicalFormula="Cd5MgO6";
CosmicNeutronium.mChemicalFormula = "SpNt";
Aluminiumhydroxide.mChemicalFormula = "Al\u0028OH\u0029\u2083";
+
+ SpaceTime.mChemicalFormula = "Reality itself distilled into liquid form";
}
private static void initSubTags() {
@@ -2182,10 +2198,10 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
}
private static void addTemperatureValues(Materials aMaterial, String aConfigPath) {
- aMaterial.mMeltingPoint = (short) GregTech_API.sMaterialProperties.get(aConfigPath, "MeltingPoint", aMaterial.mMeltingPoint);
+ aMaterial.mMeltingPoint = GregTech_API.sMaterialProperties.get(aConfigPath, "MeltingPoint", aMaterial.mMeltingPoint);
aMaterial.mBlastFurnaceRequired = GregTech_API.sMaterialProperties.get(aConfigPath, "BlastFurnaceRequired", aMaterial.mBlastFurnaceRequired);
aMaterial.mBlastFurnaceTemp = (short) GregTech_API.sMaterialProperties.get(aConfigPath, "BlastFurnaceTemp", aMaterial.mBlastFurnaceTemp);
- aMaterial.mGasTemp = (short) GregTech_API.sMaterialProperties.get(aConfigPath, "GasTemp", aMaterial.mGasTemp);
+ aMaterial.mGasTemp = GregTech_API.sMaterialProperties.get(aConfigPath, "GasTemp", aMaterial.mGasTemp);
aMaterial.setHeatDamage((float) GregTech_API.sMaterialProperties.get(aConfigPath, "HeatDamage", aMaterial.mHeatDamage));
}
@@ -2761,7 +2777,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
}
public Materials setLiquidTemperature(int liquidTemperature) {
- this.mMeltingPoint = (short) liquidTemperature;
+ this.mMeltingPoint = liquidTemperature;
return this;
}
@@ -2770,7 +2786,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
}
public Materials setGasTemperature(int gasTemperature) {
- this.mGasTemp = (short) gasTemperature;
+ this.mGasTemp = gasTemperature;
return this;
}
diff --git a/src/main/java/gregtech/api/enums/Textures.java b/src/main/java/gregtech/api/enums/Textures.java
index 960a6b6a07..7e917b7db4 100644
--- a/src/main/java/gregtech/api/enums/Textures.java
+++ b/src/main/java/gregtech/api/enums/Textures.java
@@ -235,6 +235,9 @@ public class Textures {
MACHINE_MAX_BOTTOM,
MACHINE_BRONZEPLATEDBRICKS,
MACHINE_HEATPROOFCASING,
+ MACHINE_DIM_TRANS_CASING,
+ MACHINE_DIM_INJECTOR,
+ MACHINE_DIM_BRIDGE,
MACHINE_COIL_SUPERCONDUCTOR,
MACHINE_BRONZEBLASTFURNACE,
@@ -308,7 +311,7 @@ public class Textures {
MACHINE_CASING_FIREBOX_STEEL,
MACHINE_CASING_FIREBOX_TUNGSTENSTEEL,
MACHINE_CASING_ENGINE_INTAKE,
- MACHINE_CASING_EXTREME_ENGINE_INTAKE,//changed color in a terrible way
+ MACHINE_CASING_EXTREME_ENGINE_INTAKE, //changed color in a terrible way
MACHINE_CASING_CHEMICALLY_INERT,
MACHINE_COIL_CUPRONICKEL,
diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java
index a477789d06..f84b8547bc 100644
--- a/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java
+++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java
@@ -30,41 +30,105 @@ public class GT_GUIContainer_MultiMachine extends GT_GUIContainerMetaTile_Machin
@Override
protected void drawGuiContainerForegroundLayer(int par1, int par2) {
- fontRendererObj.drawString(mName, 10, 8, 16448255);
+
+ // If text is drawn iterate down GUI 8 pixels (height of characters).
+ int line_counter = 7;
+ int max_chars_per_line = 26;
+
+ if (mName.length() > 26) {
+
+ // Split the machine name into an array, so we can try fit it on one line but if not use more.
+ String[] split = mName.split(" ");
+
+ int total_line_length = 0;
+ String current_line = "";
+
+ int index = 0;
+
+ for (String str : split) {
+
+ total_line_length += str.length();
+
+ if (total_line_length > max_chars_per_line) {
+ fontRendererObj.drawString(current_line, 10, line_counter, 16448255);
+ line_counter += 8;
+ current_line = "";
+ index = 0;
+ total_line_length = str.length();
+ }
+
+ if (index == 0) {
+ current_line += str;
+ } else {
+ current_line += " " + str;
+ }
+ index++;
+ }
+ fontRendererObj.drawString(current_line, 10, line_counter, 16448255);
+ line_counter += 8;
+ } else {
+ fontRendererObj.drawString(mName, 10, line_counter, 16448255);
+ line_counter += 8;
+ }
+
if (mContainer != null) {//(mWrench ? 0 : 1) | (mScrewdriver ? 0 : 2) | (mSoftHammer ? 0 : 4) | (mHardHammer ? 0 : 8) | (mSolderingTool ? 0 : 16) | (mCrowbar ? 0 : 32) | (mMachine ? 0 : 64));
- if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 1) != 0)
- fontRendererObj.drawString(GT_Utility.trans("132", "Pipe is loose."), 10, 16, 16448255);
- if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 2) != 0)
- fontRendererObj.drawString(GT_Utility.trans("133", "Screws are loose."), 10, 24, 16448255);
- if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 4) != 0)
- fontRendererObj.drawString(GT_Utility.trans("134", "Something is stuck."), 10, 32, 16448255);
- if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 8) != 0)
- fontRendererObj.drawString(GT_Utility.trans("135", "Platings are dented."), 10, 40, 16448255);
- if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 16) != 0)
- fontRendererObj.drawString(GT_Utility.trans("136", "Circuitry burned out."), 10, 48, 16448255);
- if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 32) != 0)
- fontRendererObj.drawString(GT_Utility.trans("137", "That doesn't belong there."), 10, 56, 16448255);
- if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 64) != 0)
- fontRendererObj.drawString(GT_Utility.trans("138", "Incomplete Structure."), 10, 64, 16448255);
+ if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 1) != 0) {
+ fontRendererObj.drawString(GT_Utility.trans("132", "Pipe is loose."), 10, line_counter, 16448255);
+ line_counter += 8;
+ }
+
+ if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 2) != 0) {
+ fontRendererObj.drawString(GT_Utility.trans("133", "Screws are loose."), 10, line_counter, 16448255);
+ line_counter += 8;
+ }
+
+ if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 4) != 0) {
+ fontRendererObj.drawString(GT_Utility.trans("134", "Something is stuck."), 10, line_counter, 16448255);
+ line_counter += 8;
+ }
+
+ if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 8) != 0) {
+ fontRendererObj.drawString(GT_Utility.trans("135", "Platings are dented."), 10, line_counter, 16448255);
+ line_counter += 8;
+ }
+
+ if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 16) != 0) {
+ fontRendererObj.drawString(GT_Utility.trans("136", "Circuitry burned out."), 10, line_counter, 16448255);
+ line_counter += 8;
+ }
+
+ if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 32) != 0) {
+ fontRendererObj.drawString(GT_Utility.trans("137", "That doesn't belong there."), 10, line_counter, 16448255);
+ line_counter += 8;
+ }
+
+ if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 64) != 0) {
+ fontRendererObj.drawString(GT_Utility.trans("138", "Incomplete Structure."), 10, line_counter, 16448255);
+ line_counter += 8;
+ }
if (((GT_Container_MultiMachine) mContainer).mDisplayErrorCode == 0) {
if (((GT_Container_MultiMachine) mContainer).mActive == 0) {
- fontRendererObj.drawString(GT_Utility.trans("139", "Hit with Soft Mallet"), 10, 16, 16448255);
- fontRendererObj.drawString(GT_Utility.trans("140", "to (re-)start the Machine"), 10, 24, 16448255);
- fontRendererObj.drawString(GT_Utility.trans("141", "if it doesn't start."), 10, 32, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("139", "Hit with Soft Mallet"), 10, line_counter, 16448255);
+ line_counter += 8;
+ fontRendererObj.drawString(GT_Utility.trans("140", "to (re-)start the Machine"), 10, line_counter, 16448255);
+ line_counter += 8;
+ fontRendererObj.drawString(GT_Utility.trans("141", "if it doesn't start."), 10, line_counter, 16448255);
+ line_counter += 8;
} else {
- fontRendererObj.drawString(GT_Utility.trans("142", "Running perfectly."), 10, 16, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("142", "Running perfectly."), 10, line_counter, 16448255);
+ line_counter += 8;
}
if (mContainer.mTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_DrillerBase) {
ItemStack tItem = mContainer.mTileEntity.getMetaTileEntity().getStackInSlot(1);
if (tItem == null || !GT_Utility.areStacksEqual(tItem, GT_ModHandler.getIC2Item("miningPipe", 1L))) {
- fontRendererObj.drawString(GT_Utility.trans("143", "Missing Mining Pipe"), 10, ((GT_Container_MultiMachine) mContainer).mActive == 0 ? 40 : 24, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("143", "Missing Mining Pipe"), 10, line_counter, 16448255);
}
} else if (mContainer.mTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_LargeTurbine) {
ItemStack tItem = mContainer.mTileEntity.getMetaTileEntity().getStackInSlot(1);
if (tItem == null || !(tItem.getItem() == GT_MetaGenerated_Tool_01.INSTANCE && tItem.getItemDamage() >= 170 && tItem.getItemDamage() <= 177)) {
- fontRendererObj.drawString(GT_Utility.trans("144", "Missing Turbine Rotor"), 10, ((GT_Container_MultiMachine) mContainer).mActive == 0 ? 40 : 24, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("144", "Missing Turbine Rotor"), 10, line_counter, 16448255);
}
}
}
diff --git a/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java b/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java
index 7b8daddfd4..fb2f15f49a 100644
--- a/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java
+++ b/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java
@@ -26,6 +26,19 @@ public interface IGT_RecipeAdder {
boolean addFusionReactorRecipe(FluidStack aInput1, FluidStack aInput2, FluidStack aOutput1, int aFusionDurationInTicks, int aFusionEnergyPerTick, int aEnergyNeededForStartingFusion);
/**
+ * Adds a Fusion Reactor Recipe
+ *
+ * @param FluidOutputArray : Array of input fluids.
+ * @param FluidOutputArray : Array of output fluids.
+ * @param aFusionDurationInTicks : How many ticks the Fusion lasts (must be > 0).
+ * @param aFusionEnergyPerTick : The EU generated per Tick (can even be negative!).
+ * @param aEnergyNeededForStartingFusion : EU needed for heating the Reactor up (must be >= 0).
+ * @return true if the Recipe got added, otherwise false.
+ */
+ boolean addFusionReactorRecipe(FluidStack[] FluidInputArray, FluidStack[] FluidOutputArray, int aFusionDurationInTicks, int aFusionEnergyPerTick, int aEnergyNeededForStartingFusion);
+
+
+ /**
* Adds a Centrifuge Recipe
*
* @param aInput1 must be != null
@@ -169,7 +182,7 @@ public interface IGT_RecipeAdder {
/**
* Adds a Chemical Recipe that only exists in the Large Chemical Reactor
- *
+ *
* @param aInputs item inputs
* @param aFluidInputs fluid inputs
* @param aFluidOutputs fluid outputs
@@ -178,7 +191,7 @@ public interface IGT_RecipeAdder {
* @param aEUtick must be > 0
* <br>aInputs and aFluidInputs must contain at least one valid input.
* <br>aOutputs and aFluidOutputs must contain at least one valid output.
- *
+ *
*/
boolean addMultiblockChemicalRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, ItemStack[] aOutputs, int aDuration, int aEUtick);
@@ -214,15 +227,17 @@ public interface IGT_RecipeAdder {
boolean addBlastRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aInput3, ItemStack aInput4, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4,int aDuration, int aEUt, int aLevel);
/**
- * Adds a Blast Furnace Recipe
+ * Adds a Plasma Forge Recipe
*
- * @param aInput1 must be != null if aInput2 == null
- * @param aInput2 must be != null if aInput1 == null
- * @param aCoalAmount must be > 0
- * @param aOutput1 must be != null if aOutput2 == null
- * @param aOutput2 must be != null if aOutput1 == null
- * @param aDuration must be > 0
+ * @param ItemInputArray Array of input items.
+ * @param FluidInputArray Array of output items.
+ * @param OutputItemArray Array of input fluids.
+ * @param FluidOutputArray Array of output items.
+ * @param aDuration Must be > 0. Duration in ticks.
+ * @param aEUt Should be > 0. EU/t.
+ * @param coil_heat_level Should be > 0. Heat of the coils used.
*/
+ boolean addPlasmaForgeRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray, ItemStack[] OutputItemArray, FluidStack[] FluidOutputArray, int aDuration, int aEUt, int coil_heat_level);
boolean addPrimitiveBlastRecipe(ItemStack aInput1, ItemStack aInput2, int aCoalAmount, ItemStack aOutput1, ItemStack aOutput2, int aDuration);
@@ -274,12 +289,12 @@ public interface IGT_RecipeAdder {
/**
* Adds an Assembler Recipe
- *
+ *
* @param aInputs must be != null
* @param aOutput1 must be != null
* @param aDuration must be > 0
* @param aEUt should be > 0
- *
+ *
*/
boolean addAssemblerRecipe(ItemStack[] aInputs, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt);
@@ -639,16 +654,29 @@ public interface IGT_RecipeAdder {
boolean addMixerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aInput3, ItemStack aInput4, ItemStack aInput5, ItemStack aInput6, ItemStack aInput7, ItemStack aInput8, ItemStack aInput9, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, int aDuration, int aEUt);
/**
- * Adds a Recipe for the Laser Engraver
+ * Adds a Recipe for the Laser Engraver.
*/
boolean addLaserEngraverRecipe(ItemStack aItemToEngrave, ItemStack aLens, ItemStack aEngravedItem, int aDuration, int aEUt);
/**
- * Adds a Recipe for the Laser Engraver
+ * Adds a Recipe for the Laser Engraver.
*/
boolean addLaserEngraverRecipe(ItemStack aItemToEngrave, ItemStack aLens, ItemStack aEngravedItem, int aDuration, int aEUt, boolean aCleanroom);
/**
+ * Adds a Generalised Laser Engraver Recipe.
+ *
+ * @param ItemInputArray Array of input items.
+ * @param FluidInputArray Array of output items.
+ * @param OutputItemArray Array of input fluids.
+ * @param FluidOutputArray Array of output items.
+ * @param aDuration Must be > 0. Duration in ticks.
+ * @param aEUt Should be > 0. EU/t.
+ * @param aCleanroom Boolean for usage of cleanroom in recipe.
+ */
+ boolean addLaserEngraverRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray, ItemStack[] OutputItemArray, FluidStack[] FluidOutputArray, int aDuration, int aEUt, boolean aCleanroom);
+
+ /**
* Adds a Recipe for the Forming Press
*/
boolean addFormingPressRecipe(ItemStack aItemToImprint, ItemStack aForm, ItemStack aImprintedItem, int aDuration, int aEUt);
diff --git a/src/main/java/gregtech/api/util/GT_Recipe.java b/src/main/java/gregtech/api/util/GT_Recipe.java
index 1e0954af3b..833059f195 100644
--- a/src/main/java/gregtech/api/util/GT_Recipe.java
+++ b/src/main/java/gregtech/api/util/GT_Recipe.java
@@ -769,7 +769,7 @@ public class GT_Recipe implements Comparable<GT_Recipe> {
public static final GT_Recipe_Map sPrinterRecipes = new GT_Recipe_Map_Printer(new HashSet<>(5), "gt.recipe.printer", "Printer", null, RES_PATH_GUI + "basicmachines/Printer", 1, 1, 1, 1, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sSifterRecipes = new GT_Recipe_Map(new HashSet<>(105), "gt.recipe.sifter", "Sifter", null, RES_PATH_GUI + "basicmachines/Sifter", 1, 9, 0, 0, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sPressRecipes = new GT_Recipe_Map_FormingPress(new HashSet<>(300), "gt.recipe.press", "Forming Press", null, RES_PATH_GUI + "basicmachines/Press", 2, 1, 2, 0, 1, E, 1, E, true, true);
- public static final GT_Recipe_Map sLaserEngraverRecipes = new GT_Recipe_Map(new HashSet<>(810), "gt.recipe.laserengraver", "Precision Laser Engraver", null, RES_PATH_GUI + "basicmachines/LaserEngraver", 2, 1, 2, 0, 1, E, 1, E, true, true);
+ public static final GT_Recipe_Map sLaserEngraverRecipes = new GT_Recipe_Map(new HashSet<>(810), "gt.recipe.laserengraver", "Precision Laser Engraver", null, RES_PATH_GUI + "basicmachines/LaserEngraverNEI", 2, 1, 0, 0, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sMixerRecipes = new GT_Recipe_Map(new HashSet<>(900), "gt.recipe.mixer", "Mixer", null, RES_PATH_GUI + "basicmachines/Mixer6", 9, 4, 1, 0, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sAutoclaveRecipes = new GT_Recipe_Map(new HashSet<>(300), "gt.recipe.autoclave", "Autoclave", null, RES_PATH_GUI + "basicmachines/Autoclave4", 2, 4, 1, 1, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sElectroMagneticSeparatorRecipes = new GT_Recipe_Map(new HashSet<>(50), "gt.recipe.electromagneticseparator", "Electromagnetic Separator", null, RES_PATH_GUI + "basicmachines/ElectromagneticSeparator", 1, 3, 1, 0, 1, E, 1, E, true, true);
@@ -786,9 +786,11 @@ public class GT_Recipe implements Comparable<GT_Recipe> {
public static final GT_Recipe_Map sBoxinatorRecipes = new GT_Recipe_Map(new HashSet<>(2500), "gt.recipe.packager", "Packager", null, RES_PATH_GUI + "basicmachines/Packager", 2, 1, 2, 0, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sUnboxinatorRecipes = new GT_Recipe_Map_Unboxinator(new HashSet<>(2500), "gt.recipe.unpackager", "Unpackager", null, RES_PATH_GUI + "basicmachines/Unpackager", 1, 2, 1, 0, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sFusionRecipes = new GT_Recipe_Map(new HashSet<>(50), "gt.recipe.fusionreactor", "Fusion Reactor", null, RES_PATH_GUI + "basicmachines/FusionReactor", 0, 0, 0, 2, 1, "Start: ", 1, " EU", true, true);
+ public static final GT_Recipe_Map sComplexFusionRecipes = new GT_Recipe_Map(new HashSet<>(50), "gt.recipe.complexfusionreactor", "Complex Fusion Reactor", null, RES_PATH_GUI + "basicmachines/ComplexFusionReactor", 3, 0, 0, 2, 1, "Start: ", 1, " EU", true, true);
public static final GT_Recipe_Map sCentrifugeRecipes = new GT_Recipe_Map(new HashSet<>(1200), "gt.recipe.centrifuge", "Centrifuge", null, RES_PATH_GUI + "basicmachines/Centrifuge", 2, 6, 0, 0, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sElectrolyzerRecipes = new GT_Recipe_Map(new HashSet<>(300), "gt.recipe.electrolyzer", "Electrolyzer", null, RES_PATH_GUI + "basicmachines/Electrolyzer", 2, 6, 0, 0, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sBlastRecipes = new GT_Recipe_Map(new HashSet<>(800), "gt.recipe.blastfurnace", "Blast Furnace", null, RES_PATH_GUI + "basicmachines/Default", 4, 4, 1, 0, 1, "Heat Capacity: ", 1, " K", false, true);
+ public static final GT_Recipe_Map sPlasmaForgeRecipes = new GT_Recipe_Map(new HashSet<>(20), "gt.recipe.plasmaforge", "Dimensionally Transcendent Plasma Forge", null, RES_PATH_GUI + "basicmachines/PlasmaForge", 1, 1, 0, 0, 1, "Heat Capacity: ", 1, " K", false, true);
public static final GT_Recipe_Map sPrimitiveBlastRecipes = new GT_Recipe_Map(new HashSet<>(200), "gt.recipe.primitiveblastfurnace", "Primitive Blast Furnace", null, RES_PATH_GUI + "basicmachines/Default", 3, 3, 1, 0, 1, E, 1, E, false, true);
public static final GT_Recipe_Map sImplosionRecipes = new GT_Recipe_Map(new HashSet<>(900), "gt.recipe.implosioncompressor", "Implosion Compressor", null, RES_PATH_GUI + "basicmachines/Default", 2, 2, 2, 0, 1, E, 1, E, true, true);
public static final GT_Recipe_Map sVacuumRecipes = new GT_Recipe_Map(new HashSet<>(305), "gt.recipe.vacuumfreezer", "Vacuum Freezer", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 0, 0, 1, E, 1, E, false, true);
@@ -1143,6 +1145,9 @@ public class GT_Recipe implements Comparable<GT_Recipe> {
public boolean usesSpecialSlot() {
return mUsesSpecialSlot;
}
+
+ public void addRecipe(Object o, FluidStack[] fluidInputArray, FluidStack[] fluidOutputArray) {
+ }
}
// -----------------------------------------------------------------------------------------------------------------