aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/goodgenerator/blocks
diff options
context:
space:
mode:
authorHoleFish <48403212+HoleFish@users.noreply.github.com>2024-07-06 21:33:57 +0800
committerGitHub <noreply@github.com>2024-07-06 20:33:57 +0700
commitb42fb0b4e4c59c9b4ac25416216059bb00f2322b (patch)
tree2020a7d5492edef90c4efa5cda96e2548919f7b7 /src/main/java/goodgenerator/blocks
parent713d392e30e162012cd7f9d327dd037f8ad2bb07 (diff)
downloadGT5-Unofficial-b42fb0b4e4c59c9b4ac25416216059bb00f2322b.tar.gz
GT5-Unofficial-b42fb0b4e4c59c9b4ac25416216059bb00f2322b.tar.bz2
GT5-Unofficial-b42fb0b4e4c59c9b4ac25416216059bb00f2322b.zip
Add MK0 and MK4 precise casings for PrAss (#2698)
* add mk0 and mk4 casings * fix recipe (fuck bw material)
Diffstat (limited to 'src/main/java/goodgenerator/blocks')
-rw-r--r--src/main/java/goodgenerator/blocks/tileEntity/CoolantTower.java8
-rw-r--r--src/main/java/goodgenerator/blocks/tileEntity/PreciseAssembler.java42
2 files changed, 28 insertions, 22 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