Handle negative experience stored in essence capsules
This commit is contained in:
parent
17e4856b10
commit
5e1ae7e77d
@ -40,6 +40,7 @@ import ru.dbotthepony.mc.otm.menu.tech.EssenceStorageMenu
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MDataComponentTypes
|
||||
import ru.dbotthepony.mc.otm.registry.game.MFluids
|
||||
import kotlin.math.max
|
||||
|
||||
class EssenceStorageBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryDeviceBlockEntity(MBlockEntities.ESSENCE_STORAGE, blockPos, blockState), IFluidHandler {
|
||||
var experienceStored = 0L
|
||||
@ -169,7 +170,7 @@ class EssenceStorageBlockEntity(blockPos: BlockPos, blockState: BlockState) : Ma
|
||||
val capsule = capsuleContainer[0]
|
||||
|
||||
if (!capsule.isEmpty && capsule.has(MDataComponentTypes.EXPERIENCE)) {
|
||||
experienceStored += capsule.get(MDataComponentTypes.EXPERIENCE)!! * capsule.count
|
||||
experienceStored += max(capsule.get(MDataComponentTypes.EXPERIENCE)!! * capsule.count, 0L)
|
||||
capsuleContainer.clearContent()
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user