Skip to content

Commit 9e4f1bf

Browse files
authored
Make energy acceptor work as a small energy cell (#36)
* make energy acceptor work as a small energy cell GTNewHorizons/GT-New-Horizons-Modpack#7424
1 parent 849d4c1 commit 9e4f1bf

File tree

2 files changed

+24
-2
lines changed

2 files changed

+24
-2
lines changed

gradle.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
aeversion=rv3
22
aechannel=beta
3-
aebuild=41-GTNH
3+
aebuild=42-GTNH
44
#KEEP V6 FOR MOD SUPPORT
55
aegroup=appeng
66
aebasename=appliedenergistics2

src/main/java/appeng/tile/networking/TileEnergyAcceptor.java

+23-1
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,11 @@
1919
package appeng.tile.networking;
2020

2121

22+
import appeng.api.config.AccessRestriction;
2223
import appeng.api.config.Actionable;
24+
import appeng.api.config.PowerMultiplier;
2325
import appeng.api.networking.energy.IEnergyGrid;
26+
import appeng.api.networking.events.MENetworkPowerStorage;
2427
import appeng.api.util.AECableType;
2528
import appeng.me.GridAccessException;
2629
import appeng.tile.grid.AENetworkPowerTile;
@@ -41,12 +44,15 @@ public class TileEnergyAcceptor extends AENetworkPowerTile
4144
public TileEnergyAcceptor()
4245
{
4346
this.getProxy().setIdlePowerUsage( 0.0 );
44-
this.setInternalMaxPower( 0 );
47+
this.setInternalMaxPower( 8000 );
48+
this.setInternalPublicPowerStorage(true);
49+
this.setInternalPowerFlow(AccessRestriction.READ_WRITE);
4550
}
4651

4752
@Override
4853
public void readFromNBT_AENetwork( final NBTTagCompound data )
4954
{
55+
this.setInternalCurrentPower( data.getDouble( "internalCurrentPower" ) );
5056
/**
5157
* Does nothing here since the NBT tag in the parent is not needed anymore
5258
*/
@@ -55,6 +61,7 @@ public void readFromNBT_AENetwork( final NBTTagCompound data )
5561
@Override
5662
public void writeToNBT_AENetwork( final NBTTagCompound data )
5763
{
64+
data.setDouble( "internalCurrentPower", this.getInternalCurrentPower() );
5865
/**
5966
* Does nothing here since the NBT tag in the parent is not needed anymore
6067
*/
@@ -98,6 +105,21 @@ protected double funnelPowerIntoStorage( final double power, final Actionable mo
98105
return super.funnelPowerIntoStorage( power, mode );
99106
}
100107
}
108+
@Override
109+
protected double extractAEPower( double amt, final Actionable mode )
110+
{
111+
double res = super.extractAEPower(amt, mode);
112+
try
113+
{
114+
if (getInternalCurrentPower() < getInternalMaxPower())
115+
this.getProxy().getGrid().postEvent(new MENetworkPowerStorage(this, MENetworkPowerStorage.PowerEventType.REQUEST_POWER));
116+
}
117+
catch( final GridAccessException ignored )
118+
{
119+
120+
}
121+
return res;
122+
}
101123

102124
@Override
103125
public IInventory getInternalInventory()

0 commit comments

Comments
 (0)