diff options
Diffstat (limited to 'src/main/java/com')
7 files changed, 405 insertions, 395 deletions
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_collider.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_collider.java index 1dc80606d9..5d3a700153 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_collider.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_collider.java @@ -42,6 +42,7 @@ import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texture import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage; import static com.github.technus.tectech.thing.casing.TT_Container_Casings.sBlockCasingsTT; import static com.github.technus.tectech.thing.metaTileEntity.multi.base.LedStatus.*; +import static net.minecraft.util.StatCollector.translateToLocal; /** * Created by danie_000 on 17.12.2016. @@ -52,44 +53,47 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB private static Textures.BlockIcons.CustomIcon ScreenON_Slave; private static Textures.BlockIcons.CustomIcon ScreenOFF_Slave; - protected static final byte FUSE_MODE=0, COLLIDE_MODE =1; + protected static final byte FUSE_MODE = 0, COLLIDE_MODE = 1; private static double MASS_TO_EU_INSTANT; - private static int STARTUP_COST,KEEPUP_COST; + private static int STARTUP_COST, KEEPUP_COST; - public static void setValues(int heliumPlasmaValue){ + public static void setValues(int heliumPlasmaValue) { double MASS_TO_EU_PARTIAL = heliumPlasmaValue / 1.75893000478707E07;//mass diff MASS_TO_EU_INSTANT = MASS_TO_EU_PARTIAL * 20; - STARTUP_COST=-heliumPlasmaValue*10000; - KEEPUP_COST=-heliumPlasmaValue; + STARTUP_COST = -heliumPlasmaValue * 10000; + KEEPUP_COST = -heliumPlasmaValue; } //region collision handlers - public static final HashMap<Integer, IColliderHandler> FUSE_HANDLERS =new HashMap<>(); - public static final HashMap<String, IPrimitiveColliderHandler> PRIMITIVE_FUSE_HANDLERS =new HashMap<>(); + public static final HashMap<Integer, IColliderHandler> FUSE_HANDLERS = new HashMap<>(); + public static final HashMap<String, IPrimitiveColliderHandler> PRIMITIVE_FUSE_HANDLERS = new HashMap<>(); + public interface IPrimitiveColliderHandler { void collide(cElementalInstanceStack in1, cElementalInstanceStack in2, cElementalInstanceStackMap out); } + public interface IColliderHandler extends IPrimitiveColliderHandler { byte getRequiredTier(); } + static { FUSE_HANDLERS.put((dAtomDefinition.getClassTypeStatic() << 16) | dAtomDefinition.getClassTypeStatic(), new IColliderHandler() { @Override public void collide(cElementalInstanceStack in1, cElementalInstanceStack in2, cElementalInstanceStackMap out) { try { - cElementalMutableDefinitionStackMap defs=new cElementalMutableDefinitionStackMap(); + cElementalMutableDefinitionStackMap defs = new cElementalMutableDefinitionStackMap(); defs.putUnifyAll(in1.definition.getSubParticles()); defs.putUnifyAll(in2.definition.getSubParticles()); dAtomDefinition atom = new dAtomDefinition(defs.toImmutable_optimized_unsafeLeavesExposedElementalTree()); - out.putUnify(new cElementalInstanceStack(atom,Math.min(in1.amount,in2.amount))); - }catch (Exception e){ - out.putUnifyAll(in1,in2); + out.putUnify(new cElementalInstanceStack(atom, Math.min(in1.amount, in2.amount))); + } catch (Exception e) { + out.putUnifyAll(in1, in2); return; } - if(in1.amount>in2.amount){ - out.putUnify(new cElementalInstanceStack(in1.definition,in1.amount-in2.amount)); - }else if (in2.amount>in1.amount){ - out.putUnify(new cElementalInstanceStack(in2.definition,in2.amount-in1.amount)); + if (in1.amount > in2.amount) { + out.putUnify(new cElementalInstanceStack(in1.definition, in1.amount - in2.amount)); + } else if (in2.amount > in1.amount) { + out.putUnify(new cElementalInstanceStack(in2.definition, in2.amount - in1.amount)); } } @@ -106,19 +110,19 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB @Override public void collide(cElementalInstanceStack in1, cElementalInstanceStack in2, cElementalInstanceStackMap out) { try { - cElementalMutableDefinitionStackMap defs=new cElementalMutableDefinitionStackMap(); + cElementalMutableDefinitionStackMap defs = new cElementalMutableDefinitionStackMap(); defs.putUnifyAll(in1.definition.getSubParticles()); defs.putUnifyAll(in2.definition.getSubParticles()); dHadronDefinition hadron = new dHadronDefinition(defs.toImmutable_optimized_unsafeLeavesExposedElementalTree()); - out.putUnify(new cElementalInstanceStack(hadron,Math.min(in1.amount,in2.amount))); - }catch (Exception e){ - out.putUnifyAll(in1,in2); + out.putUnify(new cElementalInstanceStack(hadron, Math.min(in1.amount, in2.amount))); + } catch (Exception e) { + out.putUnifyAll(in1, in2); return; } - if(in1.amount>in2.amount){ - out.putUnify(new cElementalInstanceStack(in1.definition,in1.amount-in2.amount)); - }else if (in2.amount>in1.amount){ - out.putUnify(new cElementalInstanceStack(in2.definition,in2.amount-in1.amount)); + if (in1.amount > in2.amount) { + out.putUnify(new cElementalInstanceStack(in1.definition, in1.amount - in2.amount)); + } else if (in2.amount > in1.amount) { + out.putUnify(new cElementalInstanceStack(in2.definition, in2.amount - in1.amount)); } } @@ -131,19 +135,19 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB @Override public void collide(cElementalInstanceStack in1, cElementalInstanceStack in2, cElementalInstanceStackMap out) { try { - cElementalMutableDefinitionStackMap defs=new cElementalMutableDefinitionStackMap(); + cElementalMutableDefinitionStackMap defs = new cElementalMutableDefinitionStackMap(); defs.putUnifyAll(in1.definition.getSubParticles()); defs.putUnify(in2.definition.getStackForm(1)); dHadronDefinition hadron = new dHadronDefinition(defs.toImmutable_optimized_unsafeLeavesExposedElementalTree()); - out.putUnify(new cElementalInstanceStack(hadron,Math.min(in1.amount,in2.amount))); - }catch (Exception e){ - out.putUnifyAll(in1,in2); + out.putUnify(new cElementalInstanceStack(hadron, Math.min(in1.amount, in2.amount))); + } catch (Exception e) { + out.putUnifyAll(in1, in2); return; } - if(in1.amount>in2.amount){ - out.putUnify(new cElementalInstanceStack(in1.definition,in1.amount-in2.amount)); - }else if (in2.amount>in1.amount){ - out.putUnify(new cElementalInstanceStack(in2.definition,in2.amount-in1.amount)); + if (in1.amount > in2.amount) { + out.putUnify(new cElementalInstanceStack(in1.definition, in1.amount - in2.amount)); + } else if (in2.amount > in1.amount) { + out.putUnify(new cElementalInstanceStack(in2.definition, in2.amount - in1.amount)); } } @@ -159,11 +163,11 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB FUSE_HANDLERS.put((cElementalPrimitive.getClassTypeStatic() << 16) | cElementalPrimitive.getClassTypeStatic(), new IColliderHandler() { @Override public void collide(cElementalInstanceStack in1, cElementalInstanceStack in2, cElementalInstanceStackMap out) { - IPrimitiveColliderHandler collisionHandler= PRIMITIVE_FUSE_HANDLERS.get(in1.definition.getClass().getName()+'\0'+in2.definition.getClass().getName()); + IPrimitiveColliderHandler collisionHandler = PRIMITIVE_FUSE_HANDLERS.get(in1.definition.getClass().getName() + '\0' + in2.definition.getClass().getName()); if (collisionHandler != null) { collisionHandler.collide(in2, in1, out); } else { - out.putUnifyAll(in1,in2); + out.putUnifyAll(in1, in2); } } @@ -175,40 +179,40 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB PRIMITIVE_FUSE_HANDLERS.put(eQuarkDefinition.class.getName() + '\0' + eQuarkDefinition.class.getName(), (in1, in2, out) -> { try { - cElementalMutableDefinitionStackMap defs=new cElementalMutableDefinitionStackMap(); + cElementalMutableDefinitionStackMap defs = new cElementalMutableDefinitionStackMap(); defs.putUnify(in1.definition.getStackForm(1)); defs.putUnify(in2.definition.getStackForm(1)); dHadronDefinition hadron = new dHadronDefinition(defs.toImmutable_optimized_unsafeLeavesExposedElementalTree()); - out.putUnify(new cElementalInstanceStack(hadron,Math.min(in1.amount,in2.amount))); - }catch (Exception e){ - out.putUnifyAll(in1,in2); + out.putUnify(new cElementalInstanceStack(hadron, Math.min(in1.amount, in2.amount))); + } catch (Exception e) { + out.putUnifyAll(in1, in2); return; } - if(in1.amount>in2.amount){ - out.putUnify(new cElementalInstanceStack(in1.definition,in1.amount-in2.amount)); - }else if (in2.amount>in1.amount){ - out.putUnify(new cElementalInstanceStack(in2.definition,in2.amount-in1.amount)); + if (in1.amount > in2.amount) { + out.putUnify(new cElementalInstanceStack(in1.definition, in1.amount - in2.amount)); + } else if (in2.amount > in1.amount) { + out.putUnify(new cElementalInstanceStack(in2.definition, in2.amount - in1.amount)); } }); PRIMITIVE_FUSE_HANDLERS.put(ePrimalAspectDefinition.class.getName() + '\0' + ePrimalAspectDefinition.class.getName(), (in1, in2, out) -> { if (fuseAspects(in1, in2, out)) return; - if(in1.amount>in2.amount){ - out.putUnify(new cElementalInstanceStack(in1.definition,in1.amount-in2.amount)); - }else if (in2.amount>in1.amount){ - out.putUnify(new cElementalInstanceStack(in2.definition,in2.amount-in1.amount)); + if (in1.amount > in2.amount) { + out.putUnify(new cElementalInstanceStack(in1.definition, in1.amount - in2.amount)); + } else if (in2.amount > in1.amount) { + out.putUnify(new cElementalInstanceStack(in2.definition, in2.amount - in1.amount)); } }); } private static boolean fuseAspects(cElementalInstanceStack in1, cElementalInstanceStack in2, cElementalInstanceStackMap out) { try { - cElementalMutableDefinitionStackMap defs=new cElementalMutableDefinitionStackMap(); + cElementalMutableDefinitionStackMap defs = new cElementalMutableDefinitionStackMap(); defs.putUnify(in1.definition.getStackForm(1)); defs.putUnify(in2.definition.getStackForm(1)); dComplexAspectDefinition aspect = new dComplexAspectDefinition(defs.toImmutable_optimized_unsafeLeavesExposedElementalTree()); - out.putUnify(new cElementalInstanceStack(aspect,Math.min(in1.amount,in2.amount))); - }catch (Exception e){ - out.putUnifyAll(in1,in2); + out.putUnify(new cElementalInstanceStack(aspect, Math.min(in1.amount, in2.amount))); + } catch (Exception e) { + out.putUnifyAll(in1, in2); return true; } return false; @@ -219,10 +223,10 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB @Override public void collide(cElementalInstanceStack in1, cElementalInstanceStack in2, cElementalInstanceStackMap out) { if (fuseAspects(in1, in2, out)) return; - if(in1.amount>in2.amount){ - out.putUnify(new cElementalInstanceStack(in1.definition,in1.amount-in2.amount)); - }else if (in2.amount>in1.amount){ - out.putUnify(new cElementalInstanceStack(in2.definition,in2.amount-in1.amount)); + if (in1.amount > in2.amount) { + out.putUnify(new cElementalInstanceStack(in1.definition, in1.amount - in2.amount)); + } else if (in2.amount > in1.amount) { + out.putUnify(new cElementalInstanceStack(in2.definition, in2.amount - in1.amount)); } } @@ -238,19 +242,19 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB @Override public void collide(cElementalInstanceStack in1, cElementalInstanceStack in2, cElementalInstanceStackMap out) { try { - cElementalMutableDefinitionStackMap defs=new cElementalMutableDefinitionStackMap(); + cElementalMutableDefinitionStackMap defs = new cElementalMutableDefinitionStackMap(); defs.putUnifyAll(in1.definition.getSubParticles()); defs.putUnify(in2.definition.getStackForm(1)); dAtomDefinition atom = new dAtomDefinition(defs.toImmutable_optimized_unsafeLeavesExposedElementalTree()); - out.putUnify(new cElementalInstanceStack(atom,Math.min(in1.amount,in2.amount))); - }catch (Exception e){ - out.putUnifyAll(in1,in2); + out.putUnify(new cElementalInstanceStack(atom, Math.min(in1.amount, in2.amount))); + } catch (Exception e) { + out.putUnifyAll(in1, in2); return; } - if(in1.amount>in2.amount){ - out.putUnify(new cElementalInstanceStack(in1.definition,in1.amount-in2.amount)); - }else if (in2.amount>in1.amount){ - out.putUnify(new cElementalInstanceStack(in2.definition,in2.amount-in1.amount)); + if (in1.amount > in2.amount) { + out.putUnify(new cElementalInstanceStack(in1.definition, in1.amount - in2.amount)); + } else if (in2.amount > in1.amount) { + out.putUnify(new cElementalInstanceStack(in2.definition, in2.amount - in1.amount)); } } @@ -268,9 +272,9 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB //region parameters protected Parameters.Group.ParameterIn mode; - private static final IStatusFunction<GT_MetaTileEntity_EM_collider> MODE_STATUS = (base_EM, p)->{ - if(base_EM.isMaster()){ - double mode=p.get(); + private static final IStatusFunction<GT_MetaTileEntity_EM_collider> MODE_STATUS = (base_EM, p) -> { + if (base_EM.isMaster()) { + double mode = p.get(); if (mode == FUSE_MODE || mode == COLLIDE_MODE) { return STATUS_OK; } else if (mode > 1) { @@ -282,12 +286,12 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB } return STATUS_UNUSED; }; - private static final INameFunction<GT_MetaTileEntity_EM_collider> MODE_NAME = (base_EM, p)->{ - if(base_EM.isMaster()){ - double mode=p.get(); - if(mode==FUSE_MODE){ + private static final INameFunction<GT_MetaTileEntity_EM_collider> MODE_NAME = (base_EM, p) -> { + if (base_EM.isMaster()) { + double mode = p.get(); + if (mode == FUSE_MODE) { return "Mode: Fuse"; - }else if(mode==COLLIDE_MODE){ + } else if (mode == COLLIDE_MODE) { return "Mode: Collide"; } return "Mode: Undefined"; @@ -296,32 +300,32 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB }; //endregion - protected boolean started=false; + protected boolean started = false; //region Structure //use multi A energy inputs, use less power the longer it runs private static final String[][] shape = new String[][]{ - {"I0A0A0","I00000","I0A0A0",}, - {"H0000000","G001111100","H0000000",}, - {"F22223332222","F41155555114","F22223332222",}, - {"E2000000000002","E4155111115514","E2000000000002",}, - {"D20000E00002","D41511E11514","D20000E00002",}, - {"C2000I0002","C4151I1514","C2000I0002",}, - {"B2000K0002","B4151K1514","B2000K0002",}, - {"B200M002","A0151M1510","B200M002",}, - {"A0200M0020","A0151M1510","A0200M0020",}, - {"0020O0200","0151O1510","0020O0200",}, - {"A030O030","0151O1510","A030O030",}, - {"0030O0300","0151O1510","0030O0300",}, - {"A030O030","0151O1510","A030O030",}, - {"0020O0200","0151O1510","0020O0200",}, - {"A0200M0020","A0151M1510","A0200M0020",}, - {"B200M002","A0151M1510","B200M002",}, - {"B2000K0002","B4151K1514","B2000K0002",}, - {"C2000I0002","C4151I1514","C2000I0002",}, - {"D200002 200002","D415112 . 211514","D200002 200002",}, - {"E20!!22222!!02","E4155111115514","E20!!22222!!02",}, - {"F2222#\"#2222","F41155555114","F2222#\"#2222",}, + {"I0A0A0", "I00000", "I0A0A0",}, + {"H0000000", "G001111100", "H0000000",}, + {"F22223332222", "F41155555114", "F22223332222",}, + {"E2000000000002", "E4155111115514", "E2000000000002",}, + {"D20000E00002", "D41511E11514", "D20000E00002",}, + {"C2000I0002", "C4151I1514", "C2000I0002",}, + {"B2000K0002", "B4151K1514", "B2000K0002",}, + {"B200M002", "A0151M1510", "B200M002",}, + {"A0200M0020", "A0151M1510", "A0200M0020",}, + {"0020O0200", "0151O1510", "0020O0200",}, + {"A030O030", "0151O1510", "A030O030",}, + {"0030O0300", "0151O1510", "0030O0300",}, + {"A030O030", "0151O1510", "A030O030",}, + {"0020O0200", "0151O1510", "0020O0200",}, + {"A0200M0020", "A0151M1510", "A0200M0020",}, + {"B200M002", "A0151M1510", "B200M002",}, + {"B2000K0002", "B4151K1514", "B2000K0002",}, + {"C2000I0002", "C4151I1514", "C2000I0002",}, + {"D200002 200002", "D415112 . 211514", "D200002 200002",}, + {"E20!!22222!!02", "E4155111115514", "E20!!22222!!02",}, + {"F2222#\"#2222", "F41155555114", "F2222#\"#2222",}, }; private static final Block[] blockType = new Block[]{ sBlockCasingsTT, @@ -342,7 +346,7 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB private static final Block[] blockTypeFallback = new Block[]{sBlockCasingsTT, sBlockCasingsTT, sBlockCasingsTT, sBlockCasingsTT}; private static final byte[] blockMetaFallback = new byte[]{0, 4, 4, 4}; private static final String[] description = new String[]{ - EnumChatFormatting.AQUA+"Hint Details:", + EnumChatFormatting.AQUA + translateToLocal("tt.keyphrase.Hint_Details") + ":", "1 - Classic Hatches or High Power Casing", "2 - Elemental Input Hatches or Molecular Casing", "3 - Elemental Output Hatches or Molecular Casing", @@ -361,8 +365,8 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB @Override protected void parametersInstantiation_EM() { - Parameters.Group hatch_0=parametrization.getGroup(0); - mode=hatch_0.makeInParameter(0,FUSE_MODE, MODE_NAME, MODE_STATUS); + Parameters.Group hatch_0 = parametrization.getGroup(0); + mode = hatch_0.makeInParameter(0, FUSE_MODE, MODE_NAME, MODE_STATUS); } @Override @@ -383,9 +387,9 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB @Override public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) { if (aSide == aFacing) { - if(aFacing%2==0){ + if (aFacing % 2 == 0) { return new ITexture[]{Textures.BlockIcons.casingTexturePages[texturePage][4], new TT_RenderedTexture(aActive ? ScreenON : ScreenOFF)}; - }else{ + } else { return new ITexture[]{Textures.BlockIcons.casingTexturePages[texturePage][4], new TT_RenderedTexture(aActive ? ScreenON_Slave : ScreenOFF_Slave)}; } } @@ -396,28 +400,28 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB public void saveNBTData(NBTTagCompound aNBT) { super.saveNBTData(aNBT); aNBT.setByte("eTier", eTier);//collider tier - aNBT.setBoolean("eStarted",started); - if(stack!=null) { + aNBT.setBoolean("eStarted", started); + if (stack != null) { aNBT.setTag("eStack", stack.toNBT()); } - aNBT.setLong("ePlasmaEnergy",plasmaEnergy); + aNBT.setLong("ePlasmaEnergy", plasmaEnergy); } @Override public void loadNBTData(NBTTagCompound aNBT) { super.loadNBTData(aNBT); eTier = aNBT.getByte("eTier");//collider tier - started=aNBT.getBoolean("eStarted"); - if(aNBT.hasKey("eStack")){ - stack=cElementalInstanceStack.fromNBT(aNBT.getCompoundTag("eStack")); + started = aNBT.getBoolean("eStarted"); + if (aNBT.hasKey("eStack")) { + stack = cElementalInstanceStack.fromNBT(aNBT.getCompoundTag("eStack")); } - plasmaEnergy=aNBT.getLong("ePlasmaEnergy"); + plasmaEnergy = aNBT.getLong("ePlasmaEnergy"); } @Override public boolean checkMachine_EM(IGregTechTileEntity iGregTechTileEntity, ItemStack itemStack) { - int xDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetX*2; - int zDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetZ*2; + int xDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetX * 2; + int zDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetZ * 2; if (iGregTechTileEntity.getBlockOffset(xDir, 0, zDir) != sBlockCasingsTT) { eTier = 0; return false; @@ -453,51 +457,51 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB @Override public void construct(int stackSize, boolean hintsOnly) { - IGregTechTileEntity iGregTechTileEntity=getBaseMetaTileEntity(); - int xDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetX*4; - int yDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetY*4; - int zDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetZ*4; - if(hintsOnly){ + IGregTechTileEntity iGregTechTileEntity = getBaseMetaTileEntity(); + int xDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetX * 4; + int yDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetY * 4; + int zDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetZ * 4; + if (hintsOnly) { TecTech.proxy.hint_particle(iGregTechTileEntity.getWorld(), - iGregTechTileEntity.getXCoord()+xDir, - iGregTechTileEntity.getYCoord()+yDir, - iGregTechTileEntity.getZCoord()+zDir, - TT_Container_Casings.sHintCasingsTT,12); - } else{ - if(iGregTechTileEntity.getBlockOffset(xDir,0,zDir).getMaterial() == Material.air) { - iGregTechTileEntity.getWorld().setBlock(iGregTechTileEntity.getXCoord() + xDir, iGregTechTileEntity.getYCoord()+yDir, iGregTechTileEntity.getZCoord() + zDir, TT_Container_Casings.sHintCasingsTT, 12, 2); + iGregTechTileEntity.getXCoord() + xDir, + iGregTechTileEntity.getYCoord() + yDir, + iGregTechTileEntity.getZCoord() + zDir, + TT_Container_Casings.sHintCasingsTT, 12); + } else { + if (iGregTechTileEntity.getBlockOffset(xDir, 0, zDir).getMaterial() == Material.air) { + iGregTechTileEntity.getWorld().setBlock(iGregTechTileEntity.getXCoord() + xDir, iGregTechTileEntity.getYCoord() + yDir, iGregTechTileEntity.getZCoord() + zDir, TT_Container_Casings.sHintCasingsTT, 12, 2); } } if ((stackSize & 1) == 1) { - StructureBuilderExtreme(shape, blockType, blockMeta1, 11, 1, 18, iGregTechTileEntity,this, hintsOnly); + StructureBuilderExtreme(shape, blockType, blockMeta1, 11, 1, 18, iGregTechTileEntity, this, hintsOnly); } else { - StructureBuilderExtreme(shape, blockType, blockMeta2, 11, 1, 18, iGregTechTileEntity,this, hintsOnly); + StructureBuilderExtreme(shape, blockType, blockMeta2, 11, 1, 18, iGregTechTileEntity, this, hintsOnly); } } @Override public void parametersStatusesWrite_EM(boolean machineBusy) { - if(isMaster()) { + if (isMaster()) { super.parametersStatusesWrite_EM(machineBusy); } } @Override public boolean checkRecipe_EM(ItemStack itemStack) { - GT_MetaTileEntity_EM_collider partner=getPartner(); - if(partner==null){ + GT_MetaTileEntity_EM_collider partner = getPartner(); + if (partner == null) { return false; } - mEfficiencyIncrease=10000; - if(started) { - if(stack==null) { + mEfficiencyIncrease = 10000; + if (started) { + if (stack == null) { for (GT_MetaTileEntity_Hatch_InputElemental inputElemental : eInputHatches) { cElementalInstanceStackMap container = inputElemental.getContainerHandler(); if (container.isEmpty()) { continue; } stack = container.remove(container.getFirst().definition); - long eut = KEEPUP_COST+(long)(KEEPUP_COST * Math.abs(stack.getMass() / dAtomDefinition.getSomethingHeavy().getMass()))/2; + long eut = KEEPUP_COST + (long) (KEEPUP_COST * Math.abs(stack.getMass() / dAtomDefinition.getSomethingHeavy().getMass())) / 2; if (eut < Integer.MIN_VALUE + 7) { return false; } @@ -515,18 +519,18 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB mEUt = KEEPUP_COST; eAmpereFlow = 2; return true; - }else{ - started=true; - mMaxProgresstime=20; - mEUt=STARTUP_COST; - eAmpereFlow=10; + } else { + started = true; + mMaxProgresstime = 20; + mEUt = STARTUP_COST; + eAmpereFlow = 10; return true; } } - protected double fuse(GT_MetaTileEntity_EM_collider partner){ - if(partner.stack!=null && stack!=null) {//todo add single event mode as an option - boolean check=stack.definition.fusionMakesEnergy(stack.getEnergy()) && + protected double fuse(GT_MetaTileEntity_EM_collider partner) { + if (partner.stack != null && stack != null) {//todo add single event mode as an option + boolean check = stack.definition.fusionMakesEnergy(stack.getEnergy()) && partner.stack.definition.fusionMakesEnergy(partner.stack.getEnergy()); cElementalInstanceStack stack2 = partner.stack; @@ -558,11 +562,11 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB } private boolean handleRecipe(cElementalInstanceStack stack2, cElementalInstanceStackMap map, IColliderHandler colliderHandler) { - if (colliderHandler != null && eTier>= colliderHandler.getRequiredTier()) { + if (colliderHandler != null && eTier >= colliderHandler.getRequiredTier()) { colliderHandler.collide(stack2, stack, map); } else { - map.putUnifyAll(stack,stack2); - outputEM=new cElementalInstanceStackMap[]{map}; + map.putUnifyAll(stack, stack2); + outputEM = new cElementalInstanceStackMap[]{map}; return true; } return false; @@ -570,10 +574,10 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB @Override protected void afterRecipeCheckFailed() { - started=false; - if(stack!=null){ + started = false; + if (stack != null) { cleanMassEM_EM(stack.getMass()); - stack=null; + stack = null; } getBaseMetaTileEntity().disableWorking(); super.afterRecipeCheckFailed(); @@ -581,29 +585,29 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB @Override public void stopMachine() { - started=false; - if(stack!=null){ + started = false; + if (stack != null) { cleanMassEM_EM(stack.getMass()); - stack=null; + stack = null; } super.stopMachine(); } @Override public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { - if(!aBaseMetaTileEntity.isAllowedToWork()){ - started=false; + if (!aBaseMetaTileEntity.isAllowedToWork()) { + started = false; } super.onPreTick(aBaseMetaTileEntity, aTick); } - protected GT_MetaTileEntity_EM_collider getPartner(){ - IGregTechTileEntity iGregTechTileEntity=getBaseMetaTileEntity(); - int xDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetX*4; - int yDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetY*4; - int zDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetZ*4; - IGregTechTileEntity gregTechBaseTileEntity=iGregTechTileEntity.getIGregTechTileEntityOffset(xDir, yDir, zDir); - if(gregTechBaseTileEntity!=null) { + protected GT_MetaTileEntity_EM_collider getPartner() { + IGregTechTileEntity iGregTechTileEntity = getBaseMetaTileEntity(); + int xDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetX * 4; + int yDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetY * 4; + int zDir = ForgeDirection.getOrientation(iGregTechTileEntity.getBackFacing()).offsetZ * 4; + IGregTechTileEntity gregTechBaseTileEntity = iGregTechTileEntity.getIGregTechTileEntityOffset(xDir, yDir, zDir); + if (gregTechBaseTileEntity != null) { IMetaTileEntity gregTechMetaTileEntity = gregTechBaseTileEntity.getMetaTileEntity(); return gregTechMetaTileEntity instanceof GT_MetaTileEntity_EM_collider && ((GT_MetaTileEntity_EM_collider) gregTechMetaTileEntity).mMachine && @@ -613,22 +617,22 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB return null; } - protected final boolean isMaster(){ - return getBaseMetaTileEntity().getFrontFacing()%2==0; + protected final boolean isMaster() { + return getBaseMetaTileEntity().getFrontFacing() % 2 == 0; } @Override - public void outputAfterRecipe_EM(){ - GT_MetaTileEntity_EM_collider partner=getPartner(); - if(partner==null){ - if(stack!=null){ + public void outputAfterRecipe_EM() { + GT_MetaTileEntity_EM_collider partner = getPartner(); + if (partner == null) { + if (stack != null) { cleanMassEM_EM(stack.getMass()); - stack=null; + stack = null; } return; } if (isMaster()) { - switch ((int)mode.get()){ + switch ((int) mode.get()) { case FUSE_MODE: makeEU(fuse(partner)); break; @@ -636,43 +640,43 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB //collide(partner);//todo break; default: { - outputEM=new cElementalInstanceStackMap[2]; - outputEM[1]=tickStack(); - if(outputEM[1]==null){ - outputEM[1]=partner.tickStack(); - }else { - cElementalInstanceStackMap map=partner.tickStack(); - if(map!=null){ + outputEM = new cElementalInstanceStackMap[2]; + outputEM[1] = tickStack(); + if (outputEM[1] == null) { + outputEM[1] = partner.tickStack(); + } else { + cElementalInstanceStackMap map = partner.tickStack(); + if (map != null) { outputEM[1].putUnifyAll(map); } } } } - if(outputEM!=null) { - for(int i=0,lim=Math.min(outputEM.length,eOutputHatches.size());i<lim;i++){ - if(outputEM[i]!=null) { + if (outputEM != null) { + for (int i = 0, lim = Math.min(outputEM.length, eOutputHatches.size()); i < lim; i++) { + if (outputEM[i] != null) { eOutputHatches.get(i).getContainerHandler().putUnifyAll(outputEM[i]); - outputEM[i]=null; + outputEM[i] = null; } } } } } - private void makeEU(double massDiff){ - plasmaEnergy+=massDiff*MASS_TO_EU_INSTANT; + private void makeEU(double massDiff) { + plasmaEnergy += massDiff * MASS_TO_EU_INSTANT; System.out.println("plasmaEnergy = " + plasmaEnergy); } - private cElementalInstanceStackMap tickStack(){ - if(stack==null){ + private cElementalInstanceStackMap tickStack() { + if (stack == null) { return null; } cElementalInstanceStackMap newInstances = stack.decay(1, stack.age += 1, 0); if (newInstances == null) { stack.nextColor(); } else { - stack=newInstances.remove(newInstances.getLast().definition); + stack = newInstances.remove(newInstances.getLast().definition); } return newInstances; } @@ -690,4 +694,4 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + "Faster than light*!!!" }; } -} +}
\ No newline at end of file diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dataBank.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dataBank.java index 13bdc4976d..b05653fb33 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dataBank.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dataBank.java @@ -33,6 +33,7 @@ import static com.github.technus.tectech.recipe.TT_recipeAdder.nullItem; import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.textureOffset; import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage; import static com.github.technus.tectech.thing.casing.TT_Container_Casings.sBlockCasingsTT; +import static net.minecraft.util.StatCollector.translateToLocal; public class GT_MetaTileEntity_EM_dataBank extends GT_MetaTileEntity_MultiblockBase_EM implements IConstructable { private final ArrayList<GT_MetaTileEntity_Hatch_OutputDataItems> eStacksDataOutputs = new ArrayList<>(); @@ -40,20 +41,20 @@ public class GT_MetaTileEntity_EM_dataBank extends GT_MetaTileEntity_MultiblockB //region Structure private static final String[][] shape = new String[][]{ - {"0 0","0 . 0","0 0",}, - {"0!!!0","01110","0!!!0",}, - {"0!!!0","0!!!0","0!!!0",}, + {"0 0", "0 . 0", "0 0",}, + {"0!!!0", "01110", "0!!!0",}, + {"0!!!0", "0!!!0", "0!!!0",}, }; - private static final Block[] blockType = new Block[]{sBlockCasingsTT,sBlockCasingsTT}; - private static final byte[] blockMeta = new byte[]{2,1}; - private final IHatchAdder[] addingMethods = new IHatchAdder[]{this::addClassicToMachineList,this::addDataBankHatchToMachineList}; - private static final short[] casingTextures = new short[]{textureOffset,textureOffset+1}; - private static final Block[] blockTypeFallback = new Block[]{sBlockCasingsTT,sBlockCasingsTT}; - private static final byte[] blockMetaFallback = new byte[]{0,1}; + private static final Block[] blockType = new Block[]{sBlockCasingsTT, sBlockCasingsTT}; + private static final byte[] blockMeta = new byte[]{2, 1}; + private final IHatchAdder[] addingMethods = new IHatchAdder[]{this::addClassicToMachineList, this::addDataBankHatchToMachineList}; + private static final short[] casingTextures = new short[]{textureOffset, textureOffset + 1}; + private static final Block[] blockTypeFallback = new Block[]{sBlockCasingsTT, sBlockCasingsTT}; + private static final byte[] blockMetaFallback = new byte[]{0, 1}; private static final String[] description = new String[]{ - EnumChatFormatting.AQUA+"Hint Details:", - "1 - Classic Hatches or high power casing", - "2 - Data Access/Data Bank Master Hatches or computer casing", + EnumChatFormatting.AQUA + translateToLocal("tt.keyphrase.Hint_Details") + ":", + translateToLocal("gt.blockmachines.multimachine.em.databank.hint.0"),//1 - Classic Hatches or high power casing + translateToLocal("gt.blockmachines.multimachine.em.databank.hint.1"),//2 - Data Access/Data Bank Master Hatches or computer casing }; //endregion @@ -65,11 +66,11 @@ public class GT_MetaTileEntity_EM_dataBank extends GT_MetaTileEn |
