How?
This commit is contained in:
parent
0b5ff224f8
commit
e57dbe5814
@ -192,16 +192,19 @@ class MatterReplicatorBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) :
|
||||
val job = status.job
|
||||
val drainPerTick = job.matterPerTick * status.ticksAdvanced
|
||||
|
||||
if (matter.extractMatter(drainPerTick, true) < drainPerTick) {
|
||||
val toDrain = (drainPerTick * Decimal(200))
|
||||
.coerceAtMost(job.matterPerTick * (status.ticks - status.workTicks + status.ticksAdvanced))
|
||||
.coerceAtLeast(Decimal.ONE)
|
||||
.coerceAtMost(matter.missingMatter)
|
||||
if (drainPerTick.isPositive) {
|
||||
if (matter.extractMatter(drainPerTick, true) < drainPerTick) {
|
||||
val toDrain = (drainPerTick * Decimal(200))
|
||||
.coerceAtMost(job.matterPerTick * (status.ticks - status.workTicks + status.ticksAdvanced))
|
||||
.coerceAtLeast(Decimal.ONE)
|
||||
.coerceAtMost(matter.missingMatter)
|
||||
|
||||
matter.receiveMatter(matterNode.graph.extractMatter(toDrain, false), false)
|
||||
matter.receiveMatter(matterNode.graph.extractMatter(toDrain, false), false)
|
||||
}
|
||||
|
||||
status.scale(matter.extractMatter(drainPerTick, false) / drainPerTick)
|
||||
}
|
||||
|
||||
status.scale(matter.extractMatter(drainPerTick, false) / drainPerTick)
|
||||
visualProgress = status.workProgress
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user