Move codecs to subpackage
This commit is contained in:
parent
77821768bc
commit
6fc26c869a
@ -1,6 +1,5 @@
|
||||
package ru.dbotthepony.mc.otm.android
|
||||
|
||||
import com.mojang.datafixers.util.Either
|
||||
import com.mojang.serialization.Codec
|
||||
import com.mojang.serialization.MapCodec
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder
|
||||
@ -8,16 +7,12 @@ import net.minecraft.ChatFormatting
|
||||
import net.minecraft.network.chat.Component
|
||||
import net.minecraft.network.chat.ComponentSerialization
|
||||
import net.neoforged.bus.api.IEventBus
|
||||
import ru.dbotthepony.kommons.util.getValue
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.client.ShiftPressedCond
|
||||
import ru.dbotthepony.mc.otm.config.AndroidConfig
|
||||
import ru.dbotthepony.mc.otm.core.TextComponent
|
||||
import ru.dbotthepony.mc.otm.core.TranslatableComponent
|
||||
import ru.dbotthepony.mc.otm.core.getValue
|
||||
import ru.dbotthepony.mc.otm.core.util.formatPower
|
||||
import ru.dbotthepony.mc.otm.data.SingletonCodec
|
||||
import ru.dbotthepony.mc.otm.data.simpleCodec
|
||||
import ru.dbotthepony.mc.otm.registry.MDeferredRegister
|
||||
import ru.dbotthepony.mc.otm.registry.RegistryDelegate
|
||||
|
||||
|
@ -1,16 +1,12 @@
|
||||
package ru.dbotthepony.mc.otm.android
|
||||
|
||||
import com.mojang.datafixers.util.Either
|
||||
import com.mojang.serialization.Codec
|
||||
import com.mojang.serialization.MapCodec
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder
|
||||
import net.minecraft.resources.ResourceLocation
|
||||
import net.neoforged.bus.api.IEventBus
|
||||
import org.apache.logging.log4j.LogManager
|
||||
import ru.dbotthepony.kommons.util.getValue
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.core.getValue
|
||||
import ru.dbotthepony.mc.otm.data.SingletonCodec
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.MDeferredRegister
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
@ -5,7 +5,6 @@ import com.google.gson.JsonObject
|
||||
import com.google.gson.JsonSyntaxException
|
||||
import com.mojang.datafixers.util.Either
|
||||
import com.mojang.serialization.Codec
|
||||
import com.mojang.serialization.codecs.ListCodec
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder
|
||||
import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet
|
||||
import net.minecraft.core.registries.BuiltInRegistries
|
||||
@ -24,7 +23,7 @@ import ru.dbotthepony.mc.otm.client.render.sprites.AbstractMatterySprite
|
||||
import ru.dbotthepony.mc.otm.client.render.sprites.SpriteType
|
||||
import ru.dbotthepony.mc.otm.core.collect.ListSet
|
||||
import ru.dbotthepony.mc.otm.core.TranslatableComponent
|
||||
import ru.dbotthepony.mc.otm.data.JsonElementCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.JsonElementCodec
|
||||
import ru.dbotthepony.mc.otm.isClient
|
||||
import java.util.Optional
|
||||
import java.util.function.Function
|
||||
|
@ -17,7 +17,7 @@ import ru.dbotthepony.mc.otm.core.math.weakEqualDoubles
|
||||
import ru.dbotthepony.mc.otm.core.math.weakGreaterThan
|
||||
import ru.dbotthepony.mc.otm.core.math.weakLessThan
|
||||
import ru.dbotthepony.mc.otm.core.nbt.set
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
|
||||
private fun isReason(status: Any?, reason: Any) = status == null || status == reason
|
||||
private val LOGGER = LogManager.getLogger()
|
||||
|
@ -40,7 +40,7 @@ import ru.dbotthepony.mc.otm.core.math.component3
|
||||
import ru.dbotthepony.mc.otm.core.nbt.set
|
||||
import ru.dbotthepony.mc.otm.core.set
|
||||
import ru.dbotthepony.mc.otm.core.util.countingLazy
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.menu.decorative.GrillMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
|
@ -23,16 +23,14 @@ import ru.dbotthepony.mc.otm.capability.matter.ProfiledMatterStorage
|
||||
import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.container.HandlerFilter
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.container.UpgradeContainer
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.graph.matter.SimpleMatterNode
|
||||
import ru.dbotthepony.mc.otm.matter.MatterManager
|
||||
import ru.dbotthepony.mc.otm.menu.matter.MatterDecomposerMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import java.util.function.BooleanSupplier
|
||||
|
||||
class MatterDecomposerBlockEntity(pos: BlockPos, state: BlockState)
|
||||
: MatteryWorkerBlockEntity<MatterDecomposerBlockEntity.DecomposerJob>(MBlockEntities.MATTER_DECOMPOSER, pos, state, DecomposerJob.CODEC) {
|
||||
|
@ -27,10 +27,9 @@ import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.container.MatteryCraftingContainer
|
||||
import ru.dbotthepony.mc.otm.container.HandlerFilter
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.container.UpgradeContainer
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.graph.matter.MatterNode
|
||||
import ru.dbotthepony.mc.otm.menu.matter.MatterEntanglerMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
|
@ -23,14 +23,13 @@ import ru.dbotthepony.mc.otm.capability.matter.ProfiledMatterStorage
|
||||
import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.container.HandlerFilter
|
||||
import ru.dbotthepony.mc.otm.container.UpgradeContainer
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.graph.matter.MatterGraph
|
||||
import ru.dbotthepony.mc.otm.item.matter.MatterDustItem
|
||||
import ru.dbotthepony.mc.otm.menu.matter.MatterRecyclerMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.graph.matter.SimpleMatterNode
|
||||
|
||||
class MatterRecyclerBlockEntity(blockPos: BlockPos, blockState: BlockState)
|
||||
|
@ -27,10 +27,9 @@ import ru.dbotthepony.mc.otm.capability.matter.*
|
||||
import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.container.HandlerFilter
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.container.UpgradeContainer
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.graph.matter.MatterNode
|
||||
import ru.dbotthepony.mc.otm.matter.MatterManager
|
||||
import ru.dbotthepony.mc.otm.menu.matter.MatterReplicatorMenu
|
||||
|
@ -32,7 +32,7 @@ import ru.dbotthepony.mc.otm.core.collect.map
|
||||
import ru.dbotthepony.mc.otm.core.collect.toList
|
||||
import ru.dbotthepony.mc.otm.core.immutableList
|
||||
import ru.dbotthepony.mc.otm.core.isNotEmpty
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.network.StreamCodecs
|
||||
import ru.dbotthepony.mc.otm.network.syncher.ISynchable
|
||||
import ru.dbotthepony.mc.otm.network.syncher.SynchableObservedDelegate
|
||||
|
@ -4,7 +4,7 @@ import com.mojang.serialization.Codec
|
||||
import net.minecraft.network.RegistryFriendlyByteBuf
|
||||
import ru.dbotthepony.mc.otm.core.collect.reduce
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.network.MatteryStreamCodec
|
||||
|
||||
class DecimalHistoryChart : AbstractHistoryChart<Decimal> {
|
||||
|
@ -10,6 +10,7 @@ import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.core.ResourceLocation
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.core.math.nextDecimal
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.registry.MDeferredRegister
|
||||
import ru.dbotthepony.mc.otm.registry.RegistryDelegate
|
||||
|
||||
|
@ -0,0 +1,56 @@
|
||||
package ru.dbotthepony.mc.otm.data.codec
|
||||
|
||||
import com.google.common.collect.ImmutableList
|
||||
import com.mojang.datafixers.util.Pair
|
||||
import com.mojang.serialization.Codec
|
||||
import com.mojang.serialization.DataResult
|
||||
import com.mojang.serialization.DynamicOps
|
||||
import ru.dbotthepony.mc.otm.core.stream
|
||||
import java.util.stream.Stream
|
||||
|
||||
class CodecList<S : Any>(codecs: Stream<Codec<S>>) : Codec<S> {
|
||||
constructor(codecs: Collection<Codec<S>>) : this(codecs.stream())
|
||||
constructor(vararg codecs: Codec<S>) : this(codecs.stream() as Stream<Codec<S>>)
|
||||
|
||||
private val codecs = codecs.collect(ImmutableList.toImmutableList())
|
||||
|
||||
init {
|
||||
require(this.codecs.isNotEmpty()) { "No codecs provided" }
|
||||
}
|
||||
|
||||
override fun <T : Any> encode(input: S, ops: DynamicOps<T>, prefix: T): DataResult<T> {
|
||||
val results = ArrayList<DataResult<T>>(codecs.size)
|
||||
|
||||
for (codec in codecs) {
|
||||
val result = codec.encode(input, ops, prefix)
|
||||
|
||||
if (result.result().isPresent) {
|
||||
return result
|
||||
} else {
|
||||
results.add(result)
|
||||
}
|
||||
}
|
||||
|
||||
return DataResult.error {
|
||||
"None of codecs encoded the input:\n " + results.joinToString(";\n ") { it.error().get().message() }
|
||||
}
|
||||
}
|
||||
|
||||
override fun <T : Any> decode(ops: DynamicOps<T>, input: T): DataResult<Pair<S, T>> {
|
||||
val results = ArrayList<DataResult<Pair<S, T>>>(codecs.size)
|
||||
|
||||
for (codec in codecs) {
|
||||
val result = codec.decode(ops, input)
|
||||
|
||||
if (result.result().isPresent) {
|
||||
return result
|
||||
} else {
|
||||
results.add(result)
|
||||
}
|
||||
}
|
||||
|
||||
return DataResult.error {
|
||||
"None of codecs decoded the input:\n " + results.joinToString(";\n ") { it.error().get().message() }
|
||||
}
|
||||
}
|
||||
}
|
@ -1,8 +1,6 @@
|
||||
package ru.dbotthepony.mc.otm.data
|
||||
package ru.dbotthepony.mc.otm.data.codec
|
||||
|
||||
import com.mojang.serialization.Codec
|
||||
import com.mojang.serialization.Dynamic
|
||||
import com.mojang.serialization.JsonOps
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder
|
||||
import net.minecraft.advancements.critereon.DamagePredicate
|
||||
import net.minecraft.advancements.critereon.DamageSourcePredicate
|
@ -1,11 +1,12 @@
|
||||
package ru.dbotthepony.mc.otm.data
|
||||
package ru.dbotthepony.mc.otm.data.codec
|
||||
|
||||
import com.mojang.datafixers.util.Pair
|
||||
import com.mojang.serialization.Codec
|
||||
import com.mojang.serialization.DataResult
|
||||
import com.mojang.serialization.DynamicOps
|
||||
|
||||
class ComparableCodec<S : Comparable<S>>(val parent: Codec<S>, val min: S? = null, val max: S? = null, val minExclusive: Boolean = false, val maxExclusive: Boolean = false) : Codec<S> {
|
||||
class ComparableCodec<S : Comparable<S>>(val parent: Codec<S>, val min: S? = null, val max: S? = null, val minExclusive: Boolean = false, val maxExclusive: Boolean = false) :
|
||||
Codec<S> {
|
||||
private fun <T : Any> check(input: S): DataResult<T>? {
|
||||
if (min != null) {
|
||||
if (minExclusive) {
|
||||
@ -46,6 +47,9 @@ class ComparableCodec<S : Comparable<S>>(val parent: Codec<S>, val min: S? = nul
|
||||
}
|
||||
}
|
||||
|
||||
fun <S : Comparable<S>> Codec<S>.minRange(min: S, exclusive: Boolean = false) = ComparableCodec(this, min = min, minExclusive = exclusive)
|
||||
fun <S : Comparable<S>> Codec<S>.maxRange(max: S, exclusive: Boolean = false) = ComparableCodec(this, max = max, maxExclusive = exclusive)
|
||||
fun <S : Comparable<S>> Codec<S>.inRange(min: S, minExclusive: Boolean = false, max: S, maxExclusive: Boolean = false) = ComparableCodec(this, min, max, minExclusive, maxExclusive)
|
||||
fun <S : Comparable<S>> Codec<S>.minRange(min: S, exclusive: Boolean = false) =
|
||||
ComparableCodec(this, min = min, minExclusive = exclusive)
|
||||
fun <S : Comparable<S>> Codec<S>.maxRange(max: S, exclusive: Boolean = false) =
|
||||
ComparableCodec(this, max = max, maxExclusive = exclusive)
|
||||
fun <S : Comparable<S>> Codec<S>.inRange(min: S, minExclusive: Boolean = false, max: S, maxExclusive: Boolean = false) =
|
||||
ComparableCodec(this, min, max, minExclusive, maxExclusive)
|
@ -1,4 +1,4 @@
|
||||
package ru.dbotthepony.mc.otm.data
|
||||
package ru.dbotthepony.mc.otm.data.codec
|
||||
|
||||
import com.mojang.datafixers.util.Pair
|
||||
import com.mojang.serialization.Codec
|
@ -1,4 +1,4 @@
|
||||
package ru.dbotthepony.mc.otm.data
|
||||
package ru.dbotthepony.mc.otm.data.codec
|
||||
|
||||
import com.google.gson.JsonElement
|
||||
import com.mojang.datafixers.util.Pair
|
@ -1,4 +1,4 @@
|
||||
package ru.dbotthepony.mc.otm.data
|
||||
package ru.dbotthepony.mc.otm.data.codec
|
||||
|
||||
import com.google.common.collect.ImmutableList
|
||||
import com.mojang.datafixers.util.Pair
|
||||
@ -9,53 +9,6 @@ import ru.dbotthepony.mc.otm.core.stream
|
||||
import java.util.function.Predicate
|
||||
import java.util.stream.Stream
|
||||
|
||||
class CodecList<S : Any>(codecs: Stream<Codec<S>>) : Codec<S> {
|
||||
constructor(codecs: Collection<Codec<S>>) : this(codecs.stream())
|
||||
constructor(vararg codecs: Codec<S>) : this(codecs.stream() as Stream<Codec<S>>)
|
||||
|
||||
private val codecs = codecs.collect(ImmutableList.toImmutableList())
|
||||
|
||||
init {
|
||||
require(this.codecs.isNotEmpty()) { "No codecs provided" }
|
||||
}
|
||||
|
||||
override fun <T : Any> encode(input: S, ops: DynamicOps<T>, prefix: T): DataResult<T> {
|
||||
val results = ArrayList<DataResult<T>>(codecs.size)
|
||||
|
||||
for (codec in codecs) {
|
||||
val result = codec.encode(input, ops, prefix)
|
||||
|
||||
if (result.result().isPresent) {
|
||||
return result
|
||||
} else {
|
||||
results.add(result)
|
||||
}
|
||||
}
|
||||
|
||||
return DataResult.error {
|
||||
"None of codecs encoded the input:\n " + results.joinToString(";\n ") { it.error().get().message() }
|
||||
}
|
||||
}
|
||||
|
||||
override fun <T : Any> decode(ops: DynamicOps<T>, input: T): DataResult<Pair<S, T>> {
|
||||
val results = ArrayList<DataResult<Pair<S, T>>>(codecs.size)
|
||||
|
||||
for (codec in codecs) {
|
||||
val result = codec.decode(ops, input)
|
||||
|
||||
if (result.result().isPresent) {
|
||||
return result
|
||||
} else {
|
||||
results.add(result)
|
||||
}
|
||||
}
|
||||
|
||||
return DataResult.error {
|
||||
"None of codecs decoded the input:\n " + results.joinToString(";\n ") { it.error().get().message() }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class PredicatedCodecList<S : Any>(codecs: Stream<kotlin.Pair<Codec<S>, Predicate<S>>>) : Codec<S> {
|
||||
constructor(codecs: Collection<kotlin.Pair<Codec<S>, Predicate<S>>>) : this(codecs.stream())
|
||||
constructor(vararg codecs: kotlin.Pair<Codec<S>, Predicate<S>>) : this(codecs.stream() as Stream<kotlin.Pair<Codec<S>, Predicate<S>>>)
|
@ -1,4 +1,4 @@
|
||||
package ru.dbotthepony.mc.otm.data
|
||||
package ru.dbotthepony.mc.otm.data.codec
|
||||
|
||||
import com.mojang.serialization.DataResult
|
||||
import com.mojang.serialization.DynamicOps
|
@ -10,7 +10,7 @@ import net.minecraft.world.level.levelgen.heightproviders.HeightProvider
|
||||
import net.minecraft.world.level.levelgen.heightproviders.HeightProviderType
|
||||
import org.apache.logging.log4j.LogManager
|
||||
import ru.dbotthepony.mc.otm.core.nextNormalDouble
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.registry.MHeightProviders
|
||||
|
||||
/**
|
||||
|
@ -13,8 +13,8 @@ import net.minecraft.resources.ResourceLocation
|
||||
import net.minecraft.tags.TagKey
|
||||
import net.minecraft.world.item.Item
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.PredicatedCodecList
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.PredicatedCodecList
|
||||
import java.util.Optional
|
||||
import java.util.function.Predicate
|
||||
|
||||
|
@ -8,7 +8,7 @@ import net.minecraft.resources.ResourceLocation
|
||||
import net.minecraft.tags.TagKey
|
||||
import net.minecraft.world.item.Item
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import java.util.Optional
|
||||
|
||||
class InsertAction(
|
||||
|
@ -9,8 +9,8 @@ import net.minecraft.resources.ResourceLocation
|
||||
import net.minecraft.tags.TagKey
|
||||
import net.minecraft.world.item.Item
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.simpleCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.simpleCodec
|
||||
|
||||
class UpdateAction(
|
||||
id: Either<ResourceLocation, TagKey<Item>>,
|
||||
|
@ -2,7 +2,7 @@ package ru.dbotthepony.mc.otm.menu.input
|
||||
|
||||
import ru.dbotthepony.kommons.util.Delegate
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.menu.MatteryMenu
|
||||
import java.util.function.Supplier
|
||||
import kotlin.reflect.KMutableProperty0
|
||||
|
@ -21,8 +21,8 @@ import ru.dbotthepony.mc.otm.capability.matteryEnergy
|
||||
import ru.dbotthepony.mc.otm.core.collect.filterNotNull
|
||||
import ru.dbotthepony.mc.otm.core.collect.map
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.network.StreamCodecs
|
||||
import ru.dbotthepony.mc.otm.network.optional
|
||||
import ru.dbotthepony.mc.otm.network.wrap
|
||||
|
@ -14,7 +14,7 @@ import net.minecraft.world.item.crafting.*
|
||||
import net.minecraft.world.level.Level
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.network.StreamCodecs
|
||||
import ru.dbotthepony.mc.otm.network.streamCodec
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
|
@ -26,8 +26,8 @@ import net.minecraft.world.item.crafting.RecipeType
|
||||
import net.minecraft.world.level.Level
|
||||
import ru.dbotthepony.mc.otm.block.entity.decorative.PainterBlockEntity
|
||||
import ru.dbotthepony.mc.otm.core.get
|
||||
import ru.dbotthepony.mc.otm.data.PredicatedCodecList
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.PredicatedCodecList
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.network.MatteryStreamCodec
|
||||
import ru.dbotthepony.mc.otm.network.nullable
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
|
@ -24,7 +24,7 @@ import ru.dbotthepony.mc.otm.container.get
|
||||
import ru.dbotthepony.mc.otm.core.get
|
||||
import ru.dbotthepony.mc.otm.registry.MRecipes
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.network.StreamCodecs
|
||||
import ru.dbotthepony.mc.otm.network.streamCodec
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
|
@ -9,13 +9,12 @@ import net.minecraft.network.RegistryFriendlyByteBuf
|
||||
import net.minecraft.network.codec.StreamCodec
|
||||
import net.minecraft.util.StringRepresentable
|
||||
import net.neoforged.bus.api.IEventBus
|
||||
import net.neoforged.neoforge.fluids.FluidStack
|
||||
import net.neoforged.neoforge.fluids.SimpleFluidContent
|
||||
import ru.dbotthepony.mc.otm.capability.FlowDirection
|
||||
import ru.dbotthepony.mc.otm.capability.matter.PatternState
|
||||
import ru.dbotthepony.mc.otm.container.ItemFilter
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.item.tool.RedstoneInteractorItem
|
||||
import ru.dbotthepony.mc.otm.network.StreamCodecs
|
||||
import java.util.UUID
|
||||
|
@ -4,7 +4,7 @@ import net.minecraft.core.registries.Registries
|
||||
import net.minecraft.world.level.storage.loot.predicates.LootItemConditionType
|
||||
import net.neoforged.bus.api.IEventBus
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.data.SingletonCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.SingletonCodec
|
||||
import ru.dbotthepony.mc.otm.data.condition.ChanceWithPlaytimeCondition
|
||||
import ru.dbotthepony.mc.otm.data.condition.HasExoPackCondition
|
||||
import ru.dbotthepony.mc.otm.data.condition.ItemInInventoryCondition
|
||||
@ -15,11 +15,17 @@ import ru.dbotthepony.mc.otm.data.condition.ChanceCondition
|
||||
object MLootItemConditions {
|
||||
private val registry = MDeferredRegister(Registries.LOOT_CONDITION_TYPE, OverdriveThatMatters.MOD_ID)
|
||||
|
||||
val HAS_EXOPACK: LootItemConditionType by registry.register("has_exopack") { LootItemConditionType(SingletonCodec(HasExoPackCondition)) }
|
||||
val HAS_EXOPACK: LootItemConditionType by registry.register("has_exopack") { LootItemConditionType(
|
||||
SingletonCodec(HasExoPackCondition)
|
||||
) }
|
||||
val CHANCE_WITH_PLAYTIME: LootItemConditionType by registry.register("chance_with_playtime") { LootItemConditionType(ChanceWithPlaytimeCondition.CODEC) }
|
||||
val ITEM_IN_INVENTORY: LootItemConditionType by registry.register("item_in_inventory") { LootItemConditionType(ItemInInventoryCondition.CODEC) }
|
||||
val KILLED_BY_REAL_PLAYER: LootItemConditionType by registry.register("killed_by_real_player") { LootItemConditionType(SingletonCodec(KilledByRealPlayer)) }
|
||||
val KILLED_BY_REAL_PLAYER_OR_INDIRECTLY: LootItemConditionType by registry.register("killed_by_real_player_or_indirectly") { LootItemConditionType(SingletonCodec(KilledByRealPlayerOrIndirectly)) }
|
||||
val KILLED_BY_REAL_PLAYER: LootItemConditionType by registry.register("killed_by_real_player") { LootItemConditionType(
|
||||
SingletonCodec(KilledByRealPlayer)
|
||||
) }
|
||||
val KILLED_BY_REAL_PLAYER_OR_INDIRECTLY: LootItemConditionType by registry.register("killed_by_real_player_or_indirectly") { LootItemConditionType(
|
||||
SingletonCodec(KilledByRealPlayerOrIndirectly)
|
||||
) }
|
||||
val CHANCE: LootItemConditionType by registry.register("chance") { LootItemConditionType(ChanceCondition.CODEC) }
|
||||
|
||||
fun register(bus: IEventBus) {
|
||||
|
@ -7,7 +7,7 @@ import net.minecraft.resources.ResourceLocation
|
||||
import net.minecraft.server.level.ServerPlayer
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.core.ResourceLocation
|
||||
import ru.dbotthepony.mc.otm.data.minRange
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import java.util.*
|
||||
|
||||
object AndroidTravelUnderwater : MCriterionTrigger<AndroidTravelUnderwater.Instance>(ResourceLocation(OverdriveThatMatters.MOD_ID, "android_walk_underwater")) {
|
||||
|
@ -10,7 +10,7 @@ import net.minecraft.resources.ResourceLocation
|
||||
import net.minecraft.server.level.ServerPlayer
|
||||
import net.minecraft.world.damagesource.DamageSource
|
||||
import net.minecraft.world.entity.LivingEntity
|
||||
import ru.dbotthepony.mc.otm.data.DamagePredicateCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.DamagePredicateCodec
|
||||
import java.util.*
|
||||
|
||||
class HurtTrigger(id: ResourceLocation) : MCriterionTrigger<HurtTrigger.Instance>(id) {
|
||||
|
@ -14,7 +14,7 @@ import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.capability.MatteryPlayer
|
||||
import ru.dbotthepony.mc.otm.capability.matteryPlayer
|
||||
import ru.dbotthepony.mc.otm.core.ResourceLocation
|
||||
import ru.dbotthepony.mc.otm.data.SingletonCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.SingletonCodec
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
import java.util.Optional
|
||||
import java.util.function.Predicate
|
||||
|
@ -9,7 +9,7 @@ import ru.dbotthepony.mc.otm.block.entity.blackhole.BlackHoleBlockEntity
|
||||
import ru.dbotthepony.mc.otm.config.ServerConfig
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.core.math.nextDecimal
|
||||
import ru.dbotthepony.mc.otm.data.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
|
||||
object BlackHolePlacerFeature : Feature<BlackHolePlacerFeature.Config>(
|
||||
|
Loading…
Reference in New Issue
Block a user