ITEM_STORAGE shortcut
This commit is contained in:
parent
89c3b22913
commit
fffb44c9a0
@ -301,7 +301,7 @@ class StorageBusBlockEntity(blockPos: BlockPos, blockState: BlockState) : Matter
|
|||||||
if (energy.batteryLevel.isZero)
|
if (energy.batteryLevel.isZero)
|
||||||
return stack
|
return stack
|
||||||
|
|
||||||
val maxPossibleDemand = stack.count * OverdriveThatMatters.INSTANCE.ITEM_STORAGE().energyPerOperation
|
val maxPossibleDemand = stack.count * ITEM_STORAGE.energyPerOperation
|
||||||
val maxExtractEnergy = energy.extractEnergyInner(maxPossibleDemand, true)
|
val maxExtractEnergy = energy.extractEnergyInner(maxPossibleDemand, true)
|
||||||
|
|
||||||
var leftover: ItemStackWrapper
|
var leftover: ItemStackWrapper
|
||||||
@ -310,7 +310,7 @@ class StorageBusBlockEntity(blockPos: BlockPos, blockState: BlockState) : Matter
|
|||||||
leftover = stack.copy()
|
leftover = stack.copy()
|
||||||
} else {
|
} else {
|
||||||
leftover = stack.copy().also {
|
leftover = stack.copy().also {
|
||||||
it.count = (maxExtractEnergy / OverdriveThatMatters.INSTANCE.ITEM_STORAGE().energyPerOperation).floor()
|
it.count = (maxExtractEnergy / ITEM_STORAGE.energyPerOperation).floor()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -319,7 +319,7 @@ class StorageBusBlockEntity(blockPos: BlockPos, blockState: BlockState) : Matter
|
|||||||
leftover = ItemStackWrapper(parent.insertItem(slot, leftover.stack, simulate))
|
leftover = ItemStackWrapper(parent.insertItem(slot, leftover.stack, simulate))
|
||||||
|
|
||||||
if (oldCount != leftover.count && !simulate) {
|
if (oldCount != leftover.count && !simulate) {
|
||||||
energy.extractEnergyInner((oldCount - leftover.count) * OverdriveThatMatters.INSTANCE.ITEM_STORAGE().energyPerOperation, false)
|
energy.extractEnergyInner((oldCount - leftover.count) * ITEM_STORAGE.energyPerOperation, false)
|
||||||
scan(slot)
|
scan(slot)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -26,6 +26,7 @@ import ru.dbotthepony.mc.otm.graph.storage.StorageNetworkGraph
|
|||||||
import ru.dbotthepony.mc.otm.orThrow
|
import ru.dbotthepony.mc.otm.orThrow
|
||||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||||
import ru.dbotthepony.mc.otm.registry.MNames
|
import ru.dbotthepony.mc.otm.registry.MNames
|
||||||
|
import ru.dbotthepony.mc.otm.storage.ITEM_STORAGE
|
||||||
import ru.dbotthepony.mc.otm.storage.ItemStackWrapper
|
import ru.dbotthepony.mc.otm.storage.ItemStackWrapper
|
||||||
import ru.dbotthepony.mc.otm.unaryMinus
|
import ru.dbotthepony.mc.otm.unaryMinus
|
||||||
|
|
||||||
@ -98,7 +99,7 @@ class StorageImporterBlockEntity(blockPos: BlockPos, blockState: BlockState) : M
|
|||||||
lastSlot = 0
|
lastSlot = 0
|
||||||
}
|
}
|
||||||
|
|
||||||
val maxMove = energy.extractStepInner(OverdriveThatMatters.INSTANCE.ITEM_STORAGE().energyPerOperation, MAX_MOVE_PER_OPERATION, true)
|
val maxMove = energy.extractStepInner(ITEM_STORAGE.energyPerOperation, MAX_MOVE_PER_OPERATION, true)
|
||||||
var extracted = resolved.extractItem(lastSlot, maxMove, true)
|
var extracted = resolved.extractItem(lastSlot, maxMove, true)
|
||||||
|
|
||||||
if (extracted.isEmpty) {
|
if (extracted.isEmpty) {
|
||||||
@ -108,7 +109,7 @@ class StorageImporterBlockEntity(blockPos: BlockPos, blockState: BlockState) : M
|
|||||||
|
|
||||||
if (leftOver.count.toInt() != extracted.count) {
|
if (leftOver.count.toInt() != extracted.count) {
|
||||||
extracted = resolved.extractItem(lastSlot, extracted.count - leftOver.count.toInt(), false)
|
extracted = resolved.extractItem(lastSlot, extracted.count - leftOver.count.toInt(), false)
|
||||||
energy.extractStepInner(OverdriveThatMatters.INSTANCE.ITEM_STORAGE().energyPerOperation, extracted.count, false)
|
energy.extractStepInner(ITEM_STORAGE.energyPerOperation, extracted.count, false)
|
||||||
items.insertStack(ItemStackWrapper(extracted), false)
|
items.insertStack(ItemStackWrapper(extracted), false)
|
||||||
} else {
|
} else {
|
||||||
nextTick += INTERVAL * 4
|
nextTick += INTERVAL * 4
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package ru.dbotthepony.mc.otm.storage
|
package ru.dbotthepony.mc.otm.storage
|
||||||
|
|
||||||
|
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||||
import ru.dbotthepony.mc.otm.core.ImpreciseFraction
|
import ru.dbotthepony.mc.otm.core.ImpreciseFraction
|
||||||
import ru.dbotthepony.mc.otm.core.Fraction
|
import ru.dbotthepony.mc.otm.core.Fraction
|
||||||
import java.util.IdentityHashMap
|
import java.util.IdentityHashMap
|
||||||
@ -72,3 +73,5 @@ object StorageRegistry {
|
|||||||
return REGISTRY[identity] as StorageStackType<T>?
|
return REGISTRY[identity] as StorageStackType<T>?
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
inline val ITEM_STORAGE: StorageStackType<ItemStackWrapper> get() = OverdriveThatMatters.INSTANCE.ITEM_STORAGE()
|
||||||
|
Loading…
Reference in New Issue
Block a user