aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/goodgenerator/blocks/tileEntity/CoolantTower.java8
-rw-r--r--src/main/java/goodgenerator/blocks/tileEntity/PreciseAssembler.java42
-rw-r--r--src/main/java/goodgenerator/loader/Loaders.java18
-rw-r--r--src/main/java/goodgenerator/loader/RecipeLoader_02.java61
-rw-r--r--src/main/java/goodgenerator/util/ItemRefer.java2
-rw-r--r--src/main/resources/assets/goodgenerator/lang/en_US.lang2
-rw-r--r--src/main/resources/assets/goodgenerator/textures/blocks/preciseUnitCasing/0.pngbin0 -> 342 bytes
-rw-r--r--src/main/resources/assets/goodgenerator/textures/blocks/preciseUnitCasing/4.pngbin0 -> 318 bytes
8 files changed, 91 insertions, 42 deletions
diff --git a/src/main/java/goodgenerator/blocks/tileEntity/CoolantTower.java b/src/main/java/goodgenerator/blocks/tileEntity/CoolantTower.java
index 7117ccddf1..bfa726952b 100644
--- a/src/main/java/goodgenerator/blocks/tileEntity/CoolantTower.java
+++ b/src/main/java/goodgenerator/blocks/tileEntity/CoolantTower.java
@@ -40,7 +40,7 @@ public class CoolantTower extends GT_MetaTileEntity_TooltipMultiBlockBase_EM
implements IConstructable, ISurvivalConstructable {
protected IStructureDefinition<CoolantTower> multiDefinition = null;
- private final int CASING_INDEX = 1542;
+ private static final int CASING_INDEX = 1539;
public CoolantTower(int aID, String aName, String aNameRegional) {
super(aID, aName, aNameRegional);
@@ -176,7 +176,7 @@ public class CoolantTower extends GT_MetaTileEntity_TooltipMultiBlockBase_EM
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, ForgeDirection side, ForgeDirection facing,
int colorIndex, boolean aActive, boolean aRedstone) {
if (side == facing) {
- if (aActive) return new ITexture[] { casingTexturePages[12][6], TextureFactory.builder()
+ if (aActive) return new ITexture[] { casingTexturePages[12][3], TextureFactory.builder()
.addIcon(OVERLAY_FRONT_HEAT_EXCHANGER_ACTIVE)
.extFacing()
.build(),
@@ -185,7 +185,7 @@ public class CoolantTower extends GT_MetaTileEntity_TooltipMultiBlockBase_EM
.extFacing()
.glow()
.build() };
- return new ITexture[] { casingTexturePages[12][6], TextureFactory.builder()
+ return new ITexture[] { casingTexturePages[12][3], TextureFactory.builder()
.addIcon(OVERLAY_FRONT_HEAT_EXCHANGER)
.extFacing()
.build(),
@@ -195,7 +195,7 @@ public class CoolantTower extends GT_MetaTileEntity_TooltipMultiBlockBase_EM
.glow()
.build() };
}
- return new ITexture[] { casingTexturePages[12][6] };
+ return new ITexture[] { casingTexturePages[12][3] };
}
@Override
diff --git a/src/main/java/goodgenerator/blocks/tileEntity/PreciseAssembler.java b/src/main/java/goodgenerator/blocks/tileEntity/PreciseAssembler.java
index 42efb94296..3b2827c873 100644
--- a/src/main/java/goodgenerator/blocks/tileEntity/PreciseAssembler.java
+++ b/src/main/java/goodgenerator/blocks/tileEntity/PreciseAssembler.java
@@ -27,7 +27,10 @@ import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
+import org.apache.commons.lang3.tuple.Pair;
+
import com.github.technus.tectech.thing.metaTileEntity.hatch.GT_MetaTileEntity_Hatch_EnergyMulti;
+import com.google.common.collect.ImmutableList;
import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable;
import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable;
import com.gtnewhorizon.structurelib.structure.IStructureDefinition;
@@ -93,6 +96,7 @@ public class PreciseAssembler extends GT_MetaTileEntity_ExtendedPowerMultiBlockB
protected int machineTier;
protected int mode;
protected int energyHatchTier;
+ private static final int CASING_INDEX = 1541;
public PreciseAssembler(String name) {
super(name);
@@ -126,19 +130,21 @@ public class PreciseAssembler extends GT_MetaTileEntity_ExtendedPowerMultiBlockB
Muffler,
ExoticEnergy.or(Energy))
.adder(PreciseAssembler::addToPAssList)
- .casingIndex(1539)
+ .casingIndex(CASING_INDEX)
.dot(1)
.buildAndChain(
onElementPass(
x -> x.casingAmount++,
StructureUtility.ofBlocksTiered(
- (block, meta) -> block == Loaders.preciseUnitCasing ? meta : -2,
- IntStream.range(0, 3)
- .mapToObj(
- meta -> org.apache.commons.lang3.tuple.Pair
- .of(Loaders.preciseUnitCasing, meta))
- .collect(Collectors.toList()),
- -1,
+ (block, meta) -> block == Loaders.impreciseUnitCasing ? -1
+ : block == Loaders.preciseUnitCasing ? meta : -2,
+ ImmutableList.of(
+ Pair.of(Loaders.impreciseUnitCasing, 0),
+ Pair.of(Loaders.preciseUnitCasing, 0),
+ Pair.of(Loaders.preciseUnitCasing, 1),
+ Pair.of(Loaders.preciseUnitCasing, 2),
+ Pair.of(Loaders.preciseUnitCasing, 3)),
+ -2,
PreciseAssembler::setCasingTier,
PreciseAssembler::getCasingTier))))
.addElement('F', ofFrame(Materials.TungstenSteel))
@@ -298,16 +304,16 @@ public class PreciseAssembler extends GT_MetaTileEntity_ExtendedPowerMultiBlockB
public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
this.machineTier = -1;
this.casingAmount = 0;
- this.casingTier = -1;
+ this.casingTier = -2;
this.energyHatchTier = 0;
if (checkPiece(mName, 4, 4, 0)) {
energyHatchTier = checkEnergyHatchTier();
- if (casingTier >= 0) {
- reUpdate(1539 + casingTier);
+ if (casingTier >= -1) {
+ reUpdate(CASING_INDEX + casingTier);
}
getBaseMetaTileEntity().sendBlockEvent(GregTechTileClientEvents.CHANGE_CUSTOM_DATA, getUpdateData());
return casingAmount >= 42 && machineTier >= 0
- && casingTier >= 0
+ && casingTier >= -1
&& mMaintenanceHatches.size() == 1
&& !mMufflerHatches.isEmpty();
}
@@ -328,7 +334,7 @@ public class PreciseAssembler extends GT_MetaTileEntity_ExtendedPowerMultiBlockB
.addInfo("Precise Electronic Unit Casing won't limit recipe in Normal Mode.")
.addInfo("But gives more parallel with more advanced one.")
.addInfo("It is 100% faster in Normal Mode.")
- .addInfo("MK-I = 32x, MK-II = 64x, MK-III = 128x")
+ .addInfo("Imprecise (MK-0) = 16x, MK-I = 32x, MK-II = 64x, MK-III = 128x, MK-IV = 256x")
.addPollutionAmount(getPollutionPerSecond(null))
.addInfo("The structure is too complex!")
.addInfo(BLUE_PRINT_INFO)
@@ -441,7 +447,7 @@ public class PreciseAssembler extends GT_MetaTileEntity_ExtendedPowerMultiBlockB
@Override
public void receiveClientEvent(byte aEventID, byte aValue) {
super.receiveClientEvent(aEventID, aValue);
- if (aEventID == GregTechTileClientEvents.CHANGE_CUSTOM_DATA && (aValue & 0x80) == 0) {
+ if (aEventID == GregTechTileClientEvents.CHANGE_CUSTOM_DATA && ((aValue & 0x80) == 0 || aValue == -1)) {
casingTier = aValue;
}
}
@@ -449,19 +455,19 @@ public class PreciseAssembler extends GT_MetaTileEntity_ExtendedPowerMultiBlockB
@Override
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, ForgeDirection side, ForgeDirection facing,
int colorIndex, boolean aActive, boolean aRedstone) {
- int t = Math.max(getCasingTier(), 0);
+ int t = Math.max(getCasingTier(), -1);
if (side == facing) {
- if (aActive) return new ITexture[] { Textures.BlockIcons.getCasingTextureForId(1539 + t),
+ if (aActive) return new ITexture[] { Textures.BlockIcons.getCasingTextureForId(CASING_INDEX + t),
TextureFactory.of(textureFontOn), TextureFactory.builder()
.addIcon(textureFontOn_Glow)
.glow()
.build() };
- else return new ITexture[] { Textures.BlockIcons.getCasingTextureForId(1539 + t),
+ else return new ITexture[] { Textures.BlockIcons.getCasingTextureForId(CASING_INDEX + t),
TextureFactory.of(textureFontOff), TextureFactory.builder()
.addIcon(textureFontOff_Glow)
.glow()
.build() };
- } else return new ITexture[] { Textures.BlockIcons.getCasingTextureForId(1539 + t) };
+ } else return new ITexture[] { Textures.BlockIcons.getCasingTextureForId(CASING_INDEX + t) };
}
@Override
diff --git a/src/main/java/goodgenerator/loader/Loaders.java b/src/main/java/goodgenerator/loader/Loaders.java
index 11875703a3..22711a1bee 100644
--- a/src/main/java/goodgenerator/loader/Loaders.java
+++ b/src/main/java/goodgenerator/loader/Loaders.java
@@ -209,10 +209,13 @@ public class Loaders {
public static final Block pressureResistantWalls = new Casing(
"pressureResistantWalls",
new String[] { GoodGenerator.MOD_ID + ":pressureResistantWalls" });
+ public static final Block impreciseUnitCasing = new Casing(
+ "impreciseUnitCasing",
+ new String[] { GoodGenerator.MOD_ID + ":preciseUnitCasing/0" });
public static final Block preciseUnitCasing = new Casing(
"preciseUnitCasing",
new String[] { GoodGenerator.MOD_ID + ":preciseUnitCasing/1", GoodGenerator.MOD_ID + ":preciseUnitCasing/2",
- GoodGenerator.MOD_ID + ":preciseUnitCasing/3" });
+ GoodGenerator.MOD_ID + ":preciseUnitCasing/3", GoodGenerator.MOD_ID + ":preciseUnitCasing/4" });
public static final Block compactFusionCoil = new Casing(
"compactFusionCoil",
new String[] { GoodGenerator.MOD_ID + ":fuison/1", GoodGenerator.MOD_ID + ":fuison/2",
@@ -368,6 +371,7 @@ public class Loaders {
.registerBlock(supercriticalFluidTurbineCasing, MyItemBlocks.class, "supercriticalFluidTurbineCasing");
GameRegistry.registerBlock(componentAssemblylineCasing, MyItemBlocks.class, "componentAssemblylineCasing");
GameRegistry.registerBlock(pressureResistantWalls, MyItemBlocks.class, "pressureResistantWalls");
+ GameRegistry.registerBlock(impreciseUnitCasing, MyItemBlocks.class, "impreciseUnitCasing");
GameRegistry.registerBlock(preciseUnitCasing, MyItemBlocks.class, "preciseUnitCasing");
GameRegistry.registerBlock(compactFusionCoil, MyItemBlocks.class, "compactFusionCoil");
GameRegistry.registerItem(radiationProtectionPlate, "radiationProtectionPlate", GoodGenerator.MOD_ID);
@@ -451,13 +455,17 @@ public class Loaders {
Textures.BlockIcons.casingTexturePages[GoodGeneratorTexturePage][2] = TextureFactory
.of(supercriticalFluidTurbineCasing);
Textures.BlockIcons.casingTexturePages[GoodGeneratorTexturePage][3] = TextureFactory
- .of(preciseUnitCasing, 0);
+ .of(GregTech_API.sBlockConcretes, 8);
Textures.BlockIcons.casingTexturePages[GoodGeneratorTexturePage][4] = TextureFactory
- .of(preciseUnitCasing, 1);
+ .of(impreciseUnitCasing, 0);
Textures.BlockIcons.casingTexturePages[GoodGeneratorTexturePage][5] = TextureFactory
- .of(preciseUnitCasing, 2);
+ .of(preciseUnitCasing, 0);
Textures.BlockIcons.casingTexturePages[GoodGeneratorTexturePage][6] = TextureFactory
- .of(GregTech_API.sBlockConcretes, 8);
+ .of(preciseUnitCasing, 1);
+ Textures.BlockIcons.casingTexturePages[GoodGeneratorTexturePage][7] = TextureFactory
+ .of(preciseUnitCasing, 2);
+ Textures.BlockIcons.casingTexturePages[GoodGeneratorTexturePage][8] = TextureFactory
+ .of(preciseUnitCasing, 3);
}
}
diff --git a/src/main/java/goodgenerator/loader/RecipeLoader_02.java b/src/main/java/goodgenerator/loader/RecipeLoader_02.java
index 51c8f5a641..42568330bf 100644
--- a/src/main/java/goodgenerator/loader/RecipeLoader_02.java
+++ b/src/main/java/goodgenerator/loader/RecipeLoader_02.java
@@ -1,5 +1,6 @@
package goodgenerator.loader;
+import static com.github.technus.tectech.loader.recipe.BaseRecipeLoader.getItemContainer;
import static gregtech.api.enums.Mods.GTPlusPlus;
import static gregtech.api.enums.Mods.NewHorizonsCoreMod;
import static gregtech.api.recipe.RecipeMaps.assemblerRecipes;
@@ -1178,21 +1179,6 @@ public class RecipeLoader_02 {
.eut(TierEU.RECIPE_IV)
.addTo(assemblerRecipes);
- GT_Values.RA.stdBuilder()
- .itemInputs(
- ItemList.Casing_ZPM.get(3),
- ItemList.Robot_Arm_EV.get(2),
- GT_OreDictUnificator.get(OrePrefixes.cableGt04, MyMaterial.lumiium.getBridgeMaterial(), 2),
- MyMaterial.marCeM200.get(OrePrefixes.plateDouble, 2),
- ItemRefer.HiC_T1.get(1),
- MyMaterial.signalium.get(OrePrefixes.bolt, 32),
- MyMaterial.titaniumBetaC.get(OrePrefixes.gearGtSmall, 8))
- .fluidInputs(Materials.BlackSteel.getMolten(576))
- .itemOutputs(ItemRefer.Precise_Electronic_Unit_T1.get(2))
- .duration(40 * SECONDS)
- .eut(TierEU.RECIPE_IV)
- .addTo(assemblerRecipes);
-
MyRecipeAdder.instance.addPreciseAssemblerRecipe(
new ItemStack[] { ItemRefer.HiC_T1.get(2),
GT_ModHandler.getModItem("dreamcraft", "item.EngravedDiamondCrystalChip", 8),
@@ -1281,6 +1267,36 @@ public class RecipeLoader_02 {
GT_Values.RA.stdBuilder()
.itemInputs(
+ ItemList.Casing_LuV.get(3),
+ ItemList.Robot_Arm_EV.get(2),
+ GT_OreDictUnificator.get(OrePrefixes.cableGt02, Materials.Osmiridium, 2),
+ MyMaterial.marM200.get(OrePrefixes.plateDouble, 2),
+ GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Data, 1),
+ ELEMENT.getInstance().RUTHENIUM.getBolt(32),
+ GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Platinum, 8))
+ .fluidInputs(MyMaterial.zircaloy4.getMolten(576))
+ .itemOutputs(ItemRefer.Imprecise_Electronic_Unit.get(2))
+ .duration(40 * SECONDS)
+ .eut(TierEU.RECIPE_IV)
+ .addTo(assemblerRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemList.Casing_ZPM.get(3),
+ ItemList.Robot_Arm_IV.get(2),
+ GT_OreDictUnificator.get(OrePrefixes.cableGt04, MyMaterial.lumiium.getBridgeMaterial(), 2),
+ MyMaterial.marCeM200.get(OrePrefixes.plateDouble, 2),
+ ItemRefer.HiC_T1.get(1),
+ MyMaterial.signalium.get(OrePrefixes.bolt, 32),
+ MyMaterial.titaniumBetaC.get(OrePrefixes.gearGtSmall, 8))
+ .fluidInputs(Materials.BlackSteel.getMolten(576))
+ .itemOutputs(ItemRefer.Precise_Electronic_Unit_T1.get(2))
+ .duration(40 * SECONDS)
+ .eut(TierEU.RECIPE_LuV)
+ .addTo(assemblerRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
ItemList.Casing_UV.get(3),
ItemList.Robot_Arm_LuV.get(2),
GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.ElectrumFlux, 4),
@@ -1308,6 +1324,21 @@ public class RecipeLoader_02 {
.duration(4 * MINUTES)
.eut(TierEU.RECIPE_UV)
.addTo(assemblerRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ getItemContainer("Casing_UEV").get(3),
+ ItemList.Field_Generator_UV.get(2),
+ GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NetherStar, 8),
+ ItemRefer.HiC_T4.get(1),
+ ItemRefer.Precise_Electronic_Unit_T3.get(1),
+ MyMaterial.enrichedNaquadahAlloy.get(OrePrefixes.bolt, 32),
+ MyMaterial.tairitsu.get(OrePrefixes.gearGtSmall, 8))
+ .fluidInputs(MyMaterial.preciousMetalAlloy.getMolten(1152))
+ .itemOutputs(ItemRefer.Precise_Electronic_Unit_T4.get(4))
+ .duration(4 * MINUTES)
+ .eut(TierEU.RECIPE_UHV)
+ .addTo(assemblerRecipes);
}
// Compact MK1 Fusion Coil
diff --git a/src/main/java/goodgenerator/util/ItemRefer.java b/src/main/java/goodgenerator/util/ItemRefer.java
index 400199ef03..3662bb5bd1 100644
--- a/src/main/java/goodgenerator/util/ItemRefer.java
+++ b/src/main/java/goodgenerator/util/ItemRefer.java
@@ -124,9 +124,11 @@ public final class ItemRefer {
public static ItemRefer YOTTank_Cell_T10 = getItemStack(yottaFluidTankCell, 9);
public static ItemRefer SC_Turbine_Casing = getItemStack(supercriticalFluidTurbineCasing);
public static ItemRefer Pressure_Resistant_Wall = getItemStack(pressureResistantWalls);
+ public static ItemRefer Imprecise_Electronic_Unit = getItemStack(impreciseUnitCasing, 0);
public static ItemRefer Precise_Electronic_Unit_T1 = getItemStack(preciseUnitCasing, 0);
public static ItemRefer Precise_Electronic_Unit_T2 = getItemStack(preciseUnitCasing, 1);
public static ItemRefer Precise_Electronic_Unit_T3 = getItemStack(preciseUnitCasing, 2);
+ public static ItemRefer Precise_Electronic_Unit_T4 = getItemStack(preciseUnitCasing, 3);
public static ItemRefer Compact_Fusion_Coil_T0 = getItemStack(compactFusionCoil, 0);
public static ItemRefer Compact_Fusion_Coil_T1 = getItemStack(compactFusionCoil, 1);
public static ItemRefer Compact_Fusion_Coil_T2 = getItemStack(compactFusionCoil, 2);
diff --git a/src/main/resources/assets/goodgenerator/lang/en_US.lang b/src/main/resources/assets/goodgenerator/lang/en_US.lang
index 56727b2f6d..d0cc4bc8f9 100644
--- a/src/main/resources/assets/goodgenerator/lang/en_US.lang
+++ b/src/main/resources/assets/goodgenerator/lang/en_US.lang
@@ -31,9 +31,11 @@ yottaFluidTankCell.8.name=Fluid Cell Block T9
yottaFluidTankCell.9.name=Fluid Cell Block T10
supercriticalFluidTurbineCasing.0.name=SC Turbine Casing
pressureResistantWalls.0.name=Pressure Resistant Wall
+impreciseUnitCasing.0.name=Imprecise Electronic Unit Casing
preciseUnitCasing.0.name=Precise Electronic Unit Casing MK-I
preciseUnitCasing.1.name=Precise Electronic Unit Casing MK-II
preciseUnitCasing.2.name=Precise Electronic Unit Casing MK-III
+preciseUnitCasing.3.name=Precise Electronic Unit Casing MK-IV
compactFusionCoil.0.name=Ameliorated Superconduct Coil
compactFusionCoil.1.name=Compact Fusion Coil
compactFusionCoil.2.name=Advanced Compact Fusion Coil
diff --git a/src/main/resources/assets/goodgenerator/textures/blocks/preciseUnitCasing/0.png b/src/main/resources/assets/goodgenerator/textures/blocks/preciseUnitCasing/0.png
new file mode 100644
index 0000000000..4fa03bfe68
--- /dev/null
+++ b/src/main/resources/assets/goodgenerator/textures/blocks/preciseUnitCasing/0.png
Binary files differ
diff --git a/src/main/resources/assets/goodgenerator/textures/blocks/preciseUnitCasing/4.png b/src/main/resources/assets/goodgenerator/textures/blocks/preciseUnitCasing/4.png
new file mode 100644
index 0000000000..182d8a9eed
--- /dev/null
+++ b/src/main/resources/assets/goodgenerator/textures/blocks/preciseUnitCasing/4.png
Binary files differ