воцыа9гыаоу2п
ппи8ва729уц2улв цыпцуле94пыва ашпцувлцйа аша94аца в9н3р3 ццццццццццццццццццццццццццццвааупъма аа пм м мравркр ук ц йке пцу рпыв пр варп
This commit is contained in:
parent
fdf8e47e5e
commit
a06fd6a31a
@ -4,6 +4,7 @@ import net.minecraft.core.HolderLookup
|
|||||||
import net.minecraft.nbt.CompoundTag
|
import net.minecraft.nbt.CompoundTag
|
||||||
import net.minecraft.nbt.ListTag
|
import net.minecraft.nbt.ListTag
|
||||||
import net.neoforged.neoforge.common.util.INBTSerializable
|
import net.neoforged.neoforge.common.util.INBTSerializable
|
||||||
|
import org.apache.logging.log4j.LogManager
|
||||||
import ru.dbotthepony.mc.otm.core.nbt.contains
|
import ru.dbotthepony.mc.otm.core.nbt.contains
|
||||||
import java.util.UUID
|
import java.util.UUID
|
||||||
|
|
||||||
@ -33,15 +34,14 @@ class UUIDIntModifiersMap(private val observer: (Int) -> Unit, private val backi
|
|||||||
}
|
}
|
||||||
|
|
||||||
operator fun set(key: UUID, value: Int): Boolean {
|
operator fun set(key: UUID, value: Int): Boolean {
|
||||||
val old = backingMap.put(key, value)
|
|
||||||
|
|
||||||
if (old == value) {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
ignoreRecompute = true
|
ignoreRecompute = true
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
val old = backingMap.put(key, value)
|
||||||
|
|
||||||
|
if (old == value)
|
||||||
|
return false
|
||||||
|
|
||||||
this.value += value - (old ?: 0)
|
this.value += value - (old ?: 0)
|
||||||
observer.invoke(this.value)
|
observer.invoke(this.value)
|
||||||
return true
|
return true
|
||||||
@ -113,7 +113,13 @@ class UUIDIntModifiersMap(private val observer: (Int) -> Unit, private val backi
|
|||||||
|
|
||||||
if (value.contains("key", "value")) {
|
if (value.contains("key", "value")) {
|
||||||
val int = value.getInt("value")
|
val int = value.getInt("value")
|
||||||
backingMap.put(value.getUUID("key"), int)
|
val previous = backingMap.put(value.getUUID("key"), int)
|
||||||
|
|
||||||
|
if (previous != null) {
|
||||||
|
LOGGER.warn("Duplicate modifier in UUID Int Modifier Map with UUID ${value.getUUID("key")}")
|
||||||
|
this.value -= previous
|
||||||
|
}
|
||||||
|
|
||||||
this.value += int
|
this.value += int
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -125,4 +131,8 @@ class UUIDIntModifiersMap(private val observer: (Int) -> Unit, private val backi
|
|||||||
ignoreRecompute = false
|
ignoreRecompute = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
companion object {
|
||||||
|
private val LOGGER = LogManager.getLogger()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user