Make "powered" cable display handle more edge cases
This commit is contained in:
parent
f9bd671e88
commit
5813a3ad65
@ -233,6 +233,7 @@ class EnergyCableGraph : GraphNodeList<EnergyCableBlockEntity.Node, EnergyCableG
|
||||
private var lastTick = 0
|
||||
private var lastPoweredStatus = 0
|
||||
private var lastPoweredSwitchFrequency = 0
|
||||
private var poweredStatusFlightTicks = 4
|
||||
|
||||
private fun updateBlockstates(): Boolean {
|
||||
if (nodes.isEmpty()) return false
|
||||
@ -245,7 +246,7 @@ class EnergyCableGraph : GraphNodeList<EnergyCableBlockEntity.Node, EnergyCableG
|
||||
val newState = transferredLastTick.isPositive
|
||||
val numState = if (newState) 1 else -1
|
||||
|
||||
if (numState != lastPoweredStatus || true) {
|
||||
if (numState != lastPoweredStatus || --poweredStatusFlightTicks > 0) {
|
||||
lastPoweredStatus = numState
|
||||
nodes.forEach { if (it.segment === this) it.updatePoweredState(newState) }
|
||||
}
|
||||
@ -395,6 +396,7 @@ class EnergyCableGraph : GraphNodeList<EnergyCableBlockEntity.Node, EnergyCableG
|
||||
}
|
||||
|
||||
lastPoweredStatus = 0
|
||||
poweredStatusFlightTicks = 4
|
||||
paths.forEach { it.nodes.addAll(nodes) }
|
||||
return result
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user