Fix android getting duplicated energy on death if they have battery equipped

This commit is contained in:
DBotThePony 2024-01-27 10:23:29 +07:00
parent 3a4d80d084
commit 7e5711d210
Signed by: DBot
GPG Key ID: DCC23B5715498507

View File

@ -1592,7 +1592,9 @@ class MatteryPlayerCapability(val ply: Player) : ICapabilityProvider, INBTSerial
mattery.iteration++
mattery.shouldSendIteration = true
mattery.deathLog.addLast(ply.tickCount to ply.combatTracker.deathMessage)
mattery.androidEnergy.batteryLevel = mattery.androidEnergy.batteryLevel.coerceAtLeast(AndroidConfig.ANDROID_MAX_ENERGY * Decimal("0.2")) // если смерть была от разряда батареи, то предотвращаем софтлок
if (mattery.androidEnergy.batteryLevel < AndroidConfig.ANDROID_MAX_ENERGY * Decimal("0.2"))
mattery.androidEnergy.batteryLevel = AndroidConfig.ANDROID_MAX_ENERGY * Decimal("0.2") // если смерть была от разряда батареи, то предотвращаем софтлок
while (mattery.deathLog.size > 6) {
mattery.deathLog.removeFirst()