aboutsummaryrefslogtreecommitdiff
path: root/main/java/gregtech/api
diff options
context:
space:
mode:
authoraerospark <lukefay12@gmail.com>2015-06-22 19:06:38 -0400
committeraerospark <lukefay12@gmail.com>2015-06-22 19:06:38 -0400
commitb803f59de5a66fcb4ef53e117b912fbbc2841392 (patch)
tree45aed590c09043396293839276b90e738d3ff420 /main/java/gregtech/api
parentff871d6b8ae08704a6ad73f4b0103d458bc9b65d (diff)
parent55c596b008807a7cb4b58422efd07636425be1e2 (diff)
downloadGT5-Unofficial-b803f59de5a66fcb4ef53e117b912fbbc2841392.tar.gz
GT5-Unofficial-b803f59de5a66fcb4ef53e117b912fbbc2841392.tar.bz2
GT5-Unofficial-b803f59de5a66fcb4ef53e117b912fbbc2841392.zip
Merge pull request #1 from Blood-Asp/master
version 5.08.20
Diffstat (limited to 'main/java/gregtech/api')
-rw-r--r--main/java/gregtech/api/GregTech_API.java1
-rw-r--r--main/java/gregtech/api/enums/Materials.java2
-rw-r--r--main/java/gregtech/api/enums/OrePrefixes.java1
-rw-r--r--main/java/gregtech/api/items/GT_RadioactiveCellIC_Item.java3
-rw-r--r--main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java9
-rw-r--r--main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java29
6 files changed, 42 insertions, 3 deletions
diff --git a/main/java/gregtech/api/GregTech_API.java b/main/java/gregtech/api/GregTech_API.java
index efae1af6a9..15140242d8 100644
--- a/main/java/gregtech/api/GregTech_API.java
+++ b/main/java/gregtech/api/GregTech_API.java
@@ -118,6 +118,7 @@ public class GregTech_API {
public static boolean sTimber = F, sDrinksAlwaysDrinkable = F, sMultiThreadedSounds = F, sDoShowAllItemsInCreative = F, sColoredGUI = T, sConstantEnergy = T, sMachineExplosions = T, sMachineFlammable = T, sMachineNonWrenchExplosions = T, sMachineRainExplosions = T, sMachineThunderExplosions = T, sMachineFireExplosions = T, sMachineWireFire = true;
public static boolean mOutputRF =false;
public static boolean mInputRF =false;
+ public static boolean meIOLoaded =false;
public static int mEUtoRF = 360;
public static int mRFtoEU = 20;
public static boolean mRFExplosions = true;
diff --git a/main/java/gregtech/api/enums/Materials.java b/main/java/gregtech/api/enums/Materials.java
index c69392ca61..e45ce625d3 100644
--- a/main/java/gregtech/api/enums/Materials.java
+++ b/main/java/gregtech/api/enums/Materials.java
@@ -546,7 +546,7 @@ public enum Materials implements IColorModulationContainer, ISubTagContainer {
WoodSealed ( 889, TextureSet.SET_WOOD , 3.0F, 24, 0, 1|2 |64|128 , 80, 40, 0, 0, "Sealed Wood" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyeBrown , 0, Arrays.asList(new MaterialStack(Wood, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.ARBOR, 2), new TC_AspectStack(TC_Aspects.FABRICO, 1))),
LiveRoot ( 832, TextureSet.SET_WOOD , 1.0F, 0, 1, 1 , 220, 200, 0, 0, "Liveroot" , 5, 16, -1, 0, F, F, 2, 4, 3, Dyes.dyeBrown , 2, Arrays.asList(new MaterialStack(Wood, 3), new MaterialStack(Magic, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.ARBOR, 2), new TC_AspectStack(TC_Aspects.VICTUS, 2), new TC_AspectStack(TC_Aspects.PRAECANTIO, 1))),
IronWood ( 338, TextureSet.SET_WOOD , 6.0F, 384, 2, 1|2 |64|128 , 150, 140, 110, 0, "Ironwood" , 5, 8, -1, 0, F, F, 2, 19, 18, Dyes.dyeBrown , 2, Arrays.asList(new MaterialStack(Iron, 9), new MaterialStack(LiveRoot, 9), new MaterialStack(Gold, 1))),
- Glass ( 890, TextureSet.SET_GLASS , 1.0F, 4, 0, 1 |4 , 250, 250, 250, 220, "Glass" , 0, 0, 800, 0, F, T, 1, 1, 1, Dyes.dyeWhite , 2, Arrays.asList(new MaterialStack(SiliconDioxide, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 2))),
+ Glass ( 890, TextureSet.SET_GLASS , 1.0F, 4, 0, 1 |4 , 250, 250, 250, 220, "Glass" , 0, 0, 1500, 0, F, T, 1, 1, 1, Dyes.dyeWhite , 2, Arrays.asList(new MaterialStack(SiliconDioxide, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 2))),
Perlite ( 925, TextureSet.SET_DULL , 1.0F, 0, 1, 1 |8 , 30, 20, 30, 0, "Perlite" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyeBlack , 2, Arrays.asList(new MaterialStack(Obsidian, 2), new MaterialStack(Water, 1))),
Borax ( 941, TextureSet.SET_FINE , 1.0F, 0, 1, 1 |8 , 250, 250, 250, 0, "Borax" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyeWhite , 1, Arrays.asList(new MaterialStack(Sodium, 2), new MaterialStack(Boron, 4), new MaterialStack(Water, 10), new MaterialStack(Oxygen, 7))),
Lignite ( 538, TextureSet.SET_LIGNITE , 1.0F, 0, 0, 1 |4|8 , 100, 70, 70, 0, "Lignite Coal" , 0, 0, -1, 0, F, F, 1, 1, 1, Dyes.dyeBlack , 1, Arrays.asList(new MaterialStack(Carbon, 2), new MaterialStack(Water, 4), new MaterialStack(DarkAsh, 1))),
diff --git a/main/java/gregtech/api/enums/OrePrefixes.java b/main/java/gregtech/api/enums/OrePrefixes.java
index 06e1ae97b7..fb7510dd45 100644
--- a/main/java/gregtech/api/enums/OrePrefixes.java
+++ b/main/java/gregtech/api/enums/OrePrefixes.java
@@ -219,6 +219,7 @@ public enum OrePrefixes {
batterySingleuse ("Single Use Batteries" , "" , "" ,F,T,F,F,F,F,F,F,F,F, 0 , -1, 64, -1),
battery ("Reusable Batteries" , "" , "" ,F,T,F,F,F,F,F,F,F,F, 0 , -1, 64, -1), // Introduced by Calclavia
circuit ("Circuits" , "" , "" ,T,T,F,F,F,F,F,F,F,F, 0 , -1, 64, -1), // Introduced by Calclavia
+ chipset ("Chipsets" , "" , "" ,T,T,F,F,F,F,F,F,F,F, 0 , -1, 64, -1), // Introduced by Buildcraft
computer ("Computers" , "" , "" ,T,T,F,F,T,F,F,F,F,F, 0 , -1, 64, -1), // A whole Computer. "computerMaster" = ComputerCube
// random known prefixes without special abilities.
diff --git a/main/java/gregtech/api/items/GT_RadioactiveCellIC_Item.java b/main/java/gregtech/api/items/GT_RadioactiveCellIC_Item.java
index cee5bb5689..e556f4b53c 100644
--- a/main/java/gregtech/api/items/GT_RadioactiveCellIC_Item.java
+++ b/main/java/gregtech/api/items/GT_RadioactiveCellIC_Item.java
@@ -76,9 +76,10 @@ import net.minecraft.world.World;
checkHeatAcceptor(reactor, x + 1, y, heatAcceptors);
checkHeatAcceptor(reactor, x, y - 1, heatAcceptors);
checkHeatAcceptor(reactor, x, y + 1, heatAcceptors);
+ heat = (int) (heat * sEnergy);
while ((heatAcceptors.size() > 0) && (heat > 0))
{
- heat *=sEnergy;
+
int dheat = heat / heatAcceptors.size();
heat -= dheat;
dheat = ((IReactorComponent)((ItemStackCoord)heatAcceptors.get(0)).stack.getItem()).alterHeat(reactor, ((ItemStackCoord)heatAcceptors.get(0)).stack, ((ItemStackCoord)heatAcceptors.get(0)).x, ((ItemStackCoord)heatAcceptors.get(0)).y, dheat);
diff --git a/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java b/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
index c859f5345f..85104f4584 100644
--- a/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
+++ b/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
@@ -39,6 +39,7 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
public final Materials mMaterial;
public final long mCableLossPerMeter, mAmperage, mVoltage;
public final boolean mInsulated, mCanShock;
+ public long mRestRF;
public GT_MetaPipeEntity_Cable(int aID, String aName, String aNameRegional, float aThickNess, Materials aMaterial, long aCableLossPerMeter, long aAmperage, long aVoltage, boolean aInsulated, boolean aCanShock) {
super(aID, aName, aNameRegional, 0);
@@ -143,6 +144,14 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
int rfOut = (int) (aVoltage * GregTech_API.mEUtoRF / 100);
if(((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, rfOut, true)==rfOut){
((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, rfOut, false); rUsedAmperes++;
+ }else if(((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, rfOut, true)>0){
+ if(mRestRF==0){
+ int RFtrans = ((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, (int) rfOut, false);rUsedAmperes++;
+ mRestRF = rfOut - RFtrans;
+ }else{
+ int RFtrans = ((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, (int) mRestRF, false);
+ mRestRF = mRestRF - RFtrans;
+ }
}
if(GregTech_API.mRFExplosions && ((IEnergyReceiver)tTileEntity).getMaxEnergyStored(tDirection) < rfOut * 600){
if(rfOut > 32 * GregTech_API.mEUtoRF / 100) this.doExplosion(rfOut);
diff --git a/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java b/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java
index 7a6b32d7e6..f3049a4ea7 100644
--- a/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java
+++ b/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java
@@ -2,6 +2,10 @@ package gregtech.api.metatileentity.implementations;
import static gregtech.api.enums.GT_Values.V;
import cofh.api.energy.IEnergyProvider;
+import cofh.api.energy.IEnergyStorage;
+import crazypants.enderio.machine.capbank.TileCapBank;
+import crazypants.enderio.machine.capbank.network.ICapBankNetwork;
+import crazypants.enderio.power.IPowerContainer;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
@@ -82,7 +86,6 @@ public class GT_MetaTileEntity_Transformer extends GT_MetaTileEntity_TieredMachi
for (byte i = 0; i < 6 && aBaseMetaTileEntity.getStoredEU() < aBaseMetaTileEntity.getEUCapacity(); i++) if (aBaseMetaTileEntity.inputEnergyFrom(i)) {
TileEntity tTileEntity = aBaseMetaTileEntity.getTileEntityAtSide(i);
if (tTileEntity instanceof IEnergySource && ((IEnergySource)tTileEntity).emitsEnergyTo((TileEntity)aBaseMetaTileEntity, ForgeDirection.getOrientation(GT_Utility.getOppositeSide(i)))) {
-// long tEU = (long)((IEnergySource)tTileEntity).getOfferedEnergy();
long tEU = Math.min(maxEUInput(), (long)((IEnergySource)tTileEntity).getOfferedEnergy());
((IEnergySource)tTileEntity).drawEnergy(tEU);
aBaseMetaTileEntity.injectEnergyUnits((byte)6, tEU, 1);
@@ -90,6 +93,30 @@ public class GT_MetaTileEntity_Transformer extends GT_MetaTileEntity_TieredMachi
long tEU = Math.min(maxEUInput(), (long)((IEnergyProvider)tTileEntity).extractEnergy(ForgeDirection.getOrientation(GT_Utility.getOppositeSide(i)),(int) maxEUInput()* 100 / GregTech_API.mRFtoEU ,false));
tEU = tEU * GregTech_API.mRFtoEU / 100;
aBaseMetaTileEntity.injectEnergyUnits((byte)6, tEU, 1);
+ }else if (GregTech_API.mInputRF && tTileEntity instanceof IEnergyStorage&& ((IEnergyStorage)tTileEntity).extractEnergy(1,true)==1) {
+ long tEU = Math.min(maxEUInput(), (long)((IEnergyStorage)tTileEntity).extractEnergy((int) maxEUInput()* 100 / GregTech_API.mRFtoEU ,false));
+ tEU = tEU * GregTech_API.mRFtoEU / 100;
+ aBaseMetaTileEntity.injectEnergyUnits((byte)6, tEU, 1);
+ }else if (GregTech_API.mInputRF && GregTech_API.meIOLoaded && tTileEntity instanceof IPowerContainer && ((IPowerContainer)tTileEntity).getEnergyStored()>0) {
+ int storedRF = ((IPowerContainer)tTileEntity).getEnergyStored();
+ int extractRF = (int) maxEUInput()* 100 / GregTech_API.mRFtoEU;
+ long tEU =0;
+ if(tTileEntity instanceof TileCapBank){
+ ICapBankNetwork network = ((TileCapBank)tTileEntity).getNetwork();
+ if(network!=null&&network.getEnergyStoredL()>0){
+ tEU = Math.min((Math.min(Math.min(network.getEnergyStoredL(), storedRF-extractRF),network.getMaxOutput())) * GregTech_API.mRFtoEU / 100,maxEUInput());
+ network.addEnergy((int) -(tEU * 100 / GregTech_API.mRFtoEU));
+ }
+ }else{
+ if(storedRF>extractRF){
+ ((IPowerContainer)tTileEntity).setEnergyStored(storedRF-extractRF);
+ tEU = maxEUInput();
+ }else{
+ ((IPowerContainer)tTileEntity).setEnergyStored(0);
+ tEU = storedRF * GregTech_API.mRFtoEU / 100 ;
+ }
+ }
+ aBaseMetaTileEntity.injectEnergyUnits((byte)6, tEU, 1);
}
}
}