ITEM_STORAGE shortcut

This commit is contained in:
DBotThePony 2022-05-14 18:45:30 +07:00
parent 89c3b22913
commit fffb44c9a0
Signed by: DBot
GPG Key ID: DCC23B5715498507
3 changed files with 9 additions and 5 deletions

View File

@ -301,7 +301,7 @@ class StorageBusBlockEntity(blockPos: BlockPos, blockState: BlockState) : Matter
if (energy.batteryLevel.isZero)
return stack
val maxPossibleDemand = stack.count * OverdriveThatMatters.INSTANCE.ITEM_STORAGE().energyPerOperation
val maxPossibleDemand = stack.count * ITEM_STORAGE.energyPerOperation
val maxExtractEnergy = energy.extractEnergyInner(maxPossibleDemand, true)
var leftover: ItemStackWrapper
@ -310,7 +310,7 @@ class StorageBusBlockEntity(blockPos: BlockPos, blockState: BlockState) : Matter
leftover = stack.copy()
} else {
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))
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)
}

View File

@ -26,6 +26,7 @@ import ru.dbotthepony.mc.otm.graph.storage.StorageNetworkGraph
import ru.dbotthepony.mc.otm.orThrow
import ru.dbotthepony.mc.otm.registry.MBlockEntities
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.unaryMinus
@ -98,7 +99,7 @@ class StorageImporterBlockEntity(blockPos: BlockPos, blockState: BlockState) : M
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)
if (extracted.isEmpty) {
@ -108,7 +109,7 @@ class StorageImporterBlockEntity(blockPos: BlockPos, blockState: BlockState) : M
if (leftOver.count.toInt() != extracted.count) {
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)
} else {
nextTick += INTERVAL * 4

View File

@ -1,5 +1,6 @@
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.Fraction
import java.util.IdentityHashMap
@ -72,3 +73,5 @@ object StorageRegistry {
return REGISTRY[identity] as StorageStackType<T>?
}
}
inline val ITEM_STORAGE: StorageStackType<ItemStackWrapper> get() = OverdriveThatMatters.INSTANCE.ITEM_STORAGE()