File tree Expand file tree Collapse file tree
src/main/java/com/circulation/circulation_networks Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -49,9 +49,9 @@ static IEnergyHandler release(ItemStack stack) {
4949
5050 long canReceiveValue ();
5151
52- boolean canExtract ();
52+ boolean canExtract (IEnergyHandler receiveHandler );
5353
54- boolean canReceive ();
54+ boolean canReceive (IEnergyHandler sendHandler );
5555
5656 default void recycle () {
5757 this .clear ();
@@ -62,8 +62,8 @@ default void recycle() {
6262 }
6363
6464 default EnergyType getType () {
65- boolean receive = canReceive () ;
66- if (canExtract () ) {
65+ boolean receive = canReceiveValue () > 0 ;
66+ if (canExtractValue () > 0 ) {
6767 return receive ? EnergyType .STORAGE : EnergyType .SEND ;
6868 } else if (receive ) {
6969 return EnergyType .RECEIVE ;
Original file line number Diff line number Diff line change @@ -65,12 +65,12 @@ public long canReceiveValue() {
6565 }
6666
6767 @ Override
68- public boolean canExtract () {
68+ public boolean canExtract (IEnergyHandler receiveHandler ) {
6969 return type != EnergyType .RECEIVE && canExtractValue () > 0 ;
7070 }
7171
7272 @ Override
73- public boolean canReceive () {
73+ public boolean canReceive (IEnergyHandler sendHandler ) {
7474 return type != EnergyType .SEND && canReceiveValue () > 0 ;
7575 }
7676
Original file line number Diff line number Diff line change @@ -52,7 +52,8 @@ public IEnergyHandler init(TileEntity tileEntity) {
5252 energyType = EnergyType .RECEIVE ;
5353 receive = (IEnergySink ) tile ;
5454 }
55- if (!canExtract () && !canReceive ()) energyType = EnergyType .INVALID ;
55+ if (!(send != null && send .getOfferedEnergy () > 0 ) && !(receive != null && receive .getDemandedEnergy () > 0 ))
56+ energyType = EnergyType .INVALID ;
5657 return this ;
5758 }
5859
@@ -110,12 +111,12 @@ public long canReceiveValue() {
110111 }
111112
112113 @ Override
113- public boolean canExtract () {
114+ public boolean canExtract (IEnergyHandler receiveHandler ) {
114115 return send != null && send .getOfferedEnergy () > 0 ;
115116 }
116117
117118 @ Override
118- public boolean canReceive () {
119+ public boolean canReceive (IEnergyHandler sendHandler ) {
119120 if (isItem ) {
120121 return ElectricItem .manager .getMaxCharge (itemStack ) > 0 ;
121122 } else {
Original file line number Diff line number Diff line change @@ -91,12 +91,12 @@ public EnergyType getType() {
9191 }
9292
9393 @ Override
94- public boolean canExtract () {
94+ public boolean canExtract (IEnergyHandler receiveHandler ) {
9595 return send != null ;
9696 }
9797
9898 @ Override
99- public boolean canReceive () {
99+ public boolean canReceive (IEnergyHandler sendHandler ) {
100100 return receive != null ;
101101 }
102102}
Original file line number Diff line number Diff line change @@ -163,13 +163,13 @@ public long canReceiveValue() {
163163 }
164164
165165 @ Override
166- public boolean canExtract () {
166+ public boolean canExtract (IEnergyHandler receiveHandler ) {
167167 if (creative ) return true ;
168168 return send != null && send .getEnergy () >= 2.5 ;
169169 }
170170
171171 @ Override
172- public boolean canReceive () {
172+ public boolean canReceive (IEnergyHandler sendHandler ) {
173173 if (isItem ) return needEnergy > 0 ;
174174 else return receive != null && (receive .getMaxEnergy () - receive .getEnergy ()) / 2.5 >= 0 ;
175175 }
You can’t perform that action at this time.
0 commit comments