Use moveEnergy in Energy Servo
This commit is contained in:
parent
5e23300ddf
commit
847ec81928
@ -14,6 +14,7 @@ import ru.dbotthepony.mc.otm.capability.energy.ProfiledEnergyStorage
|
||||
import ru.dbotthepony.mc.otm.capability.energyStoredMattery
|
||||
import ru.dbotthepony.mc.otm.capability.extractEnergy
|
||||
import ru.dbotthepony.mc.otm.capability.maxEnergyStoredMattery
|
||||
import ru.dbotthepony.mc.otm.capability.moveEnergy
|
||||
import ru.dbotthepony.mc.otm.capability.receiveEnergy
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.container.HandlerFilter
|
||||
@ -89,19 +90,7 @@ class EnergyServoBlockEntity(blockPos: BlockPos, blockState: BlockState) : Matte
|
||||
val chargeEnergy = charge.energy ?: return
|
||||
val dischargeEnergy = discharge.energy ?: return
|
||||
|
||||
val extracted = dischargeEnergy.extractEnergy(Decimal.LONG_MAX_VALUE, true)
|
||||
|
||||
if (extracted.isPositive) {
|
||||
val received = chargeEnergy.receiveEnergy(extracted, true)
|
||||
|
||||
if (received.isPositive) {
|
||||
val extracted2 = dischargeEnergy.extractEnergy(received, false)
|
||||
|
||||
if (extracted2 == received) {
|
||||
chargeEnergy.receiveEnergy(dischargeEnergy.extractEnergy(received, false), false)
|
||||
}
|
||||
}
|
||||
}
|
||||
moveEnergy(source = dischargeEnergy, destination = chargeEnergy, amount = Decimal.LONG_MAX_VALUE, simulate = false)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user