blob: d6d8bf53108a05bad21edd24e09562d0eb4d78de (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
package gregtech.api.multitileentity.interfaces;
import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.multitileentity.multiblock.base.MultiBlockPart;
interface IMultiBlockEnergy {
boolean isUniversalEnergyStored(MultiBlockPart aPart, long aEnergyAmount);
long getUniversalEnergyStored(MultiBlockPart aPart);
long getUniversalEnergyCapacity(MultiBlockPart aPart);
long getOutputAmperage(MultiBlockPart aPart);
long getOutputVoltage(MultiBlockPart aPart);
long getInputAmperage(MultiBlockPart aPart);
long getInputVoltage(MultiBlockPart aPart);
boolean decreaseStoredEnergyUnits(MultiBlockPart aPart, long aEnergy, boolean aIgnoreTooLittleEnergy);
boolean increaseStoredEnergyUnits(MultiBlockPart aPart, long aEnergy, boolean aIgnoreTooMuchEnergy);
boolean drainEnergyUnits(MultiBlockPart aPart, ForgeDirection side, long aVoltage, long aAmperage);
long injectEnergyUnits(MultiBlockPart aPart, ForgeDirection side, long aVoltage, long aAmperage);
long getAverageElectricInput(MultiBlockPart aPart);
long getAverageElectricOutput(MultiBlockPart aPart);
long getStoredEU(MultiBlockPart aPart);
long getEUCapacity(MultiBlockPart aPart);
boolean inputEnergyFrom(MultiBlockPart aPart, ForgeDirection side);
boolean outputsEnergyTo(MultiBlockPart aPart, ForgeDirection side);
}
|