From 9feb5e9577ea240b7a6589633e5cb400c883bfbb Mon Sep 17 00:00:00 2001 From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com> Date: Sat, 28 Jun 2025 23:32:18 +0300 Subject: [PATCH] additional opts to BlockEntityTickersList --- .../divinemc/util/BlockEntityTickersList.java | 47 ++++++++++--------- 1 file changed, 25 insertions(+), 22 deletions(-) diff --git a/divinemc-server/src/main/java/org/bxteam/divinemc/util/BlockEntityTickersList.java b/divinemc-server/src/main/java/org/bxteam/divinemc/util/BlockEntityTickersList.java index 328f27d..fbf9f32 100644 --- a/divinemc-server/src/main/java/org/bxteam/divinemc/util/BlockEntityTickersList.java +++ b/divinemc-server/src/main/java/org/bxteam/divinemc/util/BlockEntityTickersList.java @@ -67,32 +67,35 @@ public final class BlockEntityTickersList extends ObjectArrayList 0) { + System.arraycopy(a, copyStart, a, destPos, copyLength); + destPos += copyLength; + } + + copyStart = i + 1; + matches++; + + if (matches == requiredMatches) { + break; } - j = size - requiredMatches; - break; } } - Arrays.fill(a, j, size, null); - size = j; + + int remainingLength = size - copyStart; + if (remainingLength > 0) { + System.arraycopy(a, copyStart, a, destPos, remainingLength); + destPos += remainingLength; + } + + // Clear remaining references and update size + if (destPos < size) Arrays.fill(a, destPos, size, null); + size = destPos; } }