Fix "isRigid" being the opposite of "optional" in research builder
This commit is contained in:
parent
fa22fb7cce
commit
734655f53b
@ -5,15 +5,8 @@ import net.minecraft.world.item.Items
|
||||
import net.minecraftforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.android.AndroidResearchDescriptions
|
||||
import ru.dbotthepony.mc.otm.android.AndroidResearchResult
|
||||
import ru.dbotthepony.mc.otm.android.AndroidResearchResults
|
||||
import ru.dbotthepony.mc.otm.android.AndroidResearchType
|
||||
import ru.dbotthepony.mc.otm.android.feature.EnderTeleporterFeature
|
||||
import ru.dbotthepony.mc.otm.android.feature.FallDampenersFeature
|
||||
import ru.dbotthepony.mc.otm.android.feature.ItemMagnetFeature
|
||||
import ru.dbotthepony.mc.otm.android.feature.JumpBoostFeature
|
||||
import ru.dbotthepony.mc.otm.android.feature.NanobotsArmorFeature
|
||||
import ru.dbotthepony.mc.otm.android.feature.ShockwaveFeature
|
||||
import ru.dbotthepony.mc.otm.client.render.ResearchIcons
|
||||
import ru.dbotthepony.mc.otm.core.TextComponent
|
||||
import ru.dbotthepony.mc.otm.core.TranslatableComponent
|
||||
@ -106,7 +99,7 @@ fun addResearchData(serializer: Consumer<AndroidResearchType>, lang: MatteryLang
|
||||
.addPrerequisite(OverdriveThatMatters.loc(MNames.NANOBOTS))
|
||||
.addFeatureResult(OverdriveThatMatters.loc(MNames.NANOBOTS_ARMOR))
|
||||
.withIcon(ResearchIcons.ICON_ARMOR)
|
||||
.addBlocker(OverdriveThatMatters.loc(MNames.ATTACK_BOOST_1), rigid = true)
|
||||
.addBlocker(OverdriveThatMatters.loc(MNames.ATTACK_BOOST_1), optional = true)
|
||||
.addItem(MItemTags.TRITANIUM_PLATES, 4)
|
||||
.addItem(MItemTags.COPPER_WIRES, 8)
|
||||
.build()
|
||||
@ -138,7 +131,7 @@ fun addResearchData(serializer: Consumer<AndroidResearchType>, lang: MatteryLang
|
||||
|
||||
if (i > 0) {
|
||||
research.addFeatureLevel(AndroidFeatures.LIMB_OVERCLOCKING)
|
||||
research.addPrerequisite(OverdriveThatMatters.loc(MNames.LIMB_OVERCLOCKING_LIST[i - 1]), rigid = true)
|
||||
research.addPrerequisite(OverdriveThatMatters.loc(MNames.LIMB_OVERCLOCKING_LIST[i - 1]), optional = true)
|
||||
research.addItem(MItemTags.GOLD_WIRES, i * 2)
|
||||
} else {
|
||||
research.addFeatureResult(AndroidFeatures.LIMB_OVERCLOCKING)
|
||||
@ -164,7 +157,7 @@ fun addResearchData(serializer: Consumer<AndroidResearchType>, lang: MatteryLang
|
||||
|
||||
if (i > 0) {
|
||||
research.addFeatureLevel(AndroidFeatures.ATTACK_BOOST)
|
||||
research.addPrerequisite(OverdriveThatMatters.loc(MNames.ATTACK_BOOST_LIST[i - 1]), rigid = true)
|
||||
research.addPrerequisite(OverdriveThatMatters.loc(MNames.ATTACK_BOOST_LIST[i - 1]), optional = true)
|
||||
} else {
|
||||
research.addFeatureResult(AndroidFeatures.ATTACK_BOOST)
|
||||
}
|
||||
@ -189,9 +182,9 @@ fun addResearchData(serializer: Consumer<AndroidResearchType>, lang: MatteryLang
|
||||
|
||||
if (i > 0) {
|
||||
research.addFeatureLevel(AndroidFeatures.NANOBOTS_REGENERATION)
|
||||
research.addPrerequisite(OverdriveThatMatters.loc(MNames.NANOBOTS_REGENERATION_LIST[i - 1]), rigid = true)
|
||||
research.addPrerequisite(OverdriveThatMatters.loc(MNames.NANOBOTS_REGENERATION_LIST[i - 1]), optional = true)
|
||||
} else {
|
||||
research.addPrerequisite(OverdriveThatMatters.loc(MNames.NANOBOTS), rigid = true)
|
||||
research.addPrerequisite(OverdriveThatMatters.loc(MNames.NANOBOTS), optional = true)
|
||||
research.addFeatureResult(AndroidFeatures.NANOBOTS_REGENERATION)
|
||||
}
|
||||
|
||||
|
@ -1,20 +1,13 @@
|
||||
package ru.dbotthepony.mc.otm.android
|
||||
|
||||
import com.google.common.collect.ImmutableList
|
||||
import com.google.gson.JsonArray
|
||||
import com.google.gson.JsonElement
|
||||
import com.google.gson.JsonObject
|
||||
import com.google.gson.JsonPrimitive
|
||||
import com.google.gson.JsonSyntaxException
|
||||
import com.google.gson.internal.bind.TypeAdapters
|
||||
import com.mojang.datafixers.util.Either
|
||||
import com.mojang.serialization.Codec
|
||||
import com.mojang.serialization.JsonOps
|
||||
import com.mojang.serialization.codecs.ListCodec
|
||||
import com.mojang.serialization.codecs.PairCodec
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder
|
||||
import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet
|
||||
import net.minecraft.network.FriendlyByteBuf
|
||||
import net.minecraft.network.chat.Component
|
||||
import net.minecraft.network.chat.ComponentContents
|
||||
import net.minecraft.network.chat.MutableComponent
|
||||
@ -23,7 +16,6 @@ import net.minecraft.resources.ResourceLocation
|
||||
import net.minecraft.tags.TagKey
|
||||
import net.minecraft.world.item.Item
|
||||
import net.minecraft.world.item.ItemStack
|
||||
import net.minecraft.world.item.Items
|
||||
import net.minecraft.world.item.crafting.Ingredient
|
||||
import net.minecraft.world.level.ItemLike
|
||||
import net.minecraftforge.registries.ForgeRegistries
|
||||
@ -32,19 +24,10 @@ import ru.dbotthepony.mc.otm.client.render.SpriteType
|
||||
import ru.dbotthepony.mc.otm.core.collect.ListSet
|
||||
import ru.dbotthepony.mc.otm.core.TranslatableComponent
|
||||
import ru.dbotthepony.mc.otm.core.isActuallyEmpty
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.core.set
|
||||
import ru.dbotthepony.mc.otm.core.collect.stream
|
||||
import ru.dbotthepony.mc.otm.core.fromJsonStrict
|
||||
import ru.dbotthepony.mc.otm.core.toJsonStrict
|
||||
import ru.dbotthepony.mc.otm.core.util.readJson
|
||||
import ru.dbotthepony.mc.otm.core.util.writeJson
|
||||
import ru.dbotthepony.mc.otm.data.ComponentCodec
|
||||
import ru.dbotthepony.mc.otm.data.IngredientCodec
|
||||
import ru.dbotthepony.mc.otm.data.JsonElementCodec
|
||||
import ru.dbotthepony.mc.otm.data.simpleCodec
|
||||
import ru.dbotthepony.mc.otm.isClient
|
||||
import java.util.LinkedList
|
||||
import java.util.Optional
|
||||
import java.util.function.Function
|
||||
import java.util.stream.Stream
|
||||
@ -518,14 +501,14 @@ class AndroidResearchType(
|
||||
* research tree render logic (yet).
|
||||
*/
|
||||
@JvmOverloads
|
||||
fun addPrerequisite(id: ResourceLocation, rigid: Boolean = false): Builder {
|
||||
prerequisites.add(Reference(id, rigid))
|
||||
fun addPrerequisite(id: ResourceLocation, optional: Boolean = true): Builder {
|
||||
prerequisites.add(Reference(id, optional))
|
||||
return this
|
||||
}
|
||||
|
||||
@JvmOverloads
|
||||
fun addBlocker(id: ResourceLocation, rigid: Boolean = false): Builder {
|
||||
blockers.add(Reference(id, rigid))
|
||||
fun addBlocker(id: ResourceLocation, optional: Boolean = true): Builder {
|
||||
blockers.add(Reference(id, optional))
|
||||
return this
|
||||
}
|
||||
|
||||
@ -533,8 +516,8 @@ class AndroidResearchType(
|
||||
* Please avoid having multiple prerequisites as case with more than 1 prerequisite does not have proper
|
||||
* research tree render logic (yet).
|
||||
*/
|
||||
fun addPrerequisite(type: AndroidResearchType, rigid: Boolean = true) = addPrerequisite(type.id, rigid)
|
||||
fun addBlocker(type: AndroidResearchType, rigid: Boolean = true) = addBlocker(type.id, rigid)
|
||||
fun addPrerequisite(type: AndroidResearchType, optional: Boolean = false) = addPrerequisite(type.id, optional)
|
||||
fun addBlocker(type: AndroidResearchType, optional: Boolean = false) = addBlocker(type.id, optional)
|
||||
|
||||
fun addResult(result: AndroidResearchResult): Builder {
|
||||
results.add(result)
|
||||
|
Loading…
Reference in New Issue
Block a user