aboutsummaryrefslogtreecommitdiff
path: root/main/java/gregtech
diff options
context:
space:
mode:
Diffstat (limited to 'main/java/gregtech')
-rw-r--r--main/java/gregtech/GT_Mod.java4
-rw-r--r--main/java/gregtech/api/enums/Materials.java16
-rw-r--r--main/java/gregtech/api/enums/TC_Aspects.java116
-rw-r--r--main/java/gregtech/api/enums/Textures.java4
-rw-r--r--main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java23
-rw-r--r--main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java7
-rw-r--r--main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java1
-rw-r--r--main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java7
-rw-r--r--main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java63
-rw-r--r--main/java/gregtech/api/util/GT_ModHandler.java5
-rw-r--r--main/java/gregtech/api/util/GT_Recipe.java1
-rw-r--r--main/java/gregtech/common/GT_Proxy.java5
-rw-r--r--main/java/gregtech/common/GT_RecipeAdder.java20
-rw-r--r--main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java3
-rw-r--r--main/java/gregtech/common/GT_Worldgenerator.java2
-rw-r--r--main/java/gregtech/common/blocks/GT_Block_Machines.java6
-rw-r--r--main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java6
-rw-r--r--main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java5
-rw-r--r--main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java2
-rw-r--r--main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java11
-rw-r--r--main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java30
-rw-r--r--main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java21
-rw-r--r--main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java4
-rw-r--r--main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Pump.java4
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java8
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java7
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java6
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java7
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_HeatExchanger.java139
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine.java19
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java2
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java6
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java2
-rw-r--r--main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java3
-rw-r--r--main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumTank.java2
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine.java3
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java4
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java4
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java4
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java5
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Wrench.java8
-rw-r--r--main/java/gregtech/loaders/misc/GT_Achievements.java14
-rw-r--r--main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java23
-rw-r--r--main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java2
44 files changed, 442 insertions, 192 deletions
diff --git a/main/java/gregtech/GT_Mod.java b/main/java/gregtech/GT_Mod.java
index 1b91d8ea4e..ecf34dedc3 100644
--- a/main/java/gregtech/GT_Mod.java
+++ b/main/java/gregtech/GT_Mod.java
@@ -759,11 +759,13 @@ for (Map.Entry<ItemStack, Float> entry : outputs.entrySet()) {
ItemStack tInput = GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial, 1L);
if (tInput != null) {
GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { tInput }, new ItemStack[] { tOutput }, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int)(tMaterial.getMass() * 8192L), 32, 0);
+ GT_Recipe.GT_Recipe_Map.sRepicatorFakeRecipes.addFakeRecipe(false, null , new ItemStack[] { tInput }, new ItemStack[] { tOutput } , new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int)(tMaterial.getMass() * 512L), 32, 0);
}
tInput = GT_OreDictUnificator.get(OrePrefixes.cell, tMaterial, 1L);
if (tInput != null) {
GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { tInput }, new ItemStack[] { tOutput }, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int)(tMaterial.getMass() * 8192L), 32, 0);
- }
+ GT_Recipe.GT_Recipe_Map.sRepicatorFakeRecipes.addFakeRecipe(false, null , new ItemStack[] { tInput }, new ItemStack[] { tOutput } , new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int)(tMaterial.getMass() * 512L), 32, 0);
+ }
}
}
GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Side", new Object[0]) }, new ItemStack[] { new ItemStack(Blocks.cobblestone, 1) }, null, null, null, 16, 32, 0);
diff --git a/main/java/gregtech/api/enums/Materials.java b/main/java/gregtech/api/enums/Materials.java
index 0d60f1b54e..c38728b8c7 100644
--- a/main/java/gregtech/api/enums/Materials.java
+++ b/main/java/gregtech/api/enums/Materials.java
@@ -210,7 +210,7 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
Adamite ( -1, TextureSet.SET_NONE , 1.0F, 0, 3, 1 |8 , 255, 255, 255, 0, "Adamite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyeLightGray ),
Adluorite ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1 |8 , 255, 255, 255, 0, "Adluorite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Agate ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1 , 255, 255, 255, 0, "Agate" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
- Alduorite ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1 |8|16 , 255, 255, 255, 0, "Alduorite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
+ Alduorite ( 485, TextureSet.SET_SHINY , 1.0F, 0, 2, 1 |8|16 , 159, 180, 180, 0, "Alduorite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Amber ( 514, TextureSet.SET_RUBY , 4.0F, 128, 2, 1 |4|8 |64 , 255, 128, 0, 127, "Amber" , 5, 3, -1, 0, F, T, 1, 1, 1, Dyes.dyeOrange , Arrays.asList(new TC_AspectStack(TC_Aspects.VINCULUM, 2), new TC_AspectStack(TC_Aspects.VITREUS, 1))),
Ammonium ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1 , 255, 255, 255, 0, "Ammonium" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Amordrine ( -1, TextureSet.SET_NONE , 6.0F, 64, 2, 1|2 |8|16 |64 , 255, 255, 255, 0, "Amordrine" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
@@ -278,9 +278,9 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
Hematite ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1|2 |8 , 255, 255, 255, 0, "Hematite" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
Hepatizon ( 957, TextureSet.SET_METALLIC , 12.0F, 128, 2, 1|2 |8|16 |64 , 117, 94, 117, 0, "Hepatizon" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
HSLA ( 322, TextureSet.SET_METALLIC , 6.0F, 500, 2, 1|2 |64|128 , 128, 128, 128, 0, "HSLA Steel" , 0, 0, 1811, 1000, T, F, 3, 1, 1, Dyes._NULL , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 1), new TC_AspectStack(TC_Aspects.ORDO, 1))),
- Ignatius ( 950, TextureSet.SET_METALLIC , 12.0F, 512, 2, 1 |16 , 255, 169, 83, 0, "Ignatius" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
+ Ignatius ( 950, TextureSet.SET_METALLIC , 12.0F, 512, 2, 1|2 |16 , 255, 169, 83, 0, "Ignatius" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Infernal ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 0 , 255, 255, 255, 0, "Infernal" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
- Infuscolium ( -1, TextureSet.SET_NONE , 6.0F, 64, 2, 1|2 |8 |64 , 255, 255, 255, 0, "Infuscolium" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
+ Infuscolium ( 490, TextureSet.SET_METALLIC , 6.0F, 64, 2, 1|2 |8|16 |64 , 146, 33, 86, 0, "Infuscolium" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
InfusedGold ( 323, TextureSet.SET_SHINY , 12.0F, 64, 3, 1|2 |8 |64|128 , 255, 200, 60, 0, "Infused Gold" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes.dyeYellow ),
InfusedAir ( 540, TextureSet.SET_SHARDS , 8.0F, 64, 3, 1 |4|8 |64|128 , 255, 255, 0, 0, "Aer" , 5, 160, -1, 0, F, T, 3, 1, 1, Dyes.dyeYellow , Arrays.asList(new TC_AspectStack(TC_Aspects.PRAECANTIO, 1), new TC_AspectStack(TC_Aspects.AER, 2))),
InfusedFire ( 541, TextureSet.SET_SHARDS , 8.0F, 64, 3, 1 |4|8 |64|128 , 255, 0, 0, 0, "Ignis" , 5, 320, -1, 0, F, T, 3, 1, 1, Dyes.dyeRed , Arrays.asList(new TC_AspectStack(TC_Aspects.PRAECANTIO, 1), new TC_AspectStack(TC_Aspects.IGNIS, 2))),
@@ -294,10 +294,10 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
Invisium ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1 , 255, 255, 255, 0, "Invisium" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes._NULL ),
Jade ( 537, TextureSet.SET_SHINY , 1.0F, 0, 2, 1 |8 , 0, 100, 0, 0, "Jade" , 0, 0, -1, 0, F, F, 5, 1, 1, Dyes.dyeGreen , Arrays.asList(new TC_AspectStack(TC_Aspects.LUCRUM, 6), new TC_AspectStack(TC_Aspects.VITREUS, 3))),
Jasper ( 511, TextureSet.SET_EMERALD , 1.0F, 0, 2, 1 |4|8 , 200, 80, 80, 100, "Jasper" , 0, 0, -1, 0, F, T, 3, 1, 1, Dyes.dyeRed , Arrays.asList(new TC_AspectStack(TC_Aspects.LUCRUM, 4), new TC_AspectStack(TC_Aspects.VITREUS, 2))),
- Kalendrite ( 953, TextureSet.SET_METALLIC , 5.0F, 2560, 3, 1 |16 , 170, 91, 189, 0, "Kalendrite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
+ Kalendrite ( 953, TextureSet.SET_METALLIC , 5.0F, 2560, 3, 1|2 |16 , 170, 91, 189, 0, "Kalendrite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Komatiite ( 869, TextureSet.SET_DULL , 1.0F, 0, 1, 1 , 255, 255, 255, 0, "Komatiite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyeYellow ),
Lava ( 700, TextureSet.SET_FLUID , 1.0F, 0, 1, 16 , 255, 64, 0, 0, "Lava" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyeOrange ),
- Lemurite ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 1 |16 , 255, 255, 255, 0, "Lemurite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
+ Lemurite ( 486, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1 |16 , 219, 219, 219, 0, "Lemurite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Limestone ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 1 , 255, 255, 255, 0, "Limestone" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Lodestone ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 1 |8 , 255, 255, 255, 0, "Lodestone" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Luminite ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 1 |8 , 250, 250, 250, 0, "Luminite" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes.dyeWhite ),
@@ -307,7 +307,7 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
MeteoricIron ( 340, TextureSet.SET_METALLIC , 6.0F, 384, 2, 1|2 |8 |64 , 100, 50, 80, 0, "Meteoric Iron" , 0, 0, 1811, 0, F, F, 1, 1, 1, Dyes.dyeGray , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.MAGNETO, 1))),
MeteoricSteel ( 341, TextureSet.SET_METALLIC , 6.0F, 768, 2, 1|2 |64 , 50, 25, 40, 0, "Meteoric Steel" , 0, 0, 1811, 1000, T, F, 1, 1, 1, Dyes.dyeGray , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.MAGNETO, 1), new TC_AspectStack(TC_Aspects.ORDO, 1))),
Meteorite ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 1 |8 , 80, 35, 60, 0, "Meteorite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyePurple ),
- Meutoite ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 1 |8|16 , 255, 255, 255, 0, "Meutoite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
+ Meutoite ( 487, TextureSet.SET_METALLIC , 1.0F, 0, 1, 1 |8|16 , 95, 82, 105, 0, "Meutoite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Migmatite ( 872, TextureSet.SET_DULL , 1.0F, 0, 1, 1 , 255, 255, 255, 0, "Migmatite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Mimichite ( -1, TextureSet.SET_GEM_VERTICAL , 1.0F, 0, 1, 1 |4|8 , 255, 255, 255, 0, "Mimichite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Moonstone ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 1 |8 , 255, 255, 255, 0, "Moonstone" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes.dyeWhite , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.ALIENIS, 1))),
@@ -339,7 +339,7 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
RefinedGlowstone (-326, TextureSet.SET_METALLIC , 1.0F, 0, 1, 1|2 , 255, 255, 0, 0, "Refined Glowstone" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyeYellow ),
RefinedObsidian (-327, TextureSet.SET_METALLIC , 1.0F, 0, 1, 1|2 , 80, 50, 100, 0, "Refined Obsidian" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyePurple ),
Rhyolite ( 875, TextureSet.SET_DULL , 1.0F, 0, 1, 1 , 255, 255, 255, 0, "Rhyolite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
- Rubracium ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 1 |8|16 , 255, 255, 255, 0, "Rubracium" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
+ Rubracium ( 488, TextureSet.SET_METALLIC , 1.0F, 0, 1, 1 |8|16 , 151, 45, 45, 0, "Rubracium" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
RyuDragonRyder ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 0 , 255, 255, 255, 0, "Ryu Dragon Ryder" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Sand ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 0 , 255, 255, 255, 0, "Sand" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyeYellow ),
Sanguinite ( 955, TextureSet.SET_METALLIC , 3.0F, 4480, 4, 1|2 |8 , 185, 0, 0, 0, "Sanguinite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
@@ -359,7 +359,7 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
UUMatter ( 703, TextureSet.SET_FLUID , 1.0F, 0, 1, 16 , 128, 0, 196, 0, "UU-Matter" , 0, 0, -1, 0, F, F, 10, 1, 1, Dyes.dyePink ),
Void ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 0 , 255, 255, 255, 200, "Void" , 0, 0, -1, 0, F, T, 1, 1, 1, Dyes._NULL , Arrays.asList(new TC_AspectStack(TC_Aspects.VACUOS, 1))),
Voidstone ( -1, TextureSet.SET_NONE , 1.0F, 0, 1, 0 , 255, 255, 255, 200, "Voidstone" , 0, 0, -1, 0, F, T, 1, 1, 1, Dyes._NULL , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.VACUOS, 1))),
- Vulcanite ( -1, TextureSet.SET_NONE , 6.0F, 64, 2, 1|2 |8 |64 , 255, 255, 255, 0, "Vulcanite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
+ Vulcanite ( 489, TextureSet.SET_METALLIC , 6.0F, 64, 2, 1|2 |8|16 |64 , 255, 132, 72, 0, "Vulcanite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Vyroxeres ( 951, TextureSet.SET_METALLIC , 9.0F, 768, 3, 1|2 |8 |64 , 85, 224, 1, 0, "Vyroxeres" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes._NULL ),
Wimalite ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 8 , 255, 255, 255, 0, "Wimalite" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes.dyeYellow ),
Yellorite ( -1, TextureSet.SET_NONE , 1.0F, 0, 2, 8 , 255, 255, 255, 0, "Yellorite" , 0, 0, -1, 0, F, F, 3, 1, 1, Dyes.dyeYellow ),
diff --git a/main/java/gregtech/api/enums/TC_Aspects.java b/main/java/gregtech/api/enums/TC_Aspects.java
index d3f74ffe2d..79a9b61782 100644
--- a/main/java/gregtech/api/enums/TC_Aspects.java
+++ b/main/java/gregtech/api/enums/TC_Aspects.java
@@ -3,71 +3,77 @@ package gregtech.api.enums;
import java.util.List;
public enum TC_Aspects {
- AER
- , ALIENIS
- , AQUA
- , ARBOR
- , AURAM
- , BESTIA
- , COGNITO
- , CORPUS
- , ELECTRUM
- , EXAMINIS
- , FABRICO
- , FAMES
- , GELUM
- , GRANUM
- , HERBA
- , HUMANUS
- , IGNIS
- , INSTRUMENTUM
- , ITER
- , LIMUS
- , LUCRUM
- , LUX
- , MACHINA
- , MAGNETO
- , MESSIS
- , METALLUM
- , METO
- , MORTUUS
- , MOTUS
- , NEBRISUM
- , ORDO
- , PANNUS
- , PERDITIO
- , PERFODIO
- , PERMUTATIO
- , POTENTIA
- , PRAECANTIO
- , RADIO
- , SANO
- , SENSUS
- , SPIRITUS
- , STRONTIO
- , TELUM
- , TERRA
- , TEMPESTAS
- , TENEBRAE
- , TUTAMEN
- , VACUOS
- , VENENUM
- , VICTUS
- , VINCULUM
- , VITIUM
- , VITREUS
- , VOLATUS
+ AER(1)
+ , ALIENIS(20)
+ , AQUA(3)
+ , ARBOR(1)
+ , AURAM(16)
+ , BESTIA(6)
+ , COGNITO(2)
+ , CORPUS(2)
+ , ELECTRUM(24)
+ , EXAMINIS(32)
+ , FABRICO(2)
+ , FAMES(2)
+ , GELUM(1)
+ , GRANUM(4)
+ , HERBA(2)
+ , HUMANUS(8)
+ , IGNIS(4)
+ , INSTRUMENTUM(4)
+ , ITER(6)
+ , LIMUS(3)
+ , LUCRUM(32)
+ , LUX(4)
+ , MACHINA(16)
+ , MAGNETO(24)
+ , MESSIS(3)
+ , METALLUM(8)
+ , METO(2)
+ , MORTUUS(16)
+ , MOTUS(4)
+ , NEBRISUM(48)
+ , ORDO(8)
+ , PANNUS(6)
+ , PERDITIO(2)
+ , PERFODIO(4)
+ , PERMUTATIO(12)
+ , POTENTIA(16)
+ , PRAECANTIO(16)
+ , RADIO(48)
+ , SANO(24)
+ , SENSUS(4)
+ , SPIRITUS(24)
+ , STRONTIO(64)
+ , TELUM(6)
+ , TERRA(1)
+ , TEMPESTAS(64)
+ , TENEBRAE(24)
+ , TUTAMEN(12)
+ , VACUOS(6)
+ , VENENUM(16)
+ , VICTUS(4)
+ , VINCULUM(16)
+ , VITIUM(48)
+ , VITREUS(3)
+ , VOLATUS(12)
;
/**
* The Thaumcraft Aspect Object of the Mod itself.
*/
public Object mAspect;
-
+ public int mValue;
+
+ private TC_Aspects(int aValue){
+ mValue = aValue;
+ }
+
public static class TC_AspectStack {
public TC_Aspects mAspect;
public long mAmount;
+
public TC_AspectStack(TC_Aspects aAspect, long aAmount) {
mAspect = aAspect;
mAmount = aAmount;
diff --git a/main/java/gregtech/api/enums/Textures.java b/main/java/gregtech/api/enums/Textures.java
index 5ebbd26d3b..43c33fc8db 100644
--- a/main/java/gregtech/api/enums/Textures.java
+++ b/main/java/gregtech/api/enums/Textures.java
@@ -52,7 +52,7 @@ public class Textures {
, STEAM_TURBINE_BACK, STEAM_TURBINE_FRONT, STEAM_TURBINE_SIDE, STEAM_TURBINE_BOTTOM, STEAM_TURBINE_TOP, STEAM_TURBINE_BACK_ACTIVE, STEAM_TURBINE_FRONT_ACTIVE, STEAM_TURBINE_SIDE_ACTIVE, STEAM_TURBINE_BOTTOM_ACTIVE, STEAM_TURBINE_TOP_ACTIVE
, MACHINE_COIL_CUPRONICKEL, MACHINE_COIL_KANTHAL, MACHINE_COIL_NICHROME, MACHINE_COIL_SUPERCONDUCTOR
, OVERLAY_LOCKER, OVERLAY_LOCKER_000, OVERLAY_LOCKER_001, OVERLAY_LOCKER_002, OVERLAY_LOCKER_003, OVERLAY_LOCKER_004, OVERLAY_LOCKER_005, OVERLAY_LOCKER_006, OVERLAY_LOCKER_007, OVERLAY_LOCKER_008, OVERLAY_LOCKER_009, OVERLAY_LOCKER_010, OVERLAY_LOCKER_011, OVERLAY_LOCKER_012, OVERLAY_LOCKER_013
- , OVERLAY_LENS, OVERLAY_PIPE, OVERLAY_PIPE_IN, OVERLAY_PIPE_OUT, OVERLAY_MUFFLER, OVERLAY_CONTROLLER, OVERLAY_ACTIVITYDETECTOR, OVERLAY_ENERGYDETECTOR, OVERLAY_FLUIDDETECTOR, OVERLAY_ITEMDETECTOR, OVERLAY_SCREEN, OVERLAY_SHUTTER, OVERLAY_CLOSET, OVERLAY_DUCTTAPE, OVERLAY_MAINTENANCE, OVERLAY_CONVEYOR, OVERLAY_PUMP, OVERLAY_ARM, OVERLAY_DRAIN, OVERLAY_CRAFTING
+ , OVERLAY_LENS, OVERLAY_PIPE, OVERLAY_PIPE_IN, OVERLAY_PIPE_OUT, OVERLAY_MUFFLER, OVERLAY_CONTROLLER, OVERLAY_ACTIVITYDETECTOR, OVERLAY_ENERGYDETECTOR, OVERLAY_FLUIDDETECTOR, OVERLAY_ITEMDETECTOR, OVERLAY_FUSION1, OVERLAY_FUSION2, OVERLAY_FUSION3, OVERLAY_SCREEN, OVERLAY_QTANK, OVERLAY_QCHEST, OVERLAY_SHUTTER, OVERLAY_CLOSET, OVERLAY_DUCTTAPE, OVERLAY_MAINTENANCE, OVERLAY_CONVEYOR, OVERLAY_PUMP, OVERLAY_ARM, OVERLAY_DRAIN, OVERLAY_CRAFTING
, OVERLAY_ENERGY_IN, OVERLAY_ENERGY_OUT , OVERLAY_ENERGY_IN_MULTI, OVERLAY_ENERGY_OUT_MULTI
, OVERLAY_FRONT_LARGE_BOILER, OVERLAY_FRONT_LARGE_BOILER_ACTIVE, OVERLAY_FRONT_VACUUM_FREEZER, OVERLAY_FRONT_VACUUM_FREEZER_ACTIVE, OVERLAY_FRONT_MULTI_SMELTER, OVERLAY_FRONT_MULTI_SMELTER_ACTIVE, OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE, OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ACTIVE, OVERLAY_FRONT_IMPLOSION_COMPRESSOR, OVERLAY_FRONT_IMPLOSION_COMPRESSOR_ACTIVE
, OVERLAY_TOP_POTIONBREWER , OVERLAY_TOP_REPLICATOR , OVERLAY_TOP_MASSFAB , OVERLAY_TOP_STEAM_HAMMER , OVERLAY_TOP_STEAM_FURNACE , OVERLAY_TOP_STEAM_ALLOY_SMELTER , OVERLAY_TOP_STEAM_MACERATOR , OVERLAY_TOP_STEAM_COMPRESSOR , OVERLAY_TOP_STEAM_EXTRACTOR , OVERLAY_TOP_DISASSEMBLER , OVERLAY_TOP_BOXINATOR , OVERLAY_TOP_ROCK_BREAKER , OVERLAY_TOP_SCANNER
@@ -377,7 +377,7 @@ public class Textures {
, HANDLE_SWORD, HANDLE_FILE, HANDLE_SAW, HANDLE_SCREWDRIVER, HANDLE_BUZZSAW, HANDLE_ELECTRIC_SCREWDRIVER, HANDLE_SOLDERING
, POWER_UNIT_LV, POWER_UNIT_MV, POWER_UNIT_HV
, DURABILITY_BAR_0, DURABILITY_BAR_1, DURABILITY_BAR_2, DURABILITY_BAR_3, DURABILITY_BAR_4, DURABILITY_BAR_5, DURABILITY_BAR_6, DURABILITY_BAR_7, DURABILITY_BAR_8
- , ENERGY_BAR_0, ENERGY_BAR_1, ENERGY_BAR_2, ENERGY_BAR_3, ENERGY_BAR_4, ENERGY_BAR_5, ENERGY_BAR_6, ENERGY_BAR_7, ENERGY_BAR_8, TURBINE
+ , ENERGY_BAR_0, ENERGY_BAR_1, ENERGY_BAR_2, ENERGY_BAR_3, ENERGY_BAR_4, ENERGY_BAR_5, ENERGY_BAR_6, ENERGY_BAR_7, ENERGY_BAR_8, TURBINE, TURBINE_SMALL, TURBINE_LARGE, TURBINE_HUGE
;
public static final IIconContainer[]
diff --git a/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java b/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java
index a06151b5cd..7898f3b635 100644
--- a/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java
+++ b/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java
@@ -1,6 +1,10 @@
package gregtech.api.gui;
import static gregtech.api.enums.GT_Values.RES_PATH_GUI;
+
+import java.util.ArrayList;
+import java.util.List;
+
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import net.minecraft.entity.player.InventoryPlayer;
@@ -31,6 +35,25 @@ public class GT_GUIContainer_BasicMachine extends GT_GUIContainerMetaTile_Machin
@Override
protected void drawGuiContainerForegroundLayer(int par1, int par2) {
fontRendererObj.drawString(mName, 8, 4, 4210752);
+ drawTooltip(par1, par2);
+ }
+
+ private void drawTooltip(int x2, int y2){
+ int xStart = (width - xSize) / 2;
+ int yStart = (height - ySize) / 2;
+ int x = x2 - xStart;
+ int y = y2 - yStart +5;
+ List<String> list = new ArrayList<String>();
+ if (y >= 67 && y <= 84) {
+ if (x >= 7 && x <= 24){
+ list.add("Fluid Auto-Output");
+ }
+ if (x >= 25 && x <= 42){
+ list.add("Item Auto-Output");
+ }
+ }
+ if (!list.isEmpty())
+ drawHoveringText(list, x, y, fontRendererObj);
}
@Override
diff --git a/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java b/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
index 2d631545fc..ce5b3c629e 100644
--- a/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
+++ b/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
@@ -552,7 +552,7 @@ public class BaseMetaTileEntity extends BaseTileEntity implements IGregTechTileE
mFacing = (byte)(aValue& 7);
mActive = ((aValue& 8) != 0);
mRedstone = ((aValue&16) != 0);
- mLockUpgrade = ((aValue&32) != 0);
+ //mLockUpgrade = ((aValue&32) != 0);
break;
case 1:
if (hasValidMetaTileEntity()) mMetaTileEntity.onValueUpdate((byte)aValue);
@@ -940,7 +940,8 @@ public class BaseMetaTileEntity extends BaseTileEntity implements IGregTechTileE
@Override
public byte getOutputRedstoneSignal(byte aSide) {
- return (byte)(getCoverBehaviorAtSide(aSide).manipulatesSidedRedstoneOutput(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this) || (mRedstone && getCoverBehaviorAtSide(aSide).letsRedstoneGoOut(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this))?mSidedRedstone[aSide]&15:0);
+ return getCoverBehaviorAtSide(aSide).manipulatesSidedRedstoneOutput(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this) ? mSidedRedstone[aSide]: 0;
+// return (byte)(getCoverBehaviorAtSide(aSide).manipulatesSidedRedstoneOutput(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this) || (mRedstone && getCoverBehaviorAtSide(aSide).letsRedstoneGoOut(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this))?mSidedRedstone[aSide]&15:0);
}
@Override
@@ -949,7 +950,7 @@ public class BaseMetaTileEntity extends BaseTileEntity implements IGregTechTileE
}
@Override
- public void setOutputRedstoneSignal(byte aSide, byte aStrength) {
+ public void setOutputRedstoneSignal(byte aSide, byte aStrength) {
aStrength = (byte)Math.min(Math.max(0, aStrength), 15);
if (aSide >= 0 && aSide < 6 && mSidedRedstone[aSide] != aStrength) {
mSidedRedstone[aSide] = aStrength;
diff --git a/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java b/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java
index e5c9496ccc..59ff78e372 100644
--- a/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java
+++ b/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java
@@ -1,5 +1,6 @@
package gregtech.api.metatileentity.implementations;
+import gregtech.api.GregTech_API;
import gregtech.api.enums.*;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
diff --git a/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java b/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java
index 63cd01f54d..72df4d7cdb 100644
--- a/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java
+++ b/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java
@@ -9,6 +9,7 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.items.GT_MetaBase_Item;
+import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Utility;
import net.minecraft.entity.player.EntityPlayer;
@@ -199,10 +200,10 @@ public class GT_MetaTileEntity_BasicBatteryBuffer extends GT_MetaTileEntity_Tier
}
return new String[] {
- getMetaName(),
+ getLocalName(),
"Stored Items:",
- Long.toString(mStored),
- Long.toString(mMax)};
+ GT_Utility.formatNumbers(mStored)+" EU /",
+ GT_Utility.formatNumbers(mMax)+" EU"};
}
@Override
diff --git a/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
index f4c56427fa..3bf171f434 100644
--- a/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
+++ b/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
@@ -4,6 +4,8 @@ import static gregtech.api.enums.GT_Values.V;
import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
import gregtech.api.enums.ConfigCategories;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
import gregtech.api.gui.GT_Container_MultiMachine;
import gregtech.api.gui.GT_GUIContainer_MultiMachine;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
@@ -12,6 +14,7 @@ import gregtech.api.items.GT_MetaGenerated_Tool;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.objects.GT_ItemStack;
import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_Utility;
import gregtech.common.items.GT_MetaGenerated_Tool_01;
@@ -336,6 +339,66 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity {
}
if (mInventory[1] != null && getBaseMetaTileEntity().getRandomNumber(2) == 0 &&!mInventory[1].getUnlocalizedName().startsWith("gt.blockmachines.basicmachine.")) {
if(mInventory[1].getItem() instanceof GT_MetaGenerated_Tool_01){
+ NBTTagCompound tNBT = mInventory[1].getTagCompound();
+ if (tNBT != null)
+ {
+ NBTTagCompound tNBT2 = tNBT.getCompoundTag("GT.CraftingComponents");
+ if (!tNBT.getBoolean("mDis"))
+ {
+ tNBT2 = new NBTTagCompound();
+ Materials tMaterial = GT_MetaGenerated_Tool.getPrimaryMaterial(mInventory[1]);
+ ItemStack tTurbine = GT_OreDictUnificator.get(OrePrefixes.turbineBlade, tMaterial, 1);
+ int i = mInventory[1].getItemDamage();
+ if(i == 170){
+ ItemStack tStack = GT_Utility.copyAmount(1, tTurbine);
+ tNBT2.setTag("Ingredient.0", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.1", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.2", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.3", tStack.writeToNBT(new NBTTagCompound()));
+ tStack = GT_OreDictUnificator.get(OrePrefixes.stickLong,Materials.Magnalium,1);
+ tNBT2.setTag("Ingredient.4", tStack.writeToNBT(new NBTTagCompound()));
+ }else if(i == 172){
+ ItemStack tStack = GT_Utility.copyAmount(1, tTurbine);
+ tNBT2.setTag("Ingredient.0", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.1", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.2", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.3", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.5", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.6", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.7", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.8", tStack.writeToNBT(new NBTTagCompound()));
+ tStack = GT_OreDictUnificator.get(OrePrefixes.stickLong,Materials.Titanium,1);
+ tNBT2.setTag("Ingredient.4", tStack.writeToNBT(new NBTTagCompound()));
+ }else if(i == 174){
+ ItemStack tStack = GT_Utility.copyAmount(2, tTurbine);
+ tNBT2.setTag("Ingredient.0", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.1", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.2", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.3", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.5", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.6", tStack.writeToNBT(new NBTTagCompound()));
+ tStack = GT_OreDictUnificator.get(OrePrefixes.stickLong,Materials.TungstenSteel,1);
+ tNBT2.setTag("Ingredient.4", tStack.writeToNBT(new NBTTagCompound()));
+ }else if(i == 176){
+ ItemStack tStack = GT_Utility.copyAmount(2, tTurbine);
+ tNBT2.setTag("Ingredient.0", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.1", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.2", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.3", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.5", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.6", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.7", tStack.writeToNBT(new NBTTagCompound()));
+ tNBT2.setTag("Ingredient.8", tStack.writeToNBT(new NBTTagCompound()));
+ tStack = GT_OreDictUnificator.get(OrePrefixes.stickLong,Materials.Americium,1);
+ tNBT2.setTag("Ingredient.4", tStack.writeToNBT(new NBTTagCompound()));
+ }
+ tNBT.setTag("GT.CraftingComponents", tNBT2);
+ tNBT.setBoolean("mDis", true);
+ mInventory[1].setTagCompound(tNBT);
+
+ }
+ }
+
((GT_MetaGenerated_Tool)mInventory[1].getItem()).doDamage(mInventory[1], (long) Math.min(mEUt/5, Math.pow(mEUt, 0.7)));
if(mInventory[1].stackSize==0)mInventory[1]=null;
}
diff --git a/main/java/gregtech/api/util/GT_ModHandler.java b/main/java/gregtech/api/util/GT_ModHandler.java
index 93aba7cfb7..22759cd057 100644
--- a/main/java/gregtech/api/util/GT_ModHandler.java
+++ b/main/java/gregtech/api/util/GT_ModHandler.java
@@ -1500,7 +1500,7 @@ public class GT_ModHandler {
if (aPlayer instanceof EntityPlayer) {
EntityPlayer tPlayer = (EntityPlayer)aPlayer;
if (tPlayer.capabilities.isCreativeMode) return T;
- System.out.println("hier");
+ if(isElectricItem(aStack)&&ic2.api.item.ElectricItem.manager.getCharge(aStack)>1000.0d){
for (int i = 0; i < tPlayer.inventory.mainInventory.length; i++) {
if (GT_Utility.isStackInList(tPlayer.inventory.mainInventory[i], GregTech_API.sSolderingMetalList)) {
tPlayer.inventory.mainInventory[i].stackSize--;
@@ -1508,7 +1508,10 @@ public class GT_ModHandler {
if (canUseElectricItem(aStack, 10000)) {
return GT_ModHandler.useElectricItem(aStack, 10000, (EntityPlayer)aPlayer);
}
+ GT_ModHandler.useElectricItem(aStack, (int) ic2.api.item.ElectricItem.manager.getCharge(aStack), (EntityPlayer)aPlayer);
+ return false;
}
+ }
}
} else {
damageOrDechargeItem(aStack, 1, 1000, aPlayer);
diff --git a/main/java/gregtech/api/util/GT_Recipe.java b/main/java/gregtech/api/util/GT_Recipe.java
index 154d1135a1..130a63d7b6 100644
--- a/main/java/gregtech/api/util/GT_Recipe.java
+++ b/main/java/gregtech/api/util/GT_Recipe.java
@@ -51,6 +51,7 @@ public class GT_Recipe {
public static final GT_Recipe_Map sScannerFakeRecipes = new GT_Recipe_Map (new HashSet<GT_Recipe>( 3), "gt.recipe.scanner" , "Scanner" , null , RES_PATH_GUI+"basicmachines/Scanner" , 1, 1, 1, 0, 1, E , 1, E , T, T);
public static final GT_Recipe_Map sRockBreakerFakeRecipes = new GT_Recipe_Map (new HashSet<GT_Recipe>( 3), "gt.recipe.rockbreaker" , "Rock Breaker" , null , RES_PATH_GUI+"basicmachines/RockBreaker" , 1, 1, 0, 0, 1, E , 1, E , T, T);
public static final GT_Recipe_Map sByProductList = new GT_Recipe_Map (new HashSet<GT_Recipe>( 1000), "gt.recipe.byproductlist" , "Ore Byproduct List" , null , RES_PATH_GUI+"basicmachines/Default" , 1, 6, 1, 0, 1, E , 1, E , T, T);
+ public static final GT_Recipe_Map sRepicatorFakeRecipes = new GT_Recipe_Map (new HashSet<GT_Recipe>( 100), "gt.recipe.replicator" , "Replicator" , null , RES_PATH_GUI+"basicmachines/Replicator" , 0, 1, 0, 1, 1, E , 1, E , T, T);
public static final GT_Recipe_Map sPlasmaArcFurnaceRecipes = new GT_Recipe_Map (new HashSet<GT_Recipe>(10000), "gt.recipe.plasmaarcfurnace" , "Plasma Arc Furnace" , null , RES_PATH_GUI+"basicmachines/PlasmaArcFurnace" , 1, 4, 1, 1, 1, E , 1, E , T, T);
public static final GT_Recipe_Map sArcFurnaceRecipes = new GT_Recipe_Map (new HashSet<GT_Recipe>(10000), "gt.recipe.arcfurnace" , "Arc Furnace" , null , RES_PATH_GUI+"basicmachines/ArcFurnace" , 1, 4, 1, 1, 3, E , 1, E , T, T);
diff --git a/main/java/gregtech/common/GT_Proxy.java b/main/java/gregtech/common/GT_Proxy.java
index 97edf9f6db..8698d53189 100644
--- a/main/java/gregtech/common/GT_Proxy.java
+++ b/main/java/gregtech/common/GT_Proxy.java
@@ -202,7 +202,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler {
"naturalAluminum", "naturalAluminium", "antimatterMilligram", "antimatterGram", "strangeMatter", "coalGenerator", "electricFurnace",
"unfinishedTank", "valvePart", "aquaRegia", "leatherSeal", "leatherSlimeSeal", "hambone", "slimeball", "clay", "enrichedUranium", "camoPaste",
"antiBlock", "burntQuartz", "salmonRaw","blockHopper" ,"blockEnderObsidian","blockIcestone","blockMagicWood","blockEnderCore","blockHeeEndium",
- "oreHeeEndium","oreHeeEndPowder","oreHeeStardust","oreHeeIgneousRock","oreHeeInstabilityOrb","crystalPureFluix","shardNether","gemFluorite",
+ "oreHeeEndPowder","oreHeeStardust","oreHeeIgneousRock","oreHeeInstabilityOrb","crystalPureFluix","shardNether","gemFluorite",
"stickObsidian","caveCrystal","shardCrystal","dyeCrystal"}));
private final Collection<String> mInvalidNames = new HashSet(Arrays.asList(new String[] { "diamondShard", "redstoneRoot", "obsidianStick", "bloodstoneOre",
"universalCable", "bronzeTube", "ironTube", "netherTube", "obbyTube", "infiniteBattery", "eliteBattery", "advancedBattery", "10kEUStore",
@@ -1052,6 +1052,9 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler {
if (aEvent.Name.equals("copperWire")) {
GT_OreDictUnificator.registerOre(OreDictNames.craftingWireCopper, aEvent.Ore);
}
+ if (aEvent.Name.equals("oreHeeEndrium")) {
+ GT_OreDictUnificator.registerOre(OrePrefixes.ore, Materials.Endium, aEvent.Ore);
+ }
if (aEvent.Name.equals("sheetPlastic")) {
GT_OreDictUnificator.registerOre(OrePrefixes.plate, Materials.Plastic, aEvent.Ore);
}
diff --git a/main/java/gregtech/common/GT_RecipeAdder.java b/main/java/gregtech/common/GT_RecipeAdder.java
index 719d517b6c..bb9a173288 100644
--- a/main/java/gregtech/common/GT_RecipeAdder.java
+++ b/main/java/gregtech/common/GT_RecipeAdder.java
@@ -445,6 +445,13 @@ public class GT_RecipeAdder
if ((aMold == null) || (aInput == null) || (aOutput == null)) {
return false;
}
+ if(aInput.isFluidEqual(Materials.PhasedGold.getMolten(144))){
+ aInput = Materials.VibrantAlloy.getMolten(aInput.amount);
+ }
+ if(aInput.isFluidEqual(Materials.PhasedIron.getMolten(144))){
+ aInput = Materials.PulsatingIron.getMolten(aInput.amount);
+ }
+
if ((aDuration = GregTech_API.sRecipeFile.get("fluidsolidifier", aOutput, aDuration)) <= 0) {
return false;
}
@@ -457,6 +464,12 @@ public class GT_RecipeAdder
if ((aInput == null) || (aOutput == null)) {
return false;
}
+ if(aOutput.isFluidEqual(Materials.PhasedGold.getMolten(1))){
+ aOutput = Materials.VibrantAlloy.getMolten(aOutput.amount);
+ }
+ if(aOutput.isFluidEqual(Materials.PhasedIron.getMolten(1))){
+ aOutput = Materials.PulsatingIron.getMolten(aOutput.amount);
+ }
if ((aDuration = GregTech_API.sRecipeFile.get("fluidsmelter", aInput, aDuration)) <= 0) {
return false;
}
@@ -469,9 +482,16 @@ public class GT_RecipeAdder
if ((aInput == null) || (aOutput == null)) {
return false;
}
+ if(aOutput.isFluidEqual(Materials.PhasedGold.getMolten(1))){
+ aOutput = Materials.VibrantAlloy.getMolten(aOutput.amount);
+ }
+ if(aOutput.isFluidEqual(Materials.PhasedIron.getMolten(1))){
+ aOutput = Materials.PulsatingIron.getMolten(aOutput.amount);
+ }
if ((aDuration = GregTech_API.sRecipeFile.get("fluidextractor", aInput, aDuration)) <= 0) {
return false;
}
+
GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(true, new ItemStack[] { aInput }, new ItemStack[] { aRemains }, null, new int[] { aChance }, null, new FluidStack[] { aOutput }, aDuration, aEUt, 0);
return true;
}
diff --git a/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java b/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java
index 2d93c1d63b..f92806b3a9 100644
--- a/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java
+++ b/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java
@@ -2,6 +2,7 @@ package gregtech.common;
import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
+import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Materials;
import gregtech.api.util.GT_Config;
import gregtech.api.world.GT_Worldgen;
@@ -91,6 +92,8 @@ public class GT_Worldgen_GT_Ore_Layer
}
}
}
+ if(GT_Values.D1){
+ System.out.println("Generated Orevein: "+this.mWorldGenName);}
return true;
}
}
diff --git a/main/java/gregtech/common/GT_Worldgenerator.java b/main/java/gregtech/common/GT_Worldgenerator.java
index 8dada2088b..0d2f5fc33e 100644
--- a/main/java/gregtech/common/GT_Worldgenerator.java
+++ b/main/java/gregtech/common/GT_Worldgenerator.java
@@ -85,13 +85,13 @@ public class GT_Worldgenerator
if (tWorldGen.executeWorldgen(this.mWorld, this.mRandom, this.mBiome, this.mDimensionType, this.mX, this.mZ, this.mChunkGenerator, this.mChunkProvider))
{
temp = false;
- break;
}
}
catch (Throwable e)
{
e.printStackTrace(GT_Log.err);
}
+ break;
}
}
}
diff --git a/main/java/gregtech/common/blocks/GT_Block_Machines.java b/main/java/gregtech/common/blocks/GT_Block_Machines.java
index 3943331295..dd791ec783 100644
--- a/main/java/gregtech/common/blocks/GT_Block_Machines.java
+++ b/main/java/gregtech/common/blocks/GT_Block_Machines.java
@@ -296,10 +296,14 @@ public class GT_Block_Machines
public float getPlayerRelativeBlockHardness(EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ)
{
+// System.out.println("player hardness");
TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ);
if (((tTileEntity instanceof BaseMetaTileEntity)) && (((BaseMetaTileEntity)tTileEntity).privateAccess()) && (!((BaseMetaTileEntity)tTileEntity).playerOwnsThis(aPlayer, true))) {
- return -1.0F;
+// System.out.println("locked");
+ return -1.0F;
}
+// System.out.println("unlocked");
+// System.out.println("hardness: "+super.getPlayerRelativeBlockHardness(aPlayer, aWorld, aX, aY, aZ));
return super.getPlayerRelativeBlockHardness(aPlayer, aWorld, aX, aY, aZ);
}
diff --git a/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java b/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java
index 23c3959592..39960e3940 100644
--- a/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java
+++ b/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java
@@ -1,7 +1,9 @@
package gregtech.common.covers;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.Fluid;
+import gregtech.api.GregTech_API;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.ICoverable;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
@@ -24,8 +26,7 @@ public class GT_Cover_NeedMaintainance extends GT_CoverBehavior{
int real = multi.getRepairStatus();
if((aCoverVariable ==0||aCoverVariable==1)&&(ideal-real>0)){
needsRepair=true;
- }
- if((aCoverVariable ==2||aCoverVariable==3)&&(ideal-real>1)){
+ }if((aCoverVariable ==2||aCoverVariable==3)&&(ideal-real>1)){
needsRepair=true;
}if((aCoverVariable ==4||aCoverVariable==5)&&(ideal-real>2)){
needsRepair=true;
@@ -38,6 +39,7 @@ public class GT_Cover_NeedMaintainance extends GT_CoverBehavior{
}
aTileEntity.setOutputRedstoneSignal(aSide, (byte)(needsRepair ? 0 : 15));
+ aTileEntity.setOutputRedstoneSignal(GT_Utility.getOppositeSide(aSide), (byte)(needsRepair ? 0 : 15));
return aCoverVariable;
}
diff --git a/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java b/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java
index 28c87dbb0d..827fb27b71 100644
--- a/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java
+++ b/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java
@@ -18,6 +18,11 @@ public class GT_Cover_RedstoneTransmitterInternal
return true;
}
+ public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+ {
+ return true;
+ }
+
public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
{
return 1;
diff --git a/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java b/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java
index 786b48043a..fa46b2bd43 100644
--- a/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java
+++ b/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java
@@ -146,7 +146,7 @@ public class GT_MetaGenerated_Tool_01
addTool(130, "JackHammer (HV)", "Breaks Rocks into pieces", new GT_Tool_JackHammer(), new Object[] { ToolDictNames.craftingToolJackHammer, new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.PERDITIO, 2L) });
addTool(140, "Buzzsaw (LV)", "Not suitable for harvesting Blocks", new GT_Tool_BuzzSaw(), new Object[] { ToolDictNames.craftingToolSaw, new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ARBOR, 2L) });
GregTech_API.registerTool(addTool(150, "Screwdriver (LV)", "Adjusts Covers and Machines", new GT_Tool_Screwdriver_LV(), new Object[] { ToolDictNames.craftingToolScrewdriver, new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L) }), GregTech_API.sScrewdriverList);
- GregTech_API.registerTool(addTool(SOLDERING_IRON_LV, "Soldering Iron (LV)", "Fixes burned out Circuits. Needs soldering materials in inventory", new GT_Tool_Soldering_Iron(), new Object[] { ToolDictNames.craftingToolSolderingIron, new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L) }), GregTech_API.sSolderingToolList);
+ GregTech_API.registerTool(addTool(SOLDERING_IRON_LV, "Soldering Iron (LV)", "Fixes burned out Circuits. Needs soldering materials in inventory and 10kEU", new GT_Tool_Soldering_Iron(), new Object[] { ToolDictNames.craftingToolSolderingIron, new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L) }), GregTech_API.sSolderingToolList);
addTool(TURBINE_SMALL, "Small Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Small(), new Object[] {});
addTool(TURBINE, "Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Normal(), new Object[] {});
diff --git a/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java b/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java
index 4826c84663..57571cd408 100644
--- a/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java
+++ b/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java
@@ -40,15 +40,16 @@ public class Behaviour_Plunger_Item
{
IMetaTileEntity tMetaTileEntity = ((IGregTechTileEntity)aTileEntity).getMetaTileEntity();
if ((tMetaTileEntity instanceof IMetaTileEntityItemPipe)) {
- for (IMetaTileEntityItemPipe tTileEntity : GT_Utility.sortMapByValuesAcending(IMetaTileEntityItemPipe.Util.scanPipes((IMetaTileEntityItemPipe)tMetaTileEntity, new HashMap(), 0L, false, true)).keySet())
+ for (Object tTileEntity : GT_Utility.sortMapByValuesAcending(IMetaTileEntityItemPipe.Util.scanPipes((IMetaTileEntityItemPipe)tMetaTileEntity, new HashMap(), 0L, false, true)).keySet())
+
{
int i = 0;
- for (int j = tTileEntity.getSizeInventory(); i < j; i++) {
- if (tTileEntity.isValidSlot(i)) {
- if ((tTileEntity.getStackInSlot(i) != null) && (
+ for (int j = ((IMetaTileEntityItemPipe)tTileEntity).getSizeInventory(); i < j; i++) {
+ if (((IMetaTileEntityItemPipe)tTileEntity).isValidSlot(i)) {
+ if ((((IMetaTileEntityItemPipe)tTileEntity).getStackInSlot(i) != null) && (
(aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool)aItem).doDamage(aStack, this.mCosts))))
{
- ItemStack tStack = tTileEntity.decrStackSize(i, 64);
+ ItemStack tStack = ((IMetaTileEntityItemPipe)tTileEntity).decrStackSize(i, 64);
if (tStack != null)
{
EntityItem tEntity = new EntityItem(aWorld, ((IGregTechTileEntity)aTileEntity).getOffsetX((byte)aSide, 1) + 0.5D, ((IGregTechTileEntity)aTileEntity).getOffsetY((byte)aSide, 1) + 0.5D, ((IGregTechTileEntity)aTileEntity).getOffsetZ((byte)aSide, 1) + 0.5D, tStack);
diff --git a/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java b/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java
index bb19069cf5..5791e7605b 100644
--- a/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java
+++ b/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java
@@ -1,8 +1,12 @@
package gregtech.common.tileentities.generators;
+import static gregtech.api.enums.GT_Values.V;
+
import java.util.ArrayList;
import thaumcraft.api.aspects.Aspect;
+import thaumcraft.api.aspects.AspectList;
+import thaumcraft.api.aspects.IEssentiaContainerItem;
import thaumcraft.api.visnet.VisNetHandler;
import cpw.mods.fml.common.Loader;
import net.minecraft.block.Block;
@@ -17,8 +21,10 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
+import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.GregTech_API;
import gregtech.api.enums.ConfigCategories;
+import gregtech.api.enums.TC_Aspects;
import gregtech.api.enums.Textures;
import gregtech.api.enums.Textures.BlockIcons;
import gregtech.api.interfaces.ITexture;
@@ -30,8 +36,7 @@ import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
-public class GT_MetaTileEntity_MagicalEnergyAbsorber
- extends GT_MetaTileEntity_BasicGenerator
+public class GT_MetaTileEntity_MagicalEnergyAbsorber extends GT_MetaTileEntity_BasicGenerator
{
public int mEfficiency;
@@ -154,12 +159,25 @@ public class GT_MetaTileEntity_MagicalEnergyAbsorber
}
}
- //Absorb entchantments
-
+ //Absorb entchantments
try
{
if ((this.mInventory[0] != null) && (this.mInventory[1] == null))
{
+ if(isThaumcraftLoaded && this.mInventory[0].getItem() instanceof IEssentiaContainerItem){
+ AspectList tAspect = ((IEssentiaContainerItem)this.mInventory[0].getItem()).getAspects(this.mInventory[0]);
+ TC_Aspects tValue = TC_Aspects.valueOf(tAspect.getAspects()[0].getTag().toUpperCase());
+ int tEU = (tValue.mValue*tAspect.getAmount((Aspect) tValue.mAspect)*100);
+ getBaseMetaTileEntity().increaseStoredEnergyUnits(tEU, true);
+ ItemStack tStack = this.mInventory[0].copy();
+ tStack.setTagCompound(null);
+ tStack.setItemDamage(0);
+ tStack.stackSize=1;
+ this.mInventory[1]=tStack;
+ this.mInventory[0].stackSize--;
+ if(this.mInventory[0].stackSize<1){this.mInventory[0]=null;}
+
+ }else{
if ((this.mInventory[0].isItemEnchanted()) && (this.mInventory[0].getItem().getItemEnchantability() > 0))
{
NBTTagList tEnchantments = this.mInventory[0].getEnchantmentTagList();
@@ -203,7 +221,7 @@ public class GT_MetaTileEntity_MagicalEnergyAbsorber
this.mInventory[1] = this.mInventory[0];
this.mInventory[0] = null;
}
- }
+ }}
catch (Throwable e){}
}
}
@@ -221,6 +239,8 @@ public class GT_MetaTileEntity_MagicalEnergyAbsorber
if(above==null||Blocks.air==above){return false;}
return Blocks.dragon_egg == above || above.getUnlocalizedName().equals("tile.dragonEgg");
}
+
+ @Override public long maxEUStore(){return Math.max(getEUVar(), V[mTier] * 16000 + getMinimumStoredEU());}
public int getEfficiency()
{
diff --git a/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java b/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java
index a5a0e9c87f..c56f03e38e 100644
--- a/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java
+++ b/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java
@@ -92,17 +92,16 @@ public class GT_MetaTileEntity_Boxinator
return 0;
}
-public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack)
-{
- if(super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack))
- return getInputSlot() != aIndex && ItemList.Crate_Empty.isStackEqual(aStack) || ItemList.Schematic_1by1.isStackEqual(getInputAt(1)) || ItemList.Schematic_2by2.isStackEqual(getInputAt(1)) || ItemList.Schematic_3by3.isStackEqual(getInputAt(1)) || gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.findRecipe(getBaseMetaTileEntity(), true, GT_Values.V[mTier], null, new ItemStack[] {
- GT_Utility.copyAmount(64L, new Object[] {
- aStack
- }), getInputAt(1)
- }) != null;
- else
- return false;
-}
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack)
+ {
+ if (super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack))
+ {
+ if ((ItemList.Schematic_1by1.isStackEqual(getInputAt(1))) || (ItemList.Schematic_2by2.isStackEqual(getInputAt(1))) || (ItemList.Schematic_3by3.isStackEqual(getInputAt(1)))) {
+ return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.findRecipe(getBaseMetaTileEntity(), true, gregtech.api.enums.GT_Values.V[this.mTier], null, new ItemStack[] { GT_Utility.copyAmount(64L, new Object[] { aStack }), getInputAt(1) }) != null;
+ }else{return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.containsInput(aStack);}
+ }
+ return false;
+ }
}
diff --git a/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java b/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java
index 09389f7251..1a5d8e1a6d 100644
--- a/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java
+++ b/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java
@@ -41,13 +41,13 @@ public class GT_MetaTileEntity_Disassembler
{
getInputAt(0).stackSize -= 1;
this.mEUt = (16 * (1 << this.mTier - 1) * (1 << this.mTier - 1));
- this.mMaxProgresstime = 160;
+ this.mMaxProgresstime = 80;
for (int i = 0; i < this.mOutputItems.length; i++) {
if (getBaseMetaTileEntity().getRandomNumber(100) < 50 + 10 * this.mTier)
{
this.mOutputItems[i] = GT_Utility.loadItem(tNBT, "Ingredient." + i);
if (this.mOutputItems[i] != null) {
- this.mMaxProgresstime *= 2;
+ this.mMaxProgresstime *= 1.7;
}
}
}
diff --git a/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Pump.java b/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Pump.java
index bdf62625e1..40020ef435 100644
--- a/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Pump.java
+++ b/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Pump.java
@@ -195,9 +195,11 @@ public class GT_MetaTileEntity_Pump extends GT_MetaTileEntity_Hatch {
return y + 1;
}
} else if (getBaseMetaTileEntity().getBlock(getBaseMetaTileEntity().getXCoord(), y, getBaseMetaTileEntity().getZCoord()) != GT_Utility
- .getBlockFromStack(GT_ModHandler.getIC2Item("miningPipeTip", 1L))) {
+ .getBlockFromStack(GT_ModHandler.getIC2Item("miningPipeTip", 1L))&&this.mInventory[0] != null&&this.mInventory[0].stackSize>0&&GT_Utility.areStacksEqual(this.mInventory[0], GT_ModHandler.getIC2Item("miningPipe", 1L))) {
getBaseMetaTileEntity().getWorld().setBlock(getBaseMetaTileEntity().getXCoord(), y, getBaseMetaTileEntity().getZCoord(),
GT_Utility.getBlockFromStack(GT_ModHandler.getIC2Item("miningPipeTip", 1L)));
+ getBaseMetaTileEntity().decrStackSize(0, 1);
+
}
return y;
}
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java
index d2ecf40a57..f402e730db 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java
@@ -9,6 +9,7 @@ import gregtech.api.enums.Dyes;
import gregtech.api.enums.Textures;
import gregtech.api.gui.GT_Container_MultiMachine;
import gregtech.api.gui.GT_GUIContainer_MultiMachine;
+import gregtech.api.interfaces.IIconContainer;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
@@ -222,7 +223,7 @@ public abstract class GT_MetaTileEntity_FusionComputer
{
ITexture[] sTexture;
if(aSide==aFacing){
- sTexture = new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_FUSION_GLASS, Dyes.getModulation(-1, Dyes._NULL.mRGBa)),new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_SCREEN) };
+ sTexture = new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_FUSION_GLASS, Dyes.getModulation(-1, Dyes._NULL.mRGBa)),new GT_RenderedTexture(getIconOverlay()) };
}else{
if(!aActive){
sTexture = new ITexture[] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_FUSION_GLASS, Dyes.getModulation(-1, Dyes._NULL.mRGBa))};}else{
@@ -231,6 +232,8 @@ public abstract class GT_MetaTileEntity_FusionComputer
}
return sTexture;
}
+
+ public abstract IIconContainer getIconOverlay();
@Override
public boolean isCorrectMachinePart(ItemStack aStack) {return true;}
@@ -352,6 +355,9 @@ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
}
}
}
+ if(this.mEUStore<=0&&mMaxProgresstime>0){
+ stopMachine();
+ }
if (getRepairStatus() > 0) {
if (mMaxProgresstime > 0 && doRandomMaintenanceDamage()) {
this.getBaseMetaTileEntity().decreaseStoredEnergyUnits(mEUt, true);
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java
index b99a6678b5..3c23afcbb5 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java
@@ -1,6 +1,8 @@
package gregtech.common.tileentities.machines.multi;
import gregtech.api.GregTech_API;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import net.minecraft.block.Block;
@@ -43,4 +45,9 @@ public class GT_MetaTileEntity_FusionComputer1 extends GT_MetaTileEntity_FusionC
return GregTech_API.sBlockCasings1;
}
+ @Override
+ public IIconContainer getIconOverlay() {
+ return Textures.BlockIcons.OVERLAY_FUSION1;
+ }
+
}
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java
index 0f7fab7bd8..d101875ba2 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java
@@ -1,6 +1,8 @@
package gregtech.common.tileentities.machines.multi;
import gregtech.api.GregTech_API;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import net.minecraft.block.Block;
@@ -43,4 +45,8 @@ public class GT_MetaTileEntity_FusionComputer2 extends GT_MetaTileEntity_FusionC
return GregTech_API.sBlockCasings4;
}
+ @Override
+ public IIconContainer getIconOverlay() {
+ return Textures.BlockIcons.OVERLAY_FUSION2;
+ }
}
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java
index 42371fbe82..b7334bd449 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java
@@ -1,6 +1,8 @@
package gregtech.common.tileentities.machines.multi;
import gregtech.api.GregTech_API;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import net.minecraft.block.Block;
@@ -43,5 +45,10 @@ public class GT_MetaTileEntity_FusionComputer3 extends GT_MetaTileEntity_FusionC
return GregTech_API.sBlockCasings4;
}
+ @Override
+ public IIconContainer getIconOverlay() {
+ return Textures.BlockIcons.OVERLAY_FUSION3;
+ }
+
}
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_HeatExchanger.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_HeatExchanger.java
index 30ee99fed5..3a6a51fa46 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_HeatExchanger.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_HeatExchanger.java
@@ -82,73 +82,92 @@ public class GT_MetaTileEntity_HeatExchanger extends GT_MetaTileEntity_MultiBloc
return aFacing > 1;
}
- public boolean checkRecipe(ItemStack aStack)
- {
- if(GT_ModHandler.isLava(mInputHotFluidHatch.getFluid())){
- int fluidAmount = mInputHotFluidHatch.getFluidAmount();
- if(fluidAmount >= 500){superheated=true;}else{superheated=false;}
- if(fluidAmount>1000){fluidAmount=1000;}
- mInputHotFluidHatch.drain(fluidAmount, true);
- mOutputColdFluidHatch.fill(FluidRegistry.getFluidStack("ic2pahoehoelava", fluidAmount), true);
-
-
- this.mMaxProgresstime = 20;
- this.mEUt = fluidAmount*4;
- this.mEfficiencyIncrease = 80;
- return true;
- }
-
- if(mInputHotFluidHatch.getFluid().isFluidEqual(FluidRegistry.getFluidStack("ic2hotcoolant", 1))){
- int fluidAmount = mInputHotFluidHatch.getFluidAmount();
- if(fluidAmount >= 4000){superheated=true;}else{superheated=false;}
- if(fluidAmount>8000){fluidAmount=8000;}
- mInputHotFluidHatch.drain(fluidAmount, true);
- mOutputColdFluidHatch.fill(FluidRegistry.getFluidStack("ic2coolant", fluidAmount), true);
-
-
- this.mMaxProgresstime = 20;
- this.mEUt = fluidAmount/2;
- this.mEfficiencyIncrease = 20;
- return true;
- }
- return false;}
+ public boolean checkRecipe(ItemStack aStack) {
+ if (mInputHotFluidHatch.getFluid() == null)
+ return true;
+
+ int fluidAmountToConsume = mInputHotFluidHatch.getFluidAmount(); // how much fluid is in hatch
+
+ int superheated_threshold = 4000; // default: must have 4000L per second to generate superheated steam
+ float efficiency = 1f; // default: operate at 100% efficiency with no integrated circuitry
+ float penalty_per_config = 0.015f; // penalize 1.5% efficiency per circuitry level (1-25)
+ int shs_reduction_per_config = 150; // reduce threshold 150L/s per circuitry level (1-25)
+ float steam_output_multiplier = 4f; // default: multiply output by 4
+ float penalty = 0.0f; // penalty to apply to output based on circuitry level (1-25).
+ boolean do_lava = false;
+
+ // Do we have an integrated circuit with a valid configuration?
+ if (mInventory[1] != null && mInventory[1].getUnlocalizedName().startsWith("gt.integrated_circuit")) {
+ int circuit_config = mInventory[1].getItemDamage();
+ if (circuit_config >= 1 && circuit_config <= 25) {
+ // If so, apply the penalty and reduced threshold.
+ penalty = (circuit_config - 1) * penalty_per_config;
+ superheated_threshold -= (shs_reduction_per_config * (circuit_config - 1));
+ }
+ }
+ efficiency -= penalty;
+
+ // If we're working with lava, adjust the threshold and multipliers accordingly.
+ if (GT_ModHandler.isLava(mInputHotFluidHatch.getFluid())) {
+ superheated_threshold /= 4;
+ do_lava = true;
+ } else if (mInputHotFluidHatch.getFluid().isFluidEqual(FluidRegistry.getFluidStack("ic2hotcoolant", 1))) {
+ steam_output_multiplier = 0.5f;
+ } else {
+ // If we're working with neither, fail out
+ return false;
+ }
+
+ superheated = fluidAmountToConsume >= superheated_threshold; // set the internal superheated flag if we have enough hot fluid. Used in the onRunningTick method.
+ fluidAmountToConsume = Math.min(fluidAmountToConsume, superheated_threshold * 2); // Don't consume too much hot fluid per second
+ mInputHotFluidHatch.drain(fluidAmountToConsume, true);
+ this.mMaxProgresstime = 20;
+ this.mEUt = (int) (fluidAmountToConsume * steam_output_multiplier * efficiency);
+ if (do_lava) {
+ mOutputColdFluidHatch.fill(FluidRegistry.getFluidStack("ic2pahoehoelava", fluidAmountToConsume), true);
+ this.mEfficiencyIncrease = 80;
+ } else {
+ mOutputColdFluidHatch.fill(FluidRegistry.getFluidStack("ic2coolant", fluidAmountToConsume), true);
+ this.mEfficiencyIncrease = 80;
+ }
+ return true;
+ }
- private float water;
- private int useWater(float input){
- water = water + input;
- int usage = (int)water;
- water = water - (int)usage;
- return usage;
- }
+ private float water;
+ private int useWater(float input) {
+ water = water + input;
+ int usage = (int) water;
+ water = water - (int) usage;
+ return usage;
+ }
- public boolean onRunningTick(ItemStack aStack) {
+ public boolean onRunningTick(ItemStack aStack) {
+ if (this.mEUt > 0) {
+ int tGeneratedEU = (int) (this.mEUt * 2L * this.mEfficiency / 10000L); // APPROXIMATELY how much steam to generate.
+ if (tGeneratedEU > 0) {
- if (this.mEUt > 0) {
- int tGeneratedEU = (int) (this.mEUt * 2L * this.mEfficiency / 10000L); // APPROXIMATELY how much steam to generate.
-
- if (tGeneratedEU > 0) {
- if (superheated)
- tGeneratedEU /= 2; // We produce half as much superheated steam if necessary
+ if (superheated)
+ tGeneratedEU /= 2; // We produce half as much superheated steam if necessary
- int distilledConsumed = useWater(tGeneratedEU / 160f); // how much distilled water to consume
- tGeneratedEU = distilledConsumed * 160; // EXACTLY how much steam to generate, producing a perfect 1:160 ratio with distilled water consumption
+ int distilledConsumed = useWater(tGeneratedEU / 160f); // how much distilled water to consume
+ //tGeneratedEU = distilledConsumed * 160; // EXACTLY how much steam to generate, producing a perfect 1:160 ratio with distilled water consumption
- FluidStack distilledStack = GT_ModHandler.getDistilledWater(distilledConsumed);
- if (depleteInput(distilledStack)) // Consume the distilled water
- {
- if (superheated) {
- addOutput(FluidRegistry.getFluidStack("ic2superheatedsteam", tGeneratedEU)); // Generate superheated steam
- } else {
- addOutput(GT_ModHandler.getSteam(tGeneratedEU)); // Generate regular steam
- }
- } else {
- explodeMultiblock(); // Generate crater
+ FluidStack distilledStack = GT_ModHandler.getDistilledWater(distilledConsumed);
+ if (depleteInput(distilledStack)) // Consume the distilled water
+ {
+ if (superheated) {
+ addOutput(FluidRegistry.getFluidStack("ic2superheatedsteam", tGeneratedEU)); // Generate superheated steam
+ } else {
+ addOutput(GT_ModHandler.getSteam(tGeneratedEU)); // Generate regular steam
+ }
+ } else {
+ explodeMultiblock(); // Generate crater
+ }
+ }
+ return true;
}
- }
- return true;
+ return true;
}
- return true;
- }
private static boolean controller;
public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack)
{
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine.java
index 03509dd9ac..b0da650175 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine.java
@@ -154,15 +154,16 @@ public abstract class GT_MetaTileEntity_LargeTurbine extends GT_MetaTileEntity_M
else
this.mEUt = newPower;
- this.mMaxProgresstime = 1;
- this.mEfficiencyIncrease = (10);
- if (mEUt <= 0) {
- mEfficiency = 0;
- stopMachine();
- return false;
- } else {
- return true;
- }
+ if (mEUt <= 0) {
+
+ this.mEfficiencyIncrease = (-10);
+ //stopMachine();
+ return false;
+ } else {
+ this.mMaxProgresstime = 1;
+ this.mEfficiencyIncrease = (10);
+ return true;
+ }
}
abstract int fluidIntoPower(ArrayList<FluidStack> aFluids, int aOptFlow, int aBaseEff);
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java
index ceed528bf4..e743bcb10c 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java
@@ -71,7 +71,7 @@ public class GT_MetaTileEntity_LargeTurbine_Plasma extends GT_MetaTileEntity_Lar
@Override
int fluidIntoPower(ArrayList<FluidStack> aFluids, int aOptFlow, int aBaseEff) {
- aOptFlow *= 40;
+ aOptFlow *= 20;
int tEU = 0;
int actualOptimalFlow = 0;
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java
index 535069b333..af799b8ab9 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java
@@ -72,9 +72,9 @@ public class GT_MetaTileEntity_LargeTurbine_Steam extends GT_MetaTileEntity_Larg
int remainingFlow = (int) (aOptFlow * 1.25f); // Allowed to use up to 125% of optimal flow. Variable required outside of loop for multi-hatch scenarios.
for (int i = 0; i < aFluids.size() && remainingFlow > 0; i++) { // loop through each hatch; extract inputs and track totals.
- if (aFluids.get(i).getFluid().getUnlocalizedName(aFluids.get(i)).equals("fluid.steam")
- || aFluids.get(i).getFluid().getUnlocalizedName(aFluids.get(i)).equals("ic2.fluidSteam")) {
- flow = aFluids.get(i).amount; // Get all (steam) in hatch
+ String fluidName = aFluids.get(i).getFluid().getUnlocalizedName(aFluids.get(i));
+ if (fluidName.equals("fluid.steam") || fluidName.equals("ic2.fluidSteam") || fluidName.equals("fluid.mfr.steam.still.name")) {
+ flow = aFluids.get(i).amount; // Get all (steam) in hatch
flow = Math.min(flow, Math.min(remainingFlow, (int) (aOptFlow * 1.25f))); // try to use up to 125% of optimal flow w/o exceeding remainingFlow
depleteInput(new FluidStack(aFluids.get(i), flow)); // deplete that amount
remainingFlow -= flow; // track amount we're allowed to continue depleting from hatches
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java
index 8096f48329..61ff12fcff 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java
@@ -110,6 +110,8 @@ public class GT_MetaTileEntity_ProcessingArray extends GT_MetaTileEntity_MultiBl
return GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes;
}else if(tmp.startsWith("bender")){
return GT_Recipe.GT_Recipe_Map.sBenderRecipes;
+ }else if(tmp.startsWith("wiremill")){
+ return GT_Recipe.GT_Recipe_Map.sWiremillRecipes;
}
return null;
}
diff --git a/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java b/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java
index be75334a3e..08428153aa 100644
--- a/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java
+++ b/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java
@@ -226,7 +226,8 @@ public class GT_MetaTileEntity_QuantumChest extends GT_MetaTileEntity_TieredMach
@Override
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity,byte aSide, byte aFacing, byte aColorIndex, boolean aActive,boolean aRedstone) {
- return aSide == aBaseMetaTileEntity.getFrontFacing() ? new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1],new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_SCREEN)} :new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]};//aSide != aFacing ? mMachineBlock != 0 ? new ITexture[] {Textures.BlockIcons.CASING_BLOCKS[mMachineBlock]} : new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]} : mMachineBlock != 0 ? aActive ? getTexturesActive(Textures.BlockIcons.CASING_BLOCKS[mMachineBlock]) : getTexturesInactive(Textures.BlockIcons.CASING_BLOCKS[mMachineBlock]) : aActive ? getTexturesActive(Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]) : getTexturesInactive(Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]);
+ if(aBaseMetaTileEntity.getFrontFacing()==0&&aSide==4){return new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1],new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_QCHEST)}; }
+ return aSide == aBaseMetaTileEntity.getFrontFacing() ? new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1],new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_QCHEST)} :new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]};//aSide != aFacing ? mMachineBlock != 0 ? new ITexture[] {Textures.BlockIcons.CASING_BLOCKS[mMachineBlock]} : new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]} : mMachineBlock != 0 ? aActive ? getTexturesActive(Textures.BlockIcons.CASING_BLOCKS[mMachineBlock]) : getTexturesInactive(Textures.BlockIcons.CASING_BLOCKS[mMachineBlock]) : aActive ? getTexturesActive(Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]) : getTexturesInactive(Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]);
}
@Override
diff --git a/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumTank.java b/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumTank.java
index c7e855eb66..a27feb5814 100644
--- a/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumTank.java
+++ b/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumTank.java
@@ -28,7 +28,7 @@ public class GT_MetaTileEntity_QuantumTank
@Override
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- return aSide ==1 ? new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1],new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_SCREEN)} :new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]};
+ return aSide ==1 ? new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1],new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_QTANK)} :new ITexture[] {Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex+1]};
}
@Override
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine.java b/main/java/gregtech/common/tools/GT_Tool_Turbine.java
index 89df4bfc85..7640c4fe8a 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Turbine.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine.java
@@ -13,13 +13,14 @@ import net.minecraft.util.IChatComponent;
public abstract class GT_Tool_Turbine extends GT_Tool{
public abstract float getBaseDamage();
@Override public boolean isMinableBlock(Block aBlock, byte aMetaData) {return false;}
- @Override public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {return aIsToolHead ? Textures.ItemIcons.TURBINE : null;}
+ @Override public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {return aIsToolHead ? getTurbineIcon(): null;}
@Override public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {return aIsToolHead ? GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa : null;}
public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity)
{
return new ChatComponentText(EnumChatFormatting.GREEN + aPlayer.getCommandSenderName() + EnumChatFormatting.WHITE + " put " + EnumChatFormatting.RED +
aEntity.getCommandSenderName()+"s" + EnumChatFormatting.WHITE + " head into a turbine");
}
+ public abstract IIconContainer getTurbineIcon();
public abstract float getSpeedMultiplier();
public abstract float getMaxDurabilityMultiplier();
public ItemStack getBrokenItem(ItemStack aStack){return null;}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java b/main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java
index 0bf3b783a5..f2ec5a737f 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java
@@ -1,7 +1,11 @@
package gregtech.common.tools;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+
public class GT_Tool_Turbine_Huge extends GT_Tool_Turbine {
@Override public float getSpeedMultiplier() {return 4.0F;}
@Override public float getMaxDurabilityMultiplier() {return 4.0F;}
@Override public float getBaseDamage() {return 3.0F;}
+ @Override public IIconContainer getTurbineIcon() {return Textures.ItemIcons.TURBINE_HUGE;}
}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java b/main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java
index 57947aea7a..ed0713cd7b 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java
@@ -1,7 +1,11 @@
package gregtech.common.tools;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+
public class GT_Tool_Turbine_Large extends GT_Tool_Turbine {
@Override public float getSpeedMultiplier() {return 3.0F;}
@Override public float getMaxDurabilityMultiplier() {return 3.0F;}
@Override public float getBaseDamage() {return 5.0F;}
+ @Override public IIconContainer getTurbineIcon() {return Textures.ItemIcons.TURBINE_LARGE;}
}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java b/main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java
index 8327a74332..a29ad632d6 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java
@@ -1,7 +1,11 @@
package gregtech.common.tools;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+
public class GT_Tool_Turbine_Normal extends GT_Tool_Turbine {
@Override public float getSpeedMultiplier() {return 2.0F;}
@Override public float getMaxDurabilityMultiplier() {return 2.0F;}
@Override public float getBaseDamage() {return 2.5F;}
+ @Override public IIconContainer getTurbineIcon() {return Textures.ItemIcons.TURBINE;}
}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java b/main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java
index fb93a2b290..4292ab73fb 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java
@@ -1,7 +1,12 @@
package gregtech.common.tools;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+
public class GT_Tool_Turbine_Small extends GT_Tool_Turbine {
@Override public float getSpeedMultiplier() {return 1.0F;}
@Override public float getMaxDurabilityMultiplier() {return 1.0F;}
@Override public float getBaseDamage() {return 0.0F;}
+ @Override public IIconContainer getTurbineIcon() {return Textures.ItemIcons.TURBINE_SMALL;}
+
}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Wrench.java b/main/java/gregtech/common/tools/GT_Tool_Wrench.java
index 8a79c96750..2b68b6eaa2 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Wrench.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Wrench.java
@@ -141,10 +141,4 @@ public class GT_Tool_Wrench
{
return new ChatComponentText(EnumChatFormatting.GREEN + aPlayer.getCommandSenderName() + EnumChatFormatting.WHITE + " threw a Monkey Wrench into the Plans of " + EnumChatFormatting.RED + aEntity.getCommandSenderName() + EnumChatFormatting.WHITE);
}
-}
-
-
-/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
- * Qualified Name: gregtech.common.tools.GT_Tool_Wrench
- * JD-Core Version: 0.7.0.1
- */ \ No newline at end of file
+} \ No newline at end of file
diff --git a/main/java/gregtech/loaders/misc/GT_Achievements.java b/main/java/gregtech/loaders/misc/GT_Achievements.java
index dd2074d7d7..35e090f90b 100644
--- a/main/java/gregtech/loaders/misc/GT_Achievements.java
+++ b/main/java/gregtech/loaders/misc/GT_Achievements.java
@@ -295,11 +295,17 @@ public int adjY = 9;
if (player == null||stack==null) {
return;
}
+ ItemData data = GT_OreDictUnificator.getItemData(stack);
+ if (data != null) {
+ if (data.mPrefix == OrePrefixes.dust&&data.mMaterial.mMaterial == Materials.Bronze) {
+ issueAchievement(player, "bronze");
+ }else if(data.mPrefix == OrePrefixes.circuit&&data.mMaterial.mMaterial == Materials.Advanced){
+ issueAchievement(player, "stepforward");
+ }
+ }
if(stack.getUnlocalizedName().startsWith("gt.metaitem.")){
if(stack.getUnlocalizedName().equals("gt.metaitem.01.2300")){
issueAchievement(player, "bronze");
- }else if(stack.getUnlocalizedName().equals("gt.metaitem.01.2300")){
- issueAchievement(player, "bronze");
}else if(stack.getUnlocalizedName().equals("gt.metaitem.01.32700")){
issueAchievement(player, "smallparts");
}else if(stack.getUnlocalizedName().equals("gt.metaitem.01.23354")){
@@ -445,6 +451,8 @@ public int adjY = 9;
issueAchievement(player, "steel");
}
}
+ }else if(data.mPrefix == OrePrefixes.circuit&&data.mMaterial.mMaterial == Materials.Advanced){
+ issueAchievement(player, "stepforward");
}
}
if(stack.getUnlocalizedName().startsWith("gt.metaitem.")){
@@ -485,8 +493,6 @@ public int adjY = 9;
}else if(stack.getUnlocalizedName().equals("gt.metaitem.01.32605")){
issueAchievement(player, "whatnow");
}
- }else if(stack.getUnlocalizedName().equals("ic2.itemPartCircuitAdv")){
- issueAchievement(player, "stepforward");
}
}
}
diff --git a/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java
index 583c39fbd1..02997f89ea 100644
--- a/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java
+++ b/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java
@@ -28,6 +28,13 @@ import ic2.api.recipe.IMachineRecipeManager;
import java.io.PrintStream;
import java.util.Arrays;
+import cofh.api.modhelpers.ThaumcraftHelper;
+import cpw.mods.fml.common.Loader;
+import thaumcraft.api.ThaumcraftApi;
+import thaumcraft.api.ThaumcraftApiHelper;
+import thaumcraft.api.aspects.Aspect;
+import thaumcraft.api.aspects.AspectList;
+import thaumcraft.api.aspects.IEssentiaContainerItem;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
@@ -733,6 +740,22 @@ public class GT_MachineRecipeLoader
GT_Values.RA.addDistillationTowerRecipe(Materials.Water.getFluid(288L), new FluidStack[]{GT_ModHandler.getDistilledWater(260L)}, null, 16, 64);
GT_Values.RA.addDistillationTowerRecipe(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 250), new FluidStack[]{new FluidStack(FluidRegistry.getFluid("ic2biogas"), 8000),Materials.Water.getFluid(125L)}, ItemList.IC2_Fertilizer.get(1, new Object[0]), 150, 512);
GT_Values.RA.addFuel(GT_ModHandler.getIC2Item("biogasCell", 1L), null, 32, 1);
+
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("Thaumcraft", "ItemShard", 1L, 6), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ForbiddenMagic", "GluttonyShard", 1L), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ForbiddenMagic", "FMResource", 1L, 3), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ForbiddenMagic", "NetherShard", 1L), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ForbiddenMagic", "NetherShard", 1L,1), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ForbiddenMagic", "NetherShard", 1L,2), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ForbiddenMagic", "NetherShard", 1L,3), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ForbiddenMagic", "NetherShard", 1L,4), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ForbiddenMagic", "NetherShard", 1L,5), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ForbiddenMagic", "NetherShard", 1L,6), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("TaintedMagic", "WarpedShard", 1L), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("TaintedMagic", "FluxShard", 1L), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("TaintedMagic", "EldritchShard", 1L), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ThaumicTinkerer", "kamiResource", 1L,6), null, 720, 5);
+ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ThaumicTinkerer", "kamiResource", 1L,7), null, 720, 5);
GT_Values.RA.addElectrolyzerRecipe(GT_Values.NI, ItemList.Cell_Empty.get(1L, new Object[0]), Materials.Water.getFluid(3000L), Materials.Hydrogen.getGas(2000L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 1500, 30);
GT_Values.RA.addElectrolyzerRecipe(GT_Values.NI, ItemList.Cell_Empty.get(1L, new Object[0]), GT_ModHandler.getDistilledWater(3000L), Materials.Hydrogen.getGas(2000L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 1500, 30);
diff --git a/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java b/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java
index d979e35f7b..b9e9ecea00 100644
--- a/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java
+++ b/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java
@@ -947,7 +947,7 @@ public class GT_Loader_MetaTileEntities
ItemList.MagicEnergyAbsorber_MV.set(new GT_MetaTileEntity_MagicalEnergyAbsorber(1128, "basicgenerator.magicenergyabsorber.tier.02", "Adept Magic Energy Absorber",2).getStackForm(1L));
ItemList.MagicEnergyAbsorber_HV.set(new GT_MetaTileEntity_MagicalEnergyAbsorber(1129, "basicgenerator.magicenergyabsorber.tier.03", "Master Magic Energy Absorber",3).getStackForm(1L));
ItemList.MagicEnergyAbsorber_EV.set(new GT_MetaTileEntity_MagicalEnergyAbsorber(1130, "basicgenerator.magicenergyabsorber.tier.04", "Grandmaster Magic Energy Absorber",4).getStackForm(1L));
- if (GregTech_API.sThaumcraftCompat == null){
+ if (!Loader.isModLoaded("Thaumcraft")){
GT_ModHandler.addCraftingRecipe(ItemList.MagicEnergyConverter_LV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CTC", "FMF", "CBC", Character.valueOf('M'), ItemList.Hull_LV, Character.valueOf('B'), new ItemStack(Blocks.beacon), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Advanced), Character.valueOf('T'), ItemList.Field_Generator_LV, Character.valueOf('F'), OrePrefixes.plate.get(Materials.Platinum) });
GT_ModHandler.addCraftingRecipe(ItemList.MagicEnergyConverter_MV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "CTC", "FMF", "CBC", Character.valueOf('M'), ItemList.Hull_MV, Character.valueOf('B'), new ItemStack(Blocks.beacon), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Data), Character.valueOf('T'), ItemList.Field_Generator_MV, Character.valueOf('F'), OrePrefixes.plate.get(Materials.Iridium) });