From e5b3d6bf0c34866cf2f93790349b035f69d3d699 Mon Sep 17 00:00:00 2001 From: DBotThePony Date: Sat, 6 Jan 2024 23:10:14 +0700 Subject: [PATCH] Fix machines turning into disco ball when one slot is working and other is errored --- .../mc/otm/block/entity/MatteryWorkerBlockEntity.kt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/MatteryWorkerBlockEntity.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/MatteryWorkerBlockEntity.kt index a89abd728..45499d6fe 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/MatteryWorkerBlockEntity.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/MatteryWorkerBlockEntity.kt @@ -151,12 +151,12 @@ abstract class MatteryWorkerBlockEntity( jobEventLoops.forEach { it.think() } if (hasWorkerState) { - if (jobEventLoops.any { it.workingTicksAnim > 20 } && !isWorkingState) { - level?.setBlock(blockPos, blockState.setValue(WorkerState.WORKER_STATE, WorkerState.WORKING), Block.UPDATE_CLIENTS) - } else if (jobEventLoops.any { it.errorTicksAnim > 20 } && !isErrorState) { - level?.setBlock(blockPos, blockState.setValue(WorkerState.WORKER_STATE, WorkerState.ERROR), Block.UPDATE_CLIENTS) - } else if (jobEventLoops.all { it.idleTicksAnim > 20 } && !isIdleState) { - level?.setBlock(blockPos, blockState.setValue(WorkerState.WORKER_STATE, WorkerState.IDLE), Block.UPDATE_CLIENTS) + if (jobEventLoops.any { it.workingTicksAnim > 20 }) { + if (!isWorkingState) level?.setBlock(blockPos, blockState.setValue(WorkerState.WORKER_STATE, WorkerState.WORKING), Block.UPDATE_CLIENTS) + } else if (jobEventLoops.any { it.errorTicksAnim > 20 }) { + if (!isErrorState) level?.setBlock(blockPos, blockState.setValue(WorkerState.WORKER_STATE, WorkerState.ERROR), Block.UPDATE_CLIENTS) + } else if (jobEventLoops.all { it.idleTicksAnim > 20 }) { + if (!isIdleState) level?.setBlock(blockPos, blockState.setValue(WorkerState.WORKER_STATE, WorkerState.IDLE), Block.UPDATE_CLIENTS) } } }