More efficient pattern storage patternCapacity and storedPatterns implementations

This commit is contained in:
DBotThePony 2025-03-06 22:02:09 +07:00
parent d1a9825ea8
commit 06f8d8838a
Signed by: DBot
GPG Key ID: DCC23B5715498507

View File

@ -92,20 +92,12 @@ class PatternStorageBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) : Ma
} }
override val patternCapacity: Int get() { override val patternCapacity: Int get() {
var stored = 0L val stored = container.sumOf { it.getCapability(MatteryCapability.PATTERN_ITEM)?.patternCapacity?.toLong() ?: 0L }
for (pattern in this.container.iterator().map { it.getCapability(MatteryCapability.PATTERN_ITEM) }.filterNotNull())
stored += pattern.patternCapacity.toLong()
return if (stored > Int.MAX_VALUE) Int.MAX_VALUE else stored.toInt() return if (stored > Int.MAX_VALUE) Int.MAX_VALUE else stored.toInt()
} }
override val storedPatterns: Int get() { override val storedPatterns: Int get() {
var stored = 0L val stored = container.sumOf { it.getCapability(MatteryCapability.PATTERN_ITEM)?.storedPatterns?.toLong() ?: 0L }
for (pattern in this.container.iterator().map { it.getCapability(MatteryCapability.PATTERN_ITEM) }.filterNotNull())
stored += pattern.storedPatterns.toLong()
return if (stored > Int.MAX_VALUE) Int.MAX_VALUE else stored.toInt() return if (stored > Int.MAX_VALUE) Int.MAX_VALUE else stored.toInt()
} }