Compare commits
5 Commits
5a5ef2cd68
...
f922df53be
Author | SHA1 | Date | |
---|---|---|---|
f922df53be | |||
fc675811be | |||
0d9be21cff | |||
122ca66e65 | |||
ca264e9292 |
@ -20,7 +20,6 @@ import net.neoforged.fml.common.EventBusSubscriber
|
||||
import net.neoforged.neoforge.client.model.generators.ModelFile
|
||||
import net.neoforged.neoforge.common.data.AdvancementProvider
|
||||
import net.neoforged.neoforge.common.data.DatapackBuiltinEntriesProvider
|
||||
import net.neoforged.neoforge.common.data.internal.NeoForgeAdvancementProvider
|
||||
import net.neoforged.neoforge.data.event.GatherDataEvent
|
||||
import net.neoforged.neoforge.registries.NeoForgeRegistries
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
@ -34,7 +33,6 @@ import ru.dbotthepony.mc.otm.datagen.blocks.MatteryBlockStateProvider
|
||||
import ru.dbotthepony.mc.otm.datagen.items.MatteryItemModelProvider
|
||||
import ru.dbotthepony.mc.otm.datagen.lang.AddEnglishLanguage
|
||||
import ru.dbotthepony.mc.otm.datagen.models.MatteryBlockModelProvider
|
||||
import ru.dbotthepony.mc.otm.registry.*
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.advancements.addAdvancements
|
||||
import ru.dbotthepony.mc.otm.datagen.advancements.addAndroidAdvancements
|
||||
@ -57,6 +55,7 @@ import ru.dbotthepony.mc.otm.datagen.tags.addSuspiciousTags
|
||||
import ru.dbotthepony.mc.otm.datagen.tags.addTags
|
||||
import ru.dbotthepony.mc.otm.datagen.textures.ColorizedSpritesProvider
|
||||
import ru.dbotthepony.mc.otm.matter.MatterDataProvider
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.objects.ColoredDecorativeBlock
|
||||
import ru.dbotthepony.mc.otm.registry.objects.DecorativeBlock
|
||||
import kotlin.properties.Delegates
|
||||
|
@ -16,8 +16,8 @@ import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.blocks.MatteryBlockStateProvider
|
||||
import ru.dbotthepony.mc.otm.datagen.items.MatteryItemModelProvider
|
||||
import ru.dbotthepony.mc.otm.datagen.models.MatteryBlockModelProvider
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MNames
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
import kotlin.properties.Delegates
|
||||
|
@ -7,7 +7,7 @@ import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.matter.MatterDataProvider
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
// general rule - anything plant or organic is much more complex than mineral
|
||||
// and anything mineral has much bigger matter value than complexity (just throw a lot of same molecules)
|
||||
|
@ -11,9 +11,9 @@ import ru.dbotthepony.mc.otm.client.render.ResearchIcons
|
||||
import ru.dbotthepony.mc.otm.core.TextComponent
|
||||
import ru.dbotthepony.mc.otm.core.TranslatableComponent
|
||||
import ru.dbotthepony.mc.otm.datagen.lang.MatteryLanguageProvider
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MNames
|
||||
import java.util.LinkedList
|
||||
import java.util.function.Consumer
|
||||
|
@ -4,7 +4,7 @@ import net.minecraft.sounds.SoundEvent
|
||||
import net.neoforged.neoforge.common.data.SoundDefinition
|
||||
import net.neoforged.neoforge.common.data.SoundDefinitionsProvider
|
||||
import net.neoforged.neoforge.data.event.GatherDataEvent
|
||||
import ru.dbotthepony.mc.otm.registry.MSoundEvents
|
||||
import ru.dbotthepony.mc.otm.registry.game.MSoundEvents
|
||||
|
||||
fun SoundDefinition.subtitle(value: SoundEvent): SoundDefinition {
|
||||
return subtitle("otm.sound." + value.location.path)
|
||||
@ -12,29 +12,35 @@ fun SoundDefinition.subtitle(value: SoundEvent): SoundDefinition {
|
||||
|
||||
class SoundDataProvider(event: GatherDataEvent) : SoundDefinitionsProvider(event.generator.packOutput, DataGen.MOD_ID, event.existingFileHelper) {
|
||||
override fun registerSounds() {
|
||||
add(MSoundEvents.PLASMA_WEAPON_OVERHEAT,
|
||||
add(
|
||||
MSoundEvents.PLASMA_WEAPON_OVERHEAT,
|
||||
definition().subtitle("otm.sound.plasma_weapon_overheat")
|
||||
.with(SoundDefinition.Sound.sound(modLocation("item/plasma_weapon_overheat"), SoundDefinition.SoundType.SOUND)))
|
||||
|
||||
add(MSoundEvents.PLAYER_BECOME_ANDROID,
|
||||
add(
|
||||
MSoundEvents.PLAYER_BECOME_ANDROID,
|
||||
definition().subtitle("otm.sound.player_become_android")
|
||||
.with(SoundDefinition.Sound.sound(modLocation("player_become_android"), SoundDefinition.SoundType.SOUND)))
|
||||
|
||||
add(MSoundEvents.RIFLE_SHOT,
|
||||
add(
|
||||
MSoundEvents.RIFLE_SHOT,
|
||||
definition().subtitle("otm.sound.rifle_shot")
|
||||
.with(SoundDefinition.Sound.sound(modLocation("item/rifle_shot"), SoundDefinition.SoundType.SOUND)))
|
||||
|
||||
simple(MSoundEvents.CARGO_CRATE_OPEN)
|
||||
|
||||
add(MSoundEvents.ANDROID_JUMP_BOOST,
|
||||
add(
|
||||
MSoundEvents.ANDROID_JUMP_BOOST,
|
||||
definition().subtitle("otm.sound.android.jump_boost")
|
||||
.with(SoundDefinition.Sound.sound(modLocation("android/jump_boost"), SoundDefinition.SoundType.SOUND)))
|
||||
|
||||
add(MSoundEvents.ANDROID_SHOCKWAVE,
|
||||
add(
|
||||
MSoundEvents.ANDROID_SHOCKWAVE,
|
||||
definition().subtitle("otm.sound.android.shockwave")
|
||||
.with(SoundDefinition.Sound.sound(modLocation("android/shockwave"), SoundDefinition.SoundType.SOUND)))
|
||||
|
||||
add(MSoundEvents.ANDROID_PROJ_PARRY,
|
||||
add(
|
||||
MSoundEvents.ANDROID_PROJ_PARRY,
|
||||
definition().subtitle("otm.sound.android.projectile_parry")
|
||||
.with(SoundDefinition.Sound.sound(modLocation("android/punch_projectile"), SoundDefinition.SoundType.SOUND))
|
||||
)
|
||||
|
@ -27,8 +27,8 @@ import net.neoforged.neoforge.registries.NeoForgeRegistries
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.world.EllipsoidPlacement
|
||||
import ru.dbotthepony.mc.otm.data.world.StandardDeviationHeightProvider
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MWorldGenFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.data.MWorldGenFeatures
|
||||
import ru.dbotthepony.mc.otm.worldgen.feature.BlackHolePlacerFeature
|
||||
|
||||
private object ConfiguredFeatures {
|
||||
@ -63,7 +63,8 @@ fun registerConfiguredFeatures(context: BootstrapContext<ConfiguredFeature<*, *>
|
||||
context.register(ConfiguredFeatures.DILITHIUM, ConfiguredFeature(Feature.ORE, OreConfiguration(target, 3)))
|
||||
}
|
||||
|
||||
context.register(ConfiguredFeatures.BLACK_HOLE, ConfiguredFeature(MWorldGenFeatures.BLACK_HOLE_PLACER,
|
||||
context.register(ConfiguredFeatures.BLACK_HOLE, ConfiguredFeature(
|
||||
MWorldGenFeatures.BLACK_HOLE_PLACER,
|
||||
BlackHolePlacerFeature.Config(0.001f, Decimal("0.25"), Decimal(1))))
|
||||
}
|
||||
|
||||
|
@ -11,7 +11,7 @@ import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.lang.MatteryLanguageProvider
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
import ru.dbotthepony.mc.otm.triggers.BlackHoleTrigger
|
||||
import ru.dbotthepony.mc.otm.triggers.NailedEntityTrigger
|
||||
@ -330,10 +330,12 @@ fun addAdvancements(serializer: Consumer<AdvancementHolder>, lang: MatteryLangua
|
||||
}
|
||||
.save(serializer, modLocation("regular/industrial_glass"))
|
||||
|
||||
CraftEntry(MItems.FLUID_TANK, "Liquid Packaging",
|
||||
CraftEntry(
|
||||
MItems.FLUID_TANK, "Liquid Packaging",
|
||||
russianName = "Упаковка для жидкостей").make(serializer, glass, translation)
|
||||
|
||||
CraftEntry(MItems.FLUID_CAPSULE, "Liquid Canning",
|
||||
CraftEntry(
|
||||
MItems.FLUID_CAPSULE, "Liquid Canning",
|
||||
russianName = "Банка для жидкостей").make(serializer, glass, translation)
|
||||
|
||||
AdvancementBuilder()
|
||||
@ -595,6 +597,7 @@ fun addAdvancements(serializer: Consumer<AdvancementHolder>, lang: MatteryLangua
|
||||
.addCriterion("damage", NailedEntityTrigger.Instance().criterion())
|
||||
.save(serializer, modLocation("regular/explosive_hammer"))
|
||||
|
||||
CraftEntry(MItems.ESSENCE_STORAGE.values, "Did not Forget to Remember",
|
||||
russianName = "Не забыл запомнить").make(serializer, essenceCapsule, translation)
|
||||
CraftEntry(
|
||||
MItems.ESSENCE_STORAGE.values, "Did not Forget to Remember",
|
||||
russianName = "Не забыл запомнить").make(serializer, essenceCapsule, translation)
|
||||
}
|
||||
|
@ -13,8 +13,8 @@ import net.minecraft.world.item.Items
|
||||
import ru.dbotthepony.mc.otm.datagen.DataGen
|
||||
import ru.dbotthepony.mc.otm.datagen.lang.MatteryLanguageProvider
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MNames
|
||||
import ru.dbotthepony.mc.otm.triggers.AndroidBatteryTrigger
|
||||
import ru.dbotthepony.mc.otm.triggers.AndroidResearchTrigger
|
||||
|
@ -7,7 +7,7 @@ import net.minecraft.world.item.ItemStack
|
||||
import net.minecraft.world.item.Items
|
||||
import ru.dbotthepony.mc.otm.datagen.lang.MatteryLanguageProvider
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.triggers.ExopackBatterySlotTrigger
|
||||
import ru.dbotthepony.mc.otm.triggers.ExopackGainedCraftingTrigger
|
||||
import ru.dbotthepony.mc.otm.triggers.ExopackGainedEnderAccessTrigger
|
||||
|
@ -12,7 +12,7 @@ import ru.dbotthepony.mc.otm.core.key
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.lang.MatteryLanguageProvider
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.triggers.TakeItemOutOfReplicatorTrigger
|
||||
import java.util.function.Consumer
|
||||
|
||||
@ -103,33 +103,45 @@ fun addMachineAdvancements(serializer: Consumer<AdvancementHolder>, lang: Matter
|
||||
.requirements(AdvancementRequirements.Strategy.OR)
|
||||
.save(serializer, modLocation("machines/plate_press"))
|
||||
|
||||
CraftEntry(MItems.ENERGY_SERVO.values, "Power Goes In, Powered Things Go Out",
|
||||
CraftEntry(
|
||||
MItems.ENERGY_SERVO.values, "Power Goes In, Powered Things Go Out",
|
||||
russianName = "Энергия на вход, электроинструмент на выход").make(serializer, press, translation)
|
||||
|
||||
val scanner = CraftEntry(MItems.MATTER_SCANNER.values, "Scanning Things that Matter",
|
||||
val scanner = CraftEntry(
|
||||
MItems.MATTER_SCANNER.values, "Scanning Things that Matter",
|
||||
russianName = "Сканируем вещи которые материальны")
|
||||
val decomposer = CraftEntry(MItems.MATTER_DECOMPOSER.values, "Decaying the Atoms", "Keep your limbs outside of the working chamber at all times",
|
||||
val decomposer = CraftEntry(
|
||||
MItems.MATTER_DECOMPOSER.values, "Decaying the Atoms", "Keep your limbs outside of the working chamber at all times",
|
||||
russianName = "Разлагаем атомы", russianSuffix = "Во всех ситуациях держите свои конечности вне рабочей камеры")
|
||||
val panel = CraftEntry(MItems.MATTER_PANEL.values, "Indexing the Library",
|
||||
val panel = CraftEntry(
|
||||
MItems.MATTER_PANEL.values, "Indexing the Library",
|
||||
russianName = "Индексируем библиотеку")
|
||||
val replicator = CraftEntry(MItems.MATTER_REPLICATOR.values, "Cook with (Im)Perfection", "Now let's bake some perfect bread",
|
||||
val replicator = CraftEntry(
|
||||
MItems.MATTER_REPLICATOR.values, "Cook with (Im)Perfection", "Now let's bake some perfect bread",
|
||||
russianName = "Повар с (не) идеальностями", russianSuffix = "А теперь давайте выпечем немного идеального хлеба")
|
||||
val bottler = CraftEntry(MItems.MATTER_BOTTLER.values, "Transfusing Pure Matter", "For those who loved to play with water in their childhood",
|
||||
val bottler = CraftEntry(
|
||||
MItems.MATTER_BOTTLER.values, "Transfusing Pure Matter", "For those who loved to play with water in their childhood",
|
||||
russianName = "Переливаем чистую материю", russianSuffix = "Для тех, кто любил играться в воде в детстве")
|
||||
val recycler = CraftEntry(MItems.MATTER_RECYCLER.values, "Refine and Redefine", "This is what waste recycling should look like",
|
||||
val recycler = CraftEntry(
|
||||
MItems.MATTER_RECYCLER.values, "Refine and Redefine", "This is what waste recycling should look like",
|
||||
russianName = "Переработка и перегонка", russianSuffix = "Вот он, пик переработки отходов")
|
||||
val capacitor = CraftEntry(MItems.MATTER_CAPACITOR_BANK.values, "Modular Matter Tank",
|
||||
val capacitor = CraftEntry(
|
||||
MItems.MATTER_CAPACITOR_BANK.values, "Modular Matter Tank",
|
||||
russianName = "Модульный бак материи")
|
||||
|
||||
val counter = CraftEntry(MItems.ENERGY_COUNTER.values, "Visualize Power Burn",
|
||||
val counter = CraftEntry(
|
||||
MItems.ENERGY_COUNTER.values, "Visualize Power Burn",
|
||||
russianName = "Визуализация сжигания энергии")
|
||||
val battery = CraftEntry(MItems.BATTERY_BANK.values, "Batteries Not Included", "By all means avoid the urge to hammer incompatible batteries into the power bus.",
|
||||
val battery = CraftEntry(
|
||||
MItems.BATTERY_BANK.values, "Batteries Not Included", "By all means avoid the urge to hammer incompatible batteries into the power bus.",
|
||||
russianName = "Батарейки в комплект не входят", russianSuffix = "Пожалуйста, воздержитесь от вбивания кувалдой несовместимых батарей в энергетическую шину.")
|
||||
|
||||
val pattern = CraftEntry(MItems.PATTERN_STORAGE, "Digital Knowledge Library",
|
||||
val pattern = CraftEntry(
|
||||
MItems.PATTERN_STORAGE, "Digital Knowledge Library",
|
||||
russianName = "Цифровая библиотека знаний")
|
||||
|
||||
val reconstructor = CraftEntry(MItems.MATTER_RECONSTRUCTOR.values, "Flipping Hourglass",
|
||||
val reconstructor = CraftEntry(
|
||||
MItems.MATTER_RECONSTRUCTOR.values, "Flipping Hourglass",
|
||||
russianName = "Переворачиваем песочные часы")
|
||||
|
||||
decomposer.make(serializer, press, translation).also {
|
||||
@ -150,7 +162,8 @@ fun addMachineAdvancements(serializer: Consumer<AdvancementHolder>, lang: Matter
|
||||
},
|
||||
frameType = AdvancementType.GOAL
|
||||
)
|
||||
.addCriterion("replicate_something", TakeItemOutOfReplicatorTrigger.Instance(ItemPredicate.Builder.item().of(MItems.MATTER_DUST).build(), true).criterion())
|
||||
.addCriterion("replicate_something", TakeItemOutOfReplicatorTrigger.Instance(ItemPredicate.Builder.item().of(
|
||||
MItems.MATTER_DUST).build(), true).criterion())
|
||||
.save(serializer, modLocation("machines/replicate_something"))
|
||||
|
||||
AdvancementBuilder()
|
||||
@ -165,7 +178,8 @@ fun addMachineAdvancements(serializer: Consumer<AdvancementHolder>, lang: Matter
|
||||
russian("Наблюдайте неудачный результат репликации, где ваш заказ рассыпался в материальную труху")
|
||||
},
|
||||
)
|
||||
.addCriterion("replicate_failure", TakeItemOutOfReplicatorTrigger.Instance(ItemPredicate.Builder.item().of(MItems.MATTER_DUST).build()).criterion())
|
||||
.addCriterion("replicate_failure", TakeItemOutOfReplicatorTrigger.Instance(ItemPredicate.Builder.item().of(
|
||||
MItems.MATTER_DUST).build()).criterion())
|
||||
.save(serializer, modLocation("machines/replicate_failure"))
|
||||
}
|
||||
|
||||
@ -181,33 +195,39 @@ fun addMachineAdvancements(serializer: Consumer<AdvancementHolder>, lang: Matter
|
||||
battery.make(serializer, it, translation)
|
||||
}
|
||||
|
||||
val station = CraftEntry(MItems.ANDROID_STATION.values, "Android Home Page",
|
||||
val station = CraftEntry(
|
||||
MItems.ANDROID_STATION.values, "Android Home Page",
|
||||
russianName = "Домашняя страница андроидов",
|
||||
russianSuffix = "Только пользоваться этим устройством могут вёдра с болтами",
|
||||
englishSuffix = "Except only buckets of bolts can use this thing")
|
||||
|
||||
val charger = CraftEntry(MItems.ANDROID_CHARGER.values, "Android Home Router",
|
||||
val charger = CraftEntry(
|
||||
MItems.ANDROID_CHARGER.values, "Android Home Router",
|
||||
russianName = "Домашняя страница андроидов")
|
||||
|
||||
station.make(serializer, press, translation).also {
|
||||
charger.make(serializer, it, translation)
|
||||
}
|
||||
|
||||
CraftEntry(MItems.COBBLESTONE_GENERATOR.values, "Cobblestone: Infinity + 1",
|
||||
CraftEntry(
|
||||
MItems.COBBLESTONE_GENERATOR.values, "Cobblestone: Infinity + 1",
|
||||
russianName = "Булыжник: бесконечность + 1",
|
||||
russianSuffix = "Смотрите, чтоб он не просыпался во все сундуки",
|
||||
englishSuffix = "Watch for not to spill it over all your chests").make(serializer, press, translation)
|
||||
|
||||
CraftEntry(MItems.POWERED_FURNACE.values, "One Big Resistor",
|
||||
russianName = "Один большой резистор",
|
||||
russianSuffix = "Каждый элемент электрической цепи способен испускать свет и тепло, единожды.",
|
||||
englishSuffix = "Any electrical element can emit light and heat, once.")
|
||||
CraftEntry(
|
||||
MItems.POWERED_FURNACE.values, "One Big Resistor",
|
||||
russianName = "Один большой резистор",
|
||||
russianSuffix = "Каждый элемент электрической цепи способен испускать свет и тепло, единожды.",
|
||||
englishSuffix = "Any electrical element can emit light and heat, once.")
|
||||
.make(serializer, press, translation)
|
||||
.also {
|
||||
CraftEntry(MItems.POWERED_BLAST_FURNACE.values, "Big Microwave Oven",
|
||||
russianName = "Большая микроволновая печь").make(serializer, it, translation)
|
||||
CraftEntry(
|
||||
MItems.POWERED_BLAST_FURNACE.values, "Big Microwave Oven",
|
||||
russianName = "Большая микроволновая печь").make(serializer, it, translation)
|
||||
|
||||
CraftEntry(MItems.POWERED_SMOKER.values, "Small Microwave Oven",
|
||||
russianName = "Маленькая микроволновая печь").make(serializer, it, translation)
|
||||
CraftEntry(
|
||||
MItems.POWERED_SMOKER.values, "Small Microwave Oven",
|
||||
russianName = "Маленькая микроволновая печь").make(serializer, it, translation)
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,7 @@ import ru.dbotthepony.mc.otm.core.math.BlockRotationFreedom
|
||||
import ru.dbotthepony.mc.otm.core.math.yRotationBlockstateNorth
|
||||
import ru.dbotthepony.mc.otm.datagen.DataGen
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
|
||||
private fun nothingOrNumber(input: Int): String {
|
||||
if (input == 0)
|
||||
|
@ -1,7 +1,7 @@
|
||||
package ru.dbotthepony.mc.otm.datagen.blocks
|
||||
|
||||
import ru.dbotthepony.mc.otm.datagen.models.MatteryBlockModelProvider
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
|
||||
fun addBlockModels(provider: MatteryBlockModelProvider) {
|
||||
with(provider) {
|
||||
|
@ -16,7 +16,7 @@ import ru.dbotthepony.mc.otm.core.math.yRotationBlockstateNorth
|
||||
import ru.dbotthepony.mc.otm.core.math.yRotationBlockstateSouth
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MNames
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
import java.util.ArrayList
|
||||
|
@ -9,7 +9,7 @@ import ru.dbotthepony.mc.otm.core.math.BlockRotationFreedom
|
||||
import ru.dbotthepony.mc.otm.core.math.yRotationBlockstateNorth
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
|
||||
fun addComplexBlockStates(provider: MatteryBlockStateProvider) {
|
||||
for (block in MBlocks.DRIVE_VIEWER.values) {
|
||||
|
@ -3,7 +3,7 @@ package ru.dbotthepony.mc.otm.datagen.items
|
||||
import net.minecraft.world.item.DyeColor
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
||||
fun addItemModels(provider: MatteryItemModelProvider) {
|
||||
|
@ -2,6 +2,11 @@ package ru.dbotthepony.mc.otm.datagen.lang
|
||||
|
||||
import ru.dbotthepony.mc.otm.config.CablesConfig
|
||||
import ru.dbotthepony.mc.otm.registry.*
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MEntityTypes
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MSoundEvents
|
||||
|
||||
private fun decoratives(provider: MatteryLanguageProvider) {
|
||||
with(provider.englishColors) {
|
||||
@ -735,12 +740,12 @@ private fun items(provider: MatteryLanguageProvider) {
|
||||
add(MItems.MATTER_IO_PORT, "Matter IO Port")
|
||||
add(MItems.MATTER_TRANSFORM_MATRIX, "Matter Transformation Matrix")
|
||||
add(MItems.ENERGY_BUS, "Energy Bus")
|
||||
add(MItems.ELECTRIC_PARTS, "Electric Parts")
|
||||
add(MItems.ELECTRIC_PARTS, "Electric Parts")
|
||||
add(MItems.MACHINE_FRAME, "Machine Frame")
|
||||
add(MItems.TRITANIUM_PLATE, "Tritanium Plate")
|
||||
add(MItems.TRITANIUM_PLATE, "Tritanium Plate")
|
||||
add(MItems.IRON_PLATE, "Iron Plate")
|
||||
add(MItems.GOLD_PLATE, "Gold Plate")
|
||||
add(MItems.COPPER_WIRING, "Copper Wiring")
|
||||
add(MItems.COPPER_WIRING, "Copper Wiring")
|
||||
add(MItems.GOLD_WIRING, "Gold Wiring")
|
||||
add(MItems.PORTABLE_CONDENSATION_DRIVE_CASING, "Portable Condensation Drive Casing")
|
||||
add(MItems.PORTABLE_DENSE_CONDENSATION_DRIVE_CASING, "Portable Dense Condensation Drive Casing")
|
||||
|
@ -1,12 +1,12 @@
|
||||
package ru.dbotthepony.mc.otm.datagen.lang
|
||||
|
||||
import ru.dbotthepony.mc.otm.config.CablesConfig
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MEntityTypes
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MEntityTypes
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
import ru.dbotthepony.mc.otm.registry.MSoundEvents
|
||||
import ru.dbotthepony.mc.otm.registry.game.MSoundEvents
|
||||
|
||||
private const val HIGH_BLAST_RESISTANCE = "Высокая взрывоустойчивость"
|
||||
private const val HIGH_BLAST_RESISTANCE_DOOR = "Взрывоустойчивая дверь с засовом красного камня..."
|
||||
|
@ -4,7 +4,7 @@ import net.minecraft.world.item.Items
|
||||
import net.minecraft.world.level.storage.loot.entries.LootItem
|
||||
import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets
|
||||
import ru.dbotthepony.mc.otm.datagen.modLootTable
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addAdvancementLoot(lootTables: LootTables) {
|
||||
lootTables.builder(LootContextParamSets.ADVANCEMENT_ENTITY, modLootTable("research_all_android")) {
|
||||
|
@ -3,7 +3,7 @@ package ru.dbotthepony.mc.otm.datagen.loot
|
||||
import net.minecraft.world.level.block.state.properties.BlockStateProperties
|
||||
import net.minecraft.world.level.block.state.properties.DoubleBlockHalf
|
||||
import net.minecraft.world.level.storage.loot.predicates.ExplosionCondition
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
||||
fun addDecorativeLoot(lootTables: LootTables) {
|
||||
|
@ -21,7 +21,7 @@ import ru.dbotthepony.mc.otm.data.loot.LootPoolAppender
|
||||
import ru.dbotthepony.mc.otm.datagen.modLootTable
|
||||
import ru.dbotthepony.mc.otm.item.ProceduralBatteryItem
|
||||
import ru.dbotthepony.mc.otm.item.exopack.ProceduralExopackSlotUpgradeItem
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
@Suppress("FunctionName")
|
||||
fun LootTableIdCondition(location: String): LootItemCondition {
|
||||
|
@ -3,7 +3,7 @@ package ru.dbotthepony.mc.otm.datagen.loot
|
||||
import net.minecraft.world.item.Items
|
||||
import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets
|
||||
import ru.dbotthepony.mc.otm.datagen.modLootTable
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addChestLootTables(loot: LootTables) {
|
||||
loot.builder(LootContextParamSets.CHEST, modLootTable("food_box")) {
|
||||
|
@ -6,31 +6,19 @@ import net.minecraft.advancements.critereon.ItemPredicate
|
||||
import net.minecraft.advancements.critereon.ItemSubPredicates
|
||||
import net.minecraft.advancements.critereon.MinMaxBounds
|
||||
import net.minecraft.util.valueproviders.UniformInt
|
||||
import net.minecraft.world.item.Items
|
||||
import net.minecraft.world.item.enchantment.Enchantments
|
||||
import net.minecraft.world.level.ItemLike
|
||||
import net.minecraft.world.level.block.Block
|
||||
import net.minecraft.world.level.block.state.properties.BlockStateProperties
|
||||
import net.minecraft.world.level.block.state.properties.DoubleBlockHalf
|
||||
import net.minecraft.world.level.storage.loot.entries.AlternativesEntry
|
||||
import net.minecraft.world.level.storage.loot.entries.LootItem
|
||||
import net.minecraft.world.level.storage.loot.functions.ApplyBonusCount
|
||||
import net.minecraft.world.level.storage.loot.functions.SetItemCountFunction
|
||||
import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets
|
||||
import net.minecraft.world.level.storage.loot.predicates.ExplosionCondition
|
||||
import net.minecraft.world.level.storage.loot.predicates.MatchTool
|
||||
import net.minecraft.world.level.storage.loot.providers.number.UniformGenerator
|
||||
import ru.dbotthepony.mc.otm.core.lookupOrThrow
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.data.loot.Int2NumberProvider
|
||||
import ru.dbotthepony.mc.otm.data.world.UniformDecimal
|
||||
import ru.dbotthepony.mc.otm.datagen.modLootTable
|
||||
import ru.dbotthepony.mc.otm.item.ProceduralBatteryItem
|
||||
import ru.dbotthepony.mc.otm.item.exopack.ProceduralExopackSlotUpgradeItem
|
||||
import ru.dbotthepony.mc.otm.item.matter.MatterDustItem
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
private fun ore(lootTables: LootTables, ore: Block, clump: ItemLike, count: Int = 1) {
|
||||
lootTables.builder(ore) {
|
||||
|
@ -3,7 +3,7 @@ package ru.dbotthepony.mc.otm.datagen.loot
|
||||
import net.minecraft.world.level.block.state.properties.BlockStateProperties
|
||||
import net.minecraft.world.level.block.state.properties.DoubleBlockHalf
|
||||
import net.minecraft.world.level.storage.loot.predicates.ExplosionCondition
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
|
||||
fun addMachineLoot(lootTables: LootTables) {
|
||||
lootTables.block(MBlocks.PHANTOM_ATTRACTOR) {
|
||||
|
@ -8,7 +8,7 @@ import ru.dbotthepony.mc.otm.datagen.modLootTable
|
||||
import ru.dbotthepony.mc.otm.item.ProceduralBatteryItem
|
||||
import ru.dbotthepony.mc.otm.item.exopack.ProceduralExopackSlotUpgradeItem
|
||||
import ru.dbotthepony.mc.otm.item.matter.MatterDustItem
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addVaultLoot(lootTables: LootTables) {
|
||||
lootTables.builder(LootContextParamSets.VAULT, modLootTable("trials/matter_dust")) {
|
||||
|
@ -5,7 +5,7 @@ import net.minecraft.data.recipes.RecipeOutput
|
||||
import net.minecraft.tags.ItemTags
|
||||
import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addComponentRecipes(consumer: RecipeOutput) {
|
||||
// Обычный рецепт
|
||||
|
@ -11,7 +11,7 @@ import net.minecraft.world.level.ItemLike
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
private fun RecipeOutput.addRecyclingRecipe(inputs: Collection<ItemLike>, result: Item, name: String) {
|
||||
val inputStacks = inputs.map(::ItemStack)
|
||||
|
@ -12,9 +12,9 @@ import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.block.entity.MatteryBlockEntity
|
||||
import ru.dbotthepony.mc.otm.config.CablesConfig
|
||||
import ru.dbotthepony.mc.otm.core.ResourceLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
|
@ -9,9 +9,9 @@ import net.minecraft.world.level.ItemLike
|
||||
import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
||||
private fun stairs(base: ItemLike, result: ItemLike, consumer: RecipeOutput) {
|
||||
|
@ -4,7 +4,7 @@ import net.minecraft.data.recipes.RecipeOutput
|
||||
import net.minecraft.world.item.Items
|
||||
import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addMachineUpgradeRecipes(consumer: RecipeOutput) {
|
||||
MatteryRecipe(MItems.MachineUpgrades.Basic.BLANK, 4)
|
||||
|
@ -10,7 +10,7 @@ import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.recipe.MatterEntanglerRecipe
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import java.util.*
|
||||
|
||||
private fun pattern(
|
||||
|
@ -17,7 +17,7 @@ import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.recipe.PainterArmorDyeRecipe
|
||||
import ru.dbotthepony.mc.otm.recipe.PainterRecipe
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
||||
private val Item.recipeName get() = registryName!!.namespace + "/" + registryName!!.path
|
||||
|
@ -5,7 +5,7 @@ import net.minecraft.world.item.Items
|
||||
import net.minecraft.world.item.crafting.Ingredient
|
||||
import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addPlatePressRecipes(provider: MatteryRecipeProvider) {
|
||||
val baselineMetals = arrayOf("iron" to 0.2f, "silver" to 0.3f, "bronze" to 0.3f, "lead" to 0.3f, "constantan" to 0.4f, "brass" to 0.3f)
|
||||
|
@ -14,7 +14,7 @@ import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
||||
fun hammerRecipe(output: ItemLike, input: ItemLike, consumer: RecipeOutput) {
|
||||
|
@ -5,7 +5,7 @@ import net.minecraft.data.recipes.RecipeOutput
|
||||
import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.recipe.UpgradeRecipe
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addStorageItemRecipes(consumer: RecipeOutput) {
|
||||
// простые батарейки
|
||||
|
@ -9,7 +9,7 @@ import net.minecraft.world.item.crafting.Ingredient
|
||||
import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.core.registryName
|
||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addSuspiciousRecipes(consumer: RecipeOutput) {
|
||||
for (item in MItems.SUSPICIOUS_FOODS.ITEMS) {
|
||||
|
@ -4,7 +4,7 @@ import net.minecraft.data.recipes.RecipeCategory
|
||||
import net.minecraft.data.recipes.RecipeOutput
|
||||
import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addToolsRecipes(consumer: RecipeOutput) {
|
||||
MatteryRecipe(MItems.ENERGY_SWORD, category = RecipeCategory.COMBAT)
|
||||
|
@ -5,9 +5,9 @@ import net.minecraft.tags.ItemTags
|
||||
import net.minecraft.world.item.Items
|
||||
import net.minecraft.world.level.block.Blocks
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockTags
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
||||
fun addConstructionTags(tagsProvider: TagsProvider) {
|
||||
|
@ -1,6 +1,6 @@
|
||||
package ru.dbotthepony.mc.otm.datagen.tags
|
||||
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
||||
fun addDyeTags(tagsProvider: TagsProvider) {
|
||||
|
@ -3,7 +3,7 @@ package ru.dbotthepony.mc.otm.datagen.tags
|
||||
import net.minecraft.tags.ItemTags
|
||||
import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addEquipmentTags(tagsProvider: TagsProvider) {
|
||||
|
||||
|
@ -2,7 +2,7 @@ package ru.dbotthepony.mc.otm.datagen.tags
|
||||
|
||||
import net.minecraft.world.item.Tiers
|
||||
import net.minecraft.world.level.block.Block
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
||||
fun addMineableTags(tagsProvider: TagsProvider) {
|
||||
|
@ -1,9 +1,8 @@
|
||||
package ru.dbotthepony.mc.otm.datagen.tags
|
||||
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockTags
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addResourceTags(tagsProvider: TagsProvider) {
|
||||
tagsProvider.circuits.add("basic", MItems.BASIC_CONTROL_CIRCUIT)
|
||||
|
@ -3,7 +3,7 @@ package ru.dbotthepony.mc.otm.datagen.tags
|
||||
import net.minecraft.tags.ItemTags
|
||||
import net.minecraft.world.entity.EntityType
|
||||
import net.minecraft.world.item.Items
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
fun addSuspiciousTags(tagsProvider: TagsProvider) {
|
||||
tagsProvider.entityTypes.Appender(MItems.SUSPICIOUS_FOODS.OWNED_MEAT_CONSUMERS)
|
||||
|
@ -4,16 +4,13 @@ import net.minecraft.tags.BlockTags
|
||||
import net.minecraft.tags.ItemTags
|
||||
import net.minecraft.world.effect.MobEffects
|
||||
import net.minecraft.world.item.Items
|
||||
import net.minecraft.world.item.Tiers
|
||||
import net.minecraft.world.level.block.Block
|
||||
import net.minecraft.world.level.block.Blocks
|
||||
import net.neoforged.neoforge.common.Tags
|
||||
import ru.dbotthepony.mc.otm.core.ResourceLocation
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockTags
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.MFluids
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MFluids
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
|
||||
fun addTags(tagsProvider: TagsProvider) {
|
||||
|
@ -8,7 +8,7 @@ import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
import ru.dbotthepony.mc.otm.capability.IMatteryPlayer;
|
||||
import ru.dbotthepony.mc.otm.registry.MSoundEvents;
|
||||
import ru.dbotthepony.mc.otm.registry.game.MSoundEvents;
|
||||
|
||||
@Mixin(AbstractHurtingProjectile.class)
|
||||
public class MixinAbstractHurtingProjectile {
|
||||
|
@ -6,7 +6,7 @@ import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks;
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks;
|
||||
|
||||
@Mixin(AnvilBlock.class)
|
||||
@SuppressWarnings("unused")
|
||||
|
@ -13,7 +13,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
import ru.dbotthepony.mc.otm.capability.IMatteryPlayer;
|
||||
import ru.dbotthepony.mc.otm.config.ServerConfig;
|
||||
import ru.dbotthepony.mc.otm.core.util.ExperienceUtilsKt;
|
||||
import ru.dbotthepony.mc.otm.registry.MItems;
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems;
|
||||
|
||||
@SuppressWarnings("ConstantConditions")
|
||||
@Mixin(LivingEntity.class)
|
||||
|
@ -64,6 +64,27 @@ import ru.dbotthepony.mc.otm.matter.IMatterFunction
|
||||
import ru.dbotthepony.mc.otm.matter.MatterManager
|
||||
import ru.dbotthepony.mc.otm.network.*
|
||||
import ru.dbotthepony.mc.otm.registry.*
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.MArmorMaterials
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockColors
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MCreativeTabs
|
||||
import ru.dbotthepony.mc.otm.registry.game.MDataComponentTypes
|
||||
import ru.dbotthepony.mc.otm.registry.game.MEntityTypes
|
||||
import ru.dbotthepony.mc.otm.registry.game.MFluids
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MMenus
|
||||
import ru.dbotthepony.mc.otm.registry.game.MRecipes
|
||||
import ru.dbotthepony.mc.otm.registry.game.MSoundEvents
|
||||
import ru.dbotthepony.mc.otm.registry.game.MStats
|
||||
import ru.dbotthepony.mc.otm.registry.data.LootModifiers
|
||||
import ru.dbotthepony.mc.otm.registry.data.MHeightProviders
|
||||
import ru.dbotthepony.mc.otm.registry.data.MItemFunctionTypes
|
||||
import ru.dbotthepony.mc.otm.registry.data.MLootItemConditions
|
||||
import ru.dbotthepony.mc.otm.registry.data.MLootNumberProviders
|
||||
import ru.dbotthepony.mc.otm.registry.data.MPlacementModifiers
|
||||
import ru.dbotthepony.mc.otm.registry.data.MWorldGenFeatures
|
||||
import ru.dbotthepony.mc.otm.server.MCommands
|
||||
import ru.dbotthepony.mc.otm.storage.StorageStack
|
||||
import ru.dbotthepony.mc.otm.triggers.KillAsAndroidTrigger
|
||||
@ -102,21 +123,21 @@ object OverdriveThatMatters {
|
||||
MPlacementModifiers.register(MOD_BUS)
|
||||
MLootNumberProviders.register(MOD_BUS)
|
||||
|
||||
StorageStack.Companion.register(MOD_BUS)
|
||||
MatteryChestMenu.Companion.register(MOD_BUS)
|
||||
StorageStack.register(MOD_BUS)
|
||||
MatteryChestMenu.register(MOD_BUS)
|
||||
|
||||
MCreativeTabs.initialize(MOD_BUS)
|
||||
|
||||
MOD_BUS.addListener(::registerNetworkPackets)
|
||||
|
||||
DecimalProvider.Companion.register(MOD_BUS)
|
||||
AndroidResearchDescription.Companion.register(MOD_BUS)
|
||||
DecimalProvider.register(MOD_BUS)
|
||||
AndroidResearchDescription.register(MOD_BUS)
|
||||
AndroidResearchDescriptions.register(MOD_BUS)
|
||||
AndroidResearchResult.Companion.register(MOD_BUS)
|
||||
AndroidResearchResult.register(MOD_BUS)
|
||||
AndroidResearchResults.register(MOD_BUS)
|
||||
|
||||
AbstractRegistryAction.Companion.register(MOD_BUS)
|
||||
IMatterFunction.Companion.register(MOD_BUS)
|
||||
AbstractRegistryAction.register(MOD_BUS)
|
||||
IMatterFunction.register(MOD_BUS)
|
||||
|
||||
MRegistry.initialize(MOD_BUS)
|
||||
MatterManager.initialize(MOD_BUS)
|
||||
|
@ -7,7 +7,7 @@ import net.minecraft.resources.ResourceLocation
|
||||
import net.neoforged.bus.api.IEventBus
|
||||
import org.apache.logging.log4j.LogManager
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.MDeferredRegister
|
||||
import ru.dbotthepony.mc.otm.registry.MRegistry
|
||||
import ru.dbotthepony.mc.otm.registry.RegistryDelegate
|
||||
|
@ -6,8 +6,7 @@ import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.android.AndroidFeature
|
||||
import ru.dbotthepony.mc.otm.capability.MatteryPlayer
|
||||
import ru.dbotthepony.mc.otm.core.ResourceLocation
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import java.util.*
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
|
||||
class AttackBoostFeature(android: MatteryPlayer) : AndroidFeature(AndroidFeatures.ATTACK_BOOST, android) {
|
||||
override fun applyModifiers() {
|
||||
|
@ -50,7 +50,7 @@ import ru.dbotthepony.mc.otm.core.math.rotateYDegrees
|
||||
import ru.dbotthepony.mc.otm.core.math.shortestDistanceBetween
|
||||
import ru.dbotthepony.mc.otm.core.math.times
|
||||
import ru.dbotthepony.mc.otm.milliTime
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.triggers.EnderTeleporterFallDeathTrigger
|
||||
import java.util.*
|
||||
import kotlin.math.sin
|
||||
|
@ -6,7 +6,7 @@ import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.android.AndroidFeature
|
||||
import ru.dbotthepony.mc.otm.capability.MatteryPlayer
|
||||
import ru.dbotthepony.mc.otm.core.ResourceLocation
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
|
||||
class ExtendedReachFeature(android: MatteryPlayer) : AndroidFeature(AndroidFeatures.EXTENDED_REACH, android) {
|
||||
override fun applyModifiers() {
|
||||
|
@ -6,7 +6,7 @@ import ru.dbotthepony.mc.otm.android.AndroidFeature
|
||||
import ru.dbotthepony.mc.otm.capability.MatteryPlayer
|
||||
import ru.dbotthepony.mc.otm.config.AndroidConfig
|
||||
import ru.dbotthepony.mc.otm.core.isFall
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.triggers.FallDampenersSaveTrigger
|
||||
|
||||
class FallDampenersFeature(capability: MatteryPlayer) : AndroidFeature(AndroidFeatures.FALL_DAMPENERS, capability) {
|
||||
|
@ -25,7 +25,7 @@ import ru.dbotthepony.mc.otm.core.math.minus
|
||||
import ru.dbotthepony.mc.otm.core.math.plus
|
||||
import ru.dbotthepony.mc.otm.core.position
|
||||
import ru.dbotthepony.mc.otm.core.math.times
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import java.util.UUID
|
||||
import java.util.WeakHashMap
|
||||
import java.util.function.Predicate
|
||||
|
@ -17,8 +17,8 @@ import ru.dbotthepony.mc.otm.core.math.Vector
|
||||
import ru.dbotthepony.mc.otm.core.math.plus
|
||||
import ru.dbotthepony.mc.otm.network.SmokeParticlesPacket
|
||||
import ru.dbotthepony.mc.otm.network.TriggerJumpBoostPacket
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.MSoundEvents
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.MSoundEvents
|
||||
|
||||
class JumpBoostFeature(capability: MatteryPlayer) : AndroidSwitchableFeature(AndroidFeatures.JUMP_BOOST, capability) {
|
||||
private var tickCooldownClient = false
|
||||
|
@ -9,8 +9,7 @@ import ru.dbotthepony.mc.otm.android.AndroidFeature
|
||||
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.registry.AndroidFeatures
|
||||
import java.util.*
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
|
||||
class LimbOverclockingFeature(android: MatteryPlayer) : AndroidFeature(AndroidFeatures.LIMB_OVERCLOCKING, android) {
|
||||
override fun applyModifiers() {
|
||||
|
@ -12,7 +12,7 @@ import ru.dbotthepony.mc.otm.capability.MatteryPlayer
|
||||
import ru.dbotthepony.mc.otm.capability.energy.extractEnergyExact
|
||||
import ru.dbotthepony.mc.otm.core.isBypassArmor
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.StatNames
|
||||
import ru.dbotthepony.mc.otm.core.nbt.set
|
||||
import ru.dbotthepony.mc.otm.onceServer
|
||||
|
@ -8,7 +8,7 @@ import net.neoforged.neoforge.event.entity.living.LivingIncomingDamageEvent
|
||||
import ru.dbotthepony.mc.otm.config.AndroidConfig
|
||||
import ru.dbotthepony.mc.otm.android.AndroidFeature
|
||||
import ru.dbotthepony.mc.otm.capability.MatteryPlayer
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.StatNames
|
||||
import ru.dbotthepony.mc.otm.core.nbt.set
|
||||
import kotlin.math.roundToInt
|
||||
|
@ -9,7 +9,7 @@ import ru.dbotthepony.mc.otm.capability.energy.extractEnergyExact
|
||||
import ru.dbotthepony.mc.otm.client.render.MGUIGraphics
|
||||
import ru.dbotthepony.mc.otm.client.render.ResearchIcons
|
||||
import ru.dbotthepony.mc.otm.config.AndroidConfig
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
|
||||
class NightVisionFeature(android: MatteryPlayer) : AndroidSwitchableFeature(AndroidFeatures.NIGHT_VISION, android) {
|
||||
override val allowToSwitchByPlayerWhileSpectator: Boolean
|
||||
|
@ -1,19 +1,15 @@
|
||||
package ru.dbotthepony.mc.otm.android.feature
|
||||
|
||||
import it.unimi.dsi.fastutil.objects.ReferenceArraySet
|
||||
import net.minecraft.network.FriendlyByteBuf
|
||||
import net.minecraft.network.protocol.common.custom.CustomPacketPayload
|
||||
import net.minecraft.server.level.ServerPlayer
|
||||
import net.minecraft.sounds.SoundSource
|
||||
import net.minecraft.world.entity.Entity
|
||||
import net.minecraft.world.entity.LivingEntity
|
||||
import net.minecraft.world.entity.monster.warden.Warden
|
||||
import net.neoforged.neoforge.network.PacketDistributor
|
||||
import net.neoforged.neoforge.network.handling.IPayloadContext
|
||||
import ru.dbotthepony.mc.otm.android.AndroidSwitchableFeature
|
||||
import ru.dbotthepony.mc.otm.capability.MatteryPlayer
|
||||
import ru.dbotthepony.mc.otm.capability.energy.extractEnergyExact
|
||||
import ru.dbotthepony.mc.otm.capability.matteryPlayer
|
||||
import ru.dbotthepony.mc.otm.client.render.MGUIGraphics
|
||||
import ru.dbotthepony.mc.otm.client.render.ResearchIcons
|
||||
import ru.dbotthepony.mc.otm.config.AndroidConfig
|
||||
@ -30,9 +26,9 @@ import ru.dbotthepony.mc.otm.core.math.times
|
||||
import ru.dbotthepony.mc.otm.core.position
|
||||
import ru.dbotthepony.mc.otm.network.ShockwaveEffectPacket
|
||||
import ru.dbotthepony.mc.otm.network.TriggerShockwavePacket
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.MDamageTypes
|
||||
import ru.dbotthepony.mc.otm.registry.MSoundEvents
|
||||
import ru.dbotthepony.mc.otm.registry.game.MSoundEvents
|
||||
import ru.dbotthepony.mc.otm.registry.MatteryDamageSource
|
||||
import ru.dbotthepony.mc.otm.triggers.ShockwaveDamageMobTrigger
|
||||
import ru.dbotthepony.mc.otm.triggers.ShockwaveTrigger
|
||||
|
@ -9,7 +9,7 @@ import ru.dbotthepony.mc.otm.client.render.ResearchIcons
|
||||
import ru.dbotthepony.kommons.math.RGBAColor
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.core.ResourceLocation
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
|
||||
class StepAssistFeature(android: MatteryPlayer) : AndroidSwitchableFeature(AndroidFeatures.STEP_ASSIST, android) {
|
||||
override fun applyModifiers() {
|
||||
|
@ -10,7 +10,7 @@ import ru.dbotthepony.mc.otm.config.AndroidConfig
|
||||
import ru.dbotthepony.kommons.math.RGBAColor
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.core.ResourceLocation
|
||||
import ru.dbotthepony.mc.otm.registry.AndroidFeatures
|
||||
import ru.dbotthepony.mc.otm.registry.game.AndroidFeatures
|
||||
|
||||
class SwimBoostersFeature(android: MatteryPlayer) : AndroidSwitchableFeature(AndroidFeatures.SWIM_BOOSTERS, android) {
|
||||
override fun applyModifiers() {
|
||||
|
@ -15,7 +15,7 @@ import net.minecraft.world.level.material.PushReaction
|
||||
import net.minecraft.world.phys.shapes.CollisionContext
|
||||
import net.minecraft.world.phys.shapes.VoxelShape
|
||||
import ru.dbotthepony.mc.otm.block.entity.blackhole.BlackHoleBlockEntity
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.shapes.BlockShapes
|
||||
|
||||
class BlackHoleBlock :
|
||||
|
@ -26,7 +26,7 @@ import ru.dbotthepony.mc.otm.core.math.BlockRotationFreedom
|
||||
import ru.dbotthepony.mc.otm.core.math.blockRotation
|
||||
import ru.dbotthepony.mc.otm.core.math.plus
|
||||
import ru.dbotthepony.mc.otm.once
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
|
||||
private val FACING_FULL = BlockRotationFreedom.DIRECTIONAL.property
|
||||
|
||||
|
@ -1,7 +1,6 @@
|
||||
package ru.dbotthepony.mc.otm.block.entity
|
||||
|
||||
import net.minecraft.core.BlockPos
|
||||
import net.minecraft.core.Direction
|
||||
import net.minecraft.world.level.Level
|
||||
import net.minecraft.world.level.block.Block
|
||||
import net.minecraft.world.level.block.state.BlockState
|
||||
@ -12,7 +11,7 @@ import ru.dbotthepony.mc.otm.graph.matter.MatterNode
|
||||
import ru.dbotthepony.mc.otm.graph.storage.StorageGraph
|
||||
import ru.dbotthepony.mc.otm.graph.storage.StorageNode
|
||||
import ru.dbotthepony.mc.otm.once
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class MatterCableBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) : MatteryBlockEntity(MBlockEntities.MATTER_CABLE, p_155229_, p_155230_) {
|
||||
val matterNode = object : MatterNode() {
|
||||
|
@ -17,7 +17,7 @@ import net.neoforged.neoforge.fluids.capability.IFluidHandler
|
||||
import ru.dbotthepony.mc.otm.block.INeighbourChangeListener
|
||||
import ru.dbotthepony.mc.otm.block.entity.tech.EssenceStorageBlockEntity
|
||||
import ru.dbotthepony.mc.otm.core.math.plus
|
||||
import ru.dbotthepony.mc.otm.registry.MFluids
|
||||
import ru.dbotthepony.mc.otm.registry.game.MFluids
|
||||
import java.util.function.DoubleSupplier
|
||||
|
||||
class ExperienceStorage(val maxExperience: DoubleSupplier = DoubleSupplier { Double.POSITIVE_INFINITY }) : IFluidHandler, INBTSerializable<DoubleTag?>, INeighbourChangeListener {
|
||||
|
@ -55,7 +55,7 @@ import ru.dbotthepony.mc.otm.core.util.countingLazy
|
||||
import ru.dbotthepony.mc.otm.network.BlockEntitySyncPacket
|
||||
import ru.dbotthepony.mc.otm.network.syncher.SynchableGroup
|
||||
import ru.dbotthepony.mc.otm.onceServer
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import ru.dbotthepony.mc.otm.sometimeServer
|
||||
import java.lang.ref.WeakReference
|
||||
import java.util.*
|
||||
|
@ -8,8 +8,8 @@ import net.minecraft.world.level.block.entity.HopperBlockEntity
|
||||
import net.minecraft.world.level.block.state.BlockState
|
||||
import ru.dbotthepony.mc.otm.core.multiblock.multiblockEntity
|
||||
import ru.dbotthepony.mc.otm.core.multiblock.shapedMultiblock
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
|
||||
class MultiblockTestBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryBlockEntity(MBlockEntities.MULTIBLOCK_TEST, blockPos, blockState) {
|
||||
val config = CONFIG.create(blockPos)
|
||||
|
@ -34,8 +34,8 @@ import ru.dbotthepony.mc.otm.core.getExplosionResistance
|
||||
import ru.dbotthepony.mc.otm.core.gracefulBlockBreak
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.core.math.plus
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import ru.dbotthepony.mc.otm.core.math.getSphericalBlockPositions
|
||||
import ru.dbotthepony.mc.otm.core.math.times
|
||||
import ru.dbotthepony.mc.otm.core.nbt.map
|
||||
|
@ -1,12 +1,10 @@
|
||||
package ru.dbotthepony.mc.otm.block.entity.blackhole
|
||||
|
||||
import com.mojang.serialization.Codec
|
||||
import it.unimi.dsi.fastutil.objects.ObjectArrayList
|
||||
import it.unimi.dsi.fastutil.objects.ObjectArraySet
|
||||
import it.unimi.dsi.fastutil.objects.ObjectIterators
|
||||
import net.minecraft.core.BlockPos
|
||||
import net.minecraft.network.chat.Component
|
||||
import net.minecraft.util.StringRepresentable
|
||||
import net.minecraft.world.entity.player.Inventory
|
||||
import net.minecraft.world.entity.player.Player
|
||||
import net.minecraft.world.inventory.AbstractContainerMenu
|
||||
@ -22,7 +20,6 @@ import ru.dbotthepony.mc.otm.block.entity.tech.MatterHatchBlockEntity
|
||||
import ru.dbotthepony.mc.otm.capability.FlowDirection
|
||||
import ru.dbotthepony.mc.otm.capability.MatteryCapability
|
||||
import ru.dbotthepony.mc.otm.capability.energy.CombinedProfiledEnergyStorage
|
||||
import ru.dbotthepony.mc.otm.capability.energy.receiveEnergy
|
||||
import ru.dbotthepony.mc.otm.capability.matter.CombinedProfiledMatterStorage
|
||||
import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.config.ServerConfig
|
||||
@ -31,22 +28,20 @@ import ru.dbotthepony.mc.otm.core.TranslatableComponent
|
||||
import ru.dbotthepony.mc.otm.core.collect.map
|
||||
import ru.dbotthepony.mc.otm.core.multiblock.ShapedMultiblock
|
||||
import ru.dbotthepony.mc.otm.core.getBlockStateNow
|
||||
import ru.dbotthepony.mc.otm.core.getValue
|
||||
import ru.dbotthepony.mc.otm.core.immutableList
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.core.math.plus
|
||||
import ru.dbotthepony.mc.otm.core.math.times
|
||||
import ru.dbotthepony.mc.otm.core.multiblock.BlockEntityTag
|
||||
import ru.dbotthepony.mc.otm.core.multiblock.Strategy
|
||||
import ru.dbotthepony.mc.otm.core.multiblock.shapedMultiblock
|
||||
import ru.dbotthepony.mc.otm.menu.tech.BlackHoleGeneratorMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockTags
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
import java.io.Closeable
|
||||
import kotlin.math.min
|
||||
|
||||
class BlackHoleGeneratorBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryDeviceBlockEntity(MBlockEntities.BLACK_HOLE_GENERATOR, blockPos, blockState) {
|
||||
class BlackHoleGeneratorBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryDeviceBlockEntity(
|
||||
MBlockEntities.BLACK_HOLE_GENERATOR, blockPos, blockState) {
|
||||
var multiblock: ShapedMultiblock? = null
|
||||
private set
|
||||
private var multiblockSyncher: Closeable? = null
|
||||
|
@ -36,8 +36,8 @@ import ru.dbotthepony.mc.otm.core.TranslatableComponent
|
||||
import ru.dbotthepony.mc.otm.core.nbt.map
|
||||
import ru.dbotthepony.mc.otm.core.nbt.set
|
||||
import ru.dbotthepony.mc.otm.menu.decorative.CargoCrateMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MSoundEvents
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MSoundEvents
|
||||
|
||||
class CargoCrateBlockEntity(
|
||||
p_155229_: BlockPos,
|
||||
|
@ -9,7 +9,7 @@ import net.neoforged.neoforge.capabilities.Capabilities
|
||||
import net.neoforged.neoforge.items.IItemHandler
|
||||
import net.neoforged.neoforge.registries.IdMappingEvent
|
||||
import ru.dbotthepony.mc.otm.block.entity.MatteryBlockEntity
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class DevChestBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryBlockEntity(MBlockEntities.DEV_CHEST, blockPos, blockState), IItemHandler {
|
||||
override fun getSlots(): Int {
|
||||
|
@ -25,7 +25,7 @@ import ru.dbotthepony.mc.otm.core.isNotEmpty
|
||||
import ru.dbotthepony.mc.otm.core.isNotSameAs
|
||||
import ru.dbotthepony.mc.otm.menu.decorative.FluidTankMenu
|
||||
import ru.dbotthepony.mc.otm.network.wrap
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class FluidTankBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryDeviceBlockEntity(MBlockEntities.FLUID_TANK, blockPos, blockState) {
|
||||
val fluid = BlockMatteryFluidHandler(ItemsConfig::FLUID_TANK_CAPACITY, syncher.add(ListenableDelegate.SmartBox(FluidStack.EMPTY, setter = { access, value ->
|
||||
|
@ -5,13 +5,10 @@ import it.unimi.dsi.fastutil.ints.IntArrayList
|
||||
import net.minecraft.core.BlockPos
|
||||
import net.minecraft.core.HolderLookup
|
||||
import net.minecraft.nbt.CompoundTag
|
||||
import net.minecraft.nbt.NbtOps
|
||||
import net.minecraft.network.chat.Component
|
||||
import net.minecraft.network.chat.ComponentSerialization
|
||||
import net.minecraft.server.level.ServerLevel
|
||||
import net.minecraft.world.Containers
|
||||
import net.minecraft.world.MenuProvider
|
||||
import net.minecraft.world.entity.item.ItemEntity
|
||||
import net.minecraft.world.entity.player.Inventory
|
||||
import net.minecraft.world.entity.player.Player
|
||||
import net.minecraft.world.inventory.AbstractContainerMenu
|
||||
@ -21,14 +18,11 @@ import net.minecraft.world.item.crafting.SingleRecipeInput
|
||||
import net.minecraft.world.item.crafting.SmokingRecipe
|
||||
import net.minecraft.world.level.block.Block
|
||||
import net.minecraft.world.level.block.state.BlockState
|
||||
import org.apache.logging.log4j.LogManager
|
||||
import ru.dbotthepony.kommons.util.Delegate
|
||||
import ru.dbotthepony.mc.otm.block.IBlockWithCustomName
|
||||
import ru.dbotthepony.mc.otm.block.decorative.GrillBlock
|
||||
import ru.dbotthepony.mc.otm.block.entity.ExperienceStorage
|
||||
import ru.dbotthepony.mc.otm.block.entity.MatteryBlockEntity
|
||||
import ru.dbotthepony.mc.otm.block.entity.MatteryDeviceBlockEntity
|
||||
import ru.dbotthepony.mc.otm.block.entity.MatteryDeviceBlockEntity.Companion
|
||||
import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.core.TextComponent
|
||||
@ -37,14 +31,11 @@ import ru.dbotthepony.mc.otm.core.isNotEmpty
|
||||
import ru.dbotthepony.mc.otm.core.math.component1
|
||||
import ru.dbotthepony.mc.otm.core.math.component2
|
||||
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.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.menu.decorative.GrillMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import kotlin.jvm.optionals.getOrNull
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class GrillBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryBlockEntity(MBlockEntities.GRILL, blockPos, blockState), MenuProvider, IBlockWithCustomName {
|
||||
val fuelSlot = object : MatteryContainer(this@GrillBlockEntity::markDirtyFast, 1) {
|
||||
|
@ -23,8 +23,8 @@ import ru.dbotthepony.mc.otm.core.math.component2
|
||||
import ru.dbotthepony.mc.otm.core.math.component3
|
||||
import ru.dbotthepony.mc.otm.menu.decorative.HoloSignMenu
|
||||
import ru.dbotthepony.mc.otm.once
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MBlocks
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlocks
|
||||
|
||||
class HoloSignBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryBlockEntity(MBlockEntities.HOLO_SIGN, blockPos, blockState), MenuProvider, IRedstoneControlled {
|
||||
override val redstoneControl = SynchronizedRedstoneControl(syncher) { _, _ -> setChanged() }
|
||||
|
@ -8,7 +8,7 @@ import net.neoforged.neoforge.fluids.FluidStack
|
||||
import net.neoforged.neoforge.fluids.capability.IFluidHandler
|
||||
import ru.dbotthepony.mc.otm.block.entity.MatteryBlockEntity
|
||||
import ru.dbotthepony.mc.otm.core.math.RelativeSide
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import java.util.function.Consumer
|
||||
|
||||
class InfiniteWaterSourceBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryBlockEntity(MBlockEntities.INFINITE_WATER_SOURCE, blockPos, blockState), IFluidHandler {
|
||||
|
@ -26,7 +26,7 @@ import ru.dbotthepony.mc.otm.core.isNotEmpty
|
||||
import ru.dbotthepony.mc.otm.core.nbt.mapPresent
|
||||
import ru.dbotthepony.mc.otm.core.nbt.set
|
||||
import ru.dbotthepony.mc.otm.menu.decorative.PainterMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import java.util.*
|
||||
|
||||
class PainterBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryDeviceBlockEntity(MBlockEntities.PAINTER, blockPos, blockState), IFluidHandler {
|
||||
|
@ -25,8 +25,7 @@ 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.menu.matter.MatterBottlerMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.core.*
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.graph.matter.SimpleMatterNode
|
||||
import java.util.function.BooleanSupplier
|
||||
|
@ -21,9 +21,10 @@ import ru.dbotthepony.mc.otm.core.immutableList
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.graph.matter.SimpleMatterNode
|
||||
import ru.dbotthepony.mc.otm.menu.matter.MatterCapacitorBankMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class MatterCapacitorBankBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) : MatteryDeviceBlockEntity(MBlockEntities.MATTER_CAPACITOR_BANK, p_155229_, p_155230_), IMatterStorage {
|
||||
class MatterCapacitorBankBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) : MatteryDeviceBlockEntity(
|
||||
MBlockEntities.MATTER_CAPACITOR_BANK, p_155229_, p_155230_), IMatterStorage {
|
||||
var gaugeLevel by syncher.float()
|
||||
private set
|
||||
|
||||
|
@ -29,8 +29,8 @@ 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 ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
|
||||
class MatterDecomposerBlockEntity(pos: BlockPos, state: BlockState)
|
||||
: MatteryWorkerBlockEntity<MatterDecomposerBlockEntity.DecomposerJob>(MBlockEntities.MATTER_DECOMPOSER, pos, state, DecomposerJob.CODEC) {
|
||||
|
@ -32,10 +32,11 @@ 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
|
||||
import ru.dbotthepony.mc.otm.registry.MRecipes
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MRecipes
|
||||
|
||||
class MatterEntanglerBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryWorkerBlockEntity<MatterEntanglerBlockEntity.Job>(MBlockEntities.MATTER_ENTANGLER, blockPos, blockState, Job.CODEC) {
|
||||
class MatterEntanglerBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryWorkerBlockEntity<MatterEntanglerBlockEntity.Job>(
|
||||
MBlockEntities.MATTER_ENTANGLER, blockPos, blockState, Job.CODEC) {
|
||||
class Job(itemStack: ItemStack, val matter: Decimal, ticks: Double, experience: Float) : ItemJob(itemStack, ticks, MachinesConfig.MATTER_ENTANGLER.energyConsumption, experience = experience) {
|
||||
val matterPerTick = matter / ticks
|
||||
|
||||
|
@ -25,7 +25,7 @@ import ru.dbotthepony.mc.otm.core.util.ItemSorter
|
||||
import ru.dbotthepony.mc.otm.graph.matter.SimpleMatterNode
|
||||
import ru.dbotthepony.mc.otm.menu.IItemSortingSettings
|
||||
import ru.dbotthepony.mc.otm.menu.matter.MatterPanelMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import java.util.*
|
||||
import java.util.stream.Stream
|
||||
|
||||
|
@ -33,10 +33,11 @@ import ru.dbotthepony.mc.otm.graph.matter.MatterNode
|
||||
import ru.dbotthepony.mc.otm.matter.IMatterValue
|
||||
import ru.dbotthepony.mc.otm.matter.MatterManager
|
||||
import ru.dbotthepony.mc.otm.menu.matter.MatterReconstructorMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import java.util.function.BooleanSupplier
|
||||
|
||||
class MatterReconstructorBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryPoweredBlockEntity(MBlockEntities.MATTER_RECONSTRUCTOR, blockPos, blockState) {
|
||||
class MatterReconstructorBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryPoweredBlockEntity(
|
||||
MBlockEntities.MATTER_RECONSTRUCTOR, blockPos, blockState) {
|
||||
val repairContainer = MatteryContainer(::containerChanged, 1).also(::addDroppableContainer)
|
||||
|
||||
private var matterPerTick = Decimal.ZERO
|
||||
|
@ -27,7 +27,7 @@ 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.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.data.codec.DecimalCodec
|
||||
import ru.dbotthepony.mc.otm.data.codec.minRange
|
||||
import ru.dbotthepony.mc.otm.graph.matter.SimpleMatterNode
|
||||
|
@ -33,9 +33,9 @@ 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
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
import ru.dbotthepony.mc.otm.registry.MItems
|
||||
import ru.dbotthepony.mc.otm.registry.game.MItems
|
||||
import java.util.*
|
||||
|
||||
class MatterReplicatorBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) :
|
||||
|
@ -22,9 +22,8 @@ import ru.dbotthepony.mc.otm.capability.matter.PatternState
|
||||
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.menu.matter.MatterScannerMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.graph.matter.MatterNode
|
||||
import ru.dbotthepony.mc.otm.matter.MatterManager
|
||||
import ru.dbotthepony.mc.otm.registry.MItemTags
|
||||
|
@ -20,7 +20,7 @@ import ru.dbotthepony.mc.otm.core.collect.map
|
||||
import ru.dbotthepony.mc.otm.core.filterNotNull
|
||||
import ru.dbotthepony.mc.otm.core.isNotEmpty
|
||||
import ru.dbotthepony.mc.otm.graph.matter.SimpleMatterNode
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import java.util.stream.Stream
|
||||
|
||||
class PatternStorageBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) :
|
||||
|
@ -16,7 +16,7 @@ import ru.dbotthepony.mc.otm.capability.energy.WorkerEnergyStorage
|
||||
import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.menu.storage.DriveRackMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.storage.optics.priority
|
||||
import ru.dbotthepony.mc.otm.storage.optics.powered
|
||||
import ru.dbotthepony.mc.otm.storage.optics.flow
|
||||
|
@ -21,7 +21,7 @@ import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.core.get
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.core.util.ItemStorageStackSorter
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.menu.storage.DriveViewerMenu
|
||||
import java.util.UUID
|
||||
|
||||
|
@ -41,7 +41,7 @@ import ru.dbotthepony.mc.otm.core.util.ItemStorageStackSorter
|
||||
import ru.dbotthepony.mc.otm.graph.storage.StorageGraph
|
||||
import ru.dbotthepony.mc.otm.graph.storage.StorageNode
|
||||
import ru.dbotthepony.mc.otm.menu.storage.ItemMonitorMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.storage.IStorageEventConsumer
|
||||
import ru.dbotthepony.mc.otm.storage.IStorageProvider
|
||||
import ru.dbotthepony.mc.otm.storage.ItemStorageStack
|
||||
|
@ -30,7 +30,7 @@ import ru.dbotthepony.mc.otm.core.math.isPositive
|
||||
import ru.dbotthepony.mc.otm.core.math.toIntSafe
|
||||
import ru.dbotthepony.mc.otm.graph.storage.StorageNode
|
||||
import ru.dbotthepony.mc.otm.menu.storage.StorageBusMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.storage.*
|
||||
import java.math.BigInteger
|
||||
import java.util.*
|
||||
|
@ -30,7 +30,7 @@ import ru.dbotthepony.mc.otm.core.math.RelativeSide
|
||||
import ru.dbotthepony.mc.otm.graph.storage.StorageNode
|
||||
import ru.dbotthepony.mc.otm.menu.storage.StorageImporterExporterMenu
|
||||
import ru.dbotthepony.mc.otm.once
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MNames
|
||||
import ru.dbotthepony.mc.otm.storage.IStorageEventConsumer
|
||||
import ru.dbotthepony.mc.otm.storage.IStorageProvider
|
||||
|
@ -14,9 +14,10 @@ import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.graph.storage.StorageNode
|
||||
import ru.dbotthepony.mc.otm.menu.storage.StoragePowerSupplierMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class StoragePowerSupplierBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryPoweredBlockEntity(MBlockEntities.STORAGE_POWER_SUPPLIER, blockPos, blockState) {
|
||||
class StoragePowerSupplierBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryPoweredBlockEntity(
|
||||
MBlockEntities.STORAGE_POWER_SUPPLIER, blockPos, blockState) {
|
||||
override fun createMenu(containerID: Int, inventory: Inventory, ply: Player): AbstractContainerMenu {
|
||||
return StoragePowerSupplierMenu(containerID, inventory, this)
|
||||
}
|
||||
|
@ -31,7 +31,6 @@ import ru.dbotthepony.mc.otm.config.WorkerBalanceValues
|
||||
import ru.dbotthepony.mc.otm.container.CombinedContainer
|
||||
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.container.balance
|
||||
import ru.dbotthepony.mc.otm.core.collect.filter
|
||||
import ru.dbotthepony.mc.otm.core.collect.maybe
|
||||
@ -39,8 +38,8 @@ import ru.dbotthepony.mc.otm.core.immutableList
|
||||
import ru.dbotthepony.mc.otm.menu.tech.PoweredFurnaceMenu
|
||||
import ru.dbotthepony.mc.otm.recipe.MatteryCookingRecipe
|
||||
import ru.dbotthepony.mc.otm.recipe.MicrowaveRecipe
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.MRecipes
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MRecipes
|
||||
|
||||
sealed class AbstractPoweredFurnaceBlockEntity<P : AbstractCookingRecipe, S : MatteryCookingRecipe>(
|
||||
type: BlockEntityType<*>,
|
||||
@ -174,19 +173,22 @@ sealed class AbstractPoweredFurnaceBlockEntity<P : AbstractCookingRecipe, S : Ma
|
||||
}
|
||||
}
|
||||
|
||||
class PoweredFurnaceBlockEntity(blockPos: BlockPos, blockState: BlockState) : AbstractPoweredFurnaceBlockEntity<SmeltingRecipe, MatteryCookingRecipe>(MBlockEntities.POWERED_FURNACE, blockPos, blockState, RecipeType.SMELTING, null, MachinesConfig.POWERED_FURNACE) {
|
||||
class PoweredFurnaceBlockEntity(blockPos: BlockPos, blockState: BlockState) : AbstractPoweredFurnaceBlockEntity<SmeltingRecipe, MatteryCookingRecipe>(
|
||||
MBlockEntities.POWERED_FURNACE, blockPos, blockState, RecipeType.SMELTING, null, MachinesConfig.POWERED_FURNACE) {
|
||||
override fun createMenu(containerID: Int, inventory: Inventory, ply: Player): AbstractContainerMenu {
|
||||
return PoweredFurnaceMenu.furnace(containerID, inventory, this)
|
||||
}
|
||||
}
|
||||
|
||||
class PoweredBlastFurnaceBlockEntity(blockPos: BlockPos, blockState: BlockState) : AbstractPoweredFurnaceBlockEntity<BlastingRecipe, MatteryCookingRecipe>(MBlockEntities.POWERED_BLAST_FURNACE, blockPos, blockState, RecipeType.BLASTING, null, MachinesConfig.POWERED_FURNACE) {
|
||||
class PoweredBlastFurnaceBlockEntity(blockPos: BlockPos, blockState: BlockState) : AbstractPoweredFurnaceBlockEntity<BlastingRecipe, MatteryCookingRecipe>(
|
||||
MBlockEntities.POWERED_BLAST_FURNACE, blockPos, blockState, RecipeType.BLASTING, null, MachinesConfig.POWERED_FURNACE) {
|
||||
override fun createMenu(containerID: Int, inventory: Inventory, ply: Player): AbstractContainerMenu {
|
||||
return PoweredFurnaceMenu.blasting(containerID, inventory, this)
|
||||
}
|
||||
}
|
||||
|
||||
class PoweredSmokerBlockEntity(blockPos: BlockPos, blockState: BlockState) : AbstractPoweredFurnaceBlockEntity<SmokingRecipe, MicrowaveRecipe>(MBlockEntities.POWERED_SMOKER, blockPos, blockState, RecipeType.SMOKING, MRecipes.MICROWAVE, MachinesConfig.POWERED_FURNACE) {
|
||||
class PoweredSmokerBlockEntity(blockPos: BlockPos, blockState: BlockState) : AbstractPoweredFurnaceBlockEntity<SmokingRecipe, MicrowaveRecipe>(
|
||||
MBlockEntities.POWERED_SMOKER, blockPos, blockState, RecipeType.SMOKING, MRecipes.MICROWAVE, MachinesConfig.POWERED_FURNACE) {
|
||||
override fun createMenu(containerID: Int, inventory: Inventory, ply: Player): AbstractContainerMenu {
|
||||
return PoweredFurnaceMenu.smoking(containerID, inventory, this)
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ import ru.dbotthepony.mc.otm.capability.matteryPlayer
|
||||
import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.core.getEntitiesInEllipsoid
|
||||
import ru.dbotthepony.mc.otm.menu.tech.AndroidChargerMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class AndroidChargerBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryPoweredBlockEntity(MBlockEntities.ANDROID_CHARGER, blockPos, blockState) {
|
||||
override fun createMenu(containerID: Int, inventory: Inventory, ply: Player): AbstractContainerMenu {
|
||||
@ -63,7 +63,8 @@ class AndroidChargerBlockEntity(blockPos: BlockPos, blockState: BlockState) : Ma
|
||||
}
|
||||
}
|
||||
|
||||
class AndroidChargerMiddleBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryPoweredBlockEntity(MBlockEntities.ANDROID_CHARGER_MIDDLE, blockPos, blockState) {
|
||||
class AndroidChargerMiddleBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryPoweredBlockEntity(
|
||||
MBlockEntities.ANDROID_CHARGER_MIDDLE, blockPos, blockState) {
|
||||
override fun createMenu(containerID: Int, inventory: Inventory, ply: Player): AbstractContainerMenu? {
|
||||
if (proxy.parent == null || lastTileEntity == null) return null
|
||||
return AndroidChargerMenu(containerID, inventory, this)
|
||||
@ -111,7 +112,8 @@ class AndroidChargerMiddleBlockEntity(blockPos: BlockPos, blockState: BlockState
|
||||
}
|
||||
}
|
||||
|
||||
class AndroidChargerTopBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryPoweredBlockEntity(MBlockEntities.ANDROID_CHARGER_TOP, blockPos, blockState) {
|
||||
class AndroidChargerTopBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryPoweredBlockEntity(
|
||||
MBlockEntities.ANDROID_CHARGER_TOP, blockPos, blockState) {
|
||||
override fun createMenu(containerID: Int, inventory: Inventory, ply: Player): AbstractContainerMenu? {
|
||||
if (proxy.parent == null || lastTileEntity == null) return null
|
||||
return AndroidChargerMenu(containerID, inventory, this)
|
||||
|
@ -11,7 +11,6 @@ import net.minecraft.world.level.block.state.BlockState
|
||||
import net.minecraft.world.phys.AABB
|
||||
import ru.dbotthepony.mc.otm.block.entity.MatteryPoweredBlockEntity
|
||||
import ru.dbotthepony.mc.otm.block.entity.WorkerState
|
||||
import ru.dbotthepony.mc.otm.capability.IMatteryPlayer
|
||||
import ru.dbotthepony.mc.otm.capability.energy.ProfiledEnergyStorage
|
||||
import ru.dbotthepony.mc.otm.capability.energy.WorkerEnergyStorage
|
||||
import ru.dbotthepony.mc.otm.capability.matteryPlayer
|
||||
@ -19,7 +18,7 @@ import ru.dbotthepony.mc.otm.capability.moveEnergy
|
||||
import ru.dbotthepony.mc.otm.config.MachinesConfig
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.menu.tech.AndroidStationMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class AndroidStationBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) :
|
||||
MatteryPoweredBlockEntity(MBlockEntities.ANDROID_STATION, p_155229_, p_155230_), MenuProvider {
|
||||
|
@ -6,14 +6,10 @@ import net.minecraft.world.entity.player.Player
|
||||
import net.minecraft.world.inventory.AbstractContainerMenu
|
||||
import net.minecraft.world.item.ItemStack
|
||||
import net.minecraft.world.level.block.state.BlockState
|
||||
import net.neoforged.bus.api.SubscribeEvent
|
||||
import net.neoforged.fml.common.EventBusSubscriber
|
||||
import net.neoforged.neoforge.capabilities.Capabilities
|
||||
import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent
|
||||
import ru.dbotthepony.kommons.util.getValue
|
||||
import ru.dbotthepony.kommons.util.setValue
|
||||
import ru.dbotthepony.kommons.util.value
|
||||
import ru.dbotthepony.mc.otm.OverdriveThatMatters
|
||||
import ru.dbotthepony.mc.otm.block.entity.MatteryDeviceBlockEntity
|
||||
import ru.dbotthepony.mc.otm.capability.FlowDirection
|
||||
import ru.dbotthepony.mc.otm.capability.energy
|
||||
@ -28,7 +24,7 @@ import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.core.immutableList
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
import ru.dbotthepony.mc.otm.menu.tech.BatteryBankMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import java.util.function.Supplier
|
||||
|
||||
class BatteryBankBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) : MatteryDeviceBlockEntity(MBlockEntities.BATTERY_BANK, p_155229_, p_155230_), IMatteryEnergyStorage {
|
||||
|
@ -15,7 +15,7 @@ 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.menu.tech.ChemicalGeneratorMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.core.math.Decimal
|
||||
|
||||
class ChemicalGeneratorBlockEntity(pos: BlockPos, state: BlockState) : MatteryDeviceBlockEntity(MBlockEntities.CHEMICAL_GENERATOR, pos, state) {
|
||||
|
@ -14,7 +14,7 @@ import ru.dbotthepony.mc.otm.block.entity.MatteryWorkerBlockEntity
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.container.HandlerFilter
|
||||
import ru.dbotthepony.mc.otm.menu.tech.CobblerMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class CobblerBlockEntity(blockPos: BlockPos, blockState: BlockState)
|
||||
: MatteryWorkerBlockEntity<ItemJob>(MBlockEntities.COBBLESTONE_GENERATOR, blockPos, blockState, ItemJob.CODEC) {
|
||||
|
@ -27,7 +27,7 @@ import ru.dbotthepony.mc.otm.core.nbt.mapPresent
|
||||
import ru.dbotthepony.mc.otm.core.nbt.set
|
||||
import ru.dbotthepony.mc.otm.core.util.countingLazy
|
||||
import ru.dbotthepony.mc.otm.menu.tech.EnergyCounterMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class EnergyCounterBlockEntity(p_155229_: BlockPos, p_155230_: BlockState) : MatteryDeviceBlockEntity(MBlockEntities.ENERGY_COUNTER, p_155229_, p_155230_) {
|
||||
var passed by syncher.decimal()
|
||||
|
@ -19,7 +19,7 @@ import ru.dbotthepony.mc.otm.container.HandlerFilter
|
||||
import ru.dbotthepony.mc.otm.container.MatteryContainer
|
||||
import ru.dbotthepony.mc.otm.core.multiblock.BlockEntityTag
|
||||
import ru.dbotthepony.mc.otm.menu.tech.EnergyHatchMenu
|
||||
import ru.dbotthepony.mc.otm.registry.MBlockEntities
|
||||
import ru.dbotthepony.mc.otm.registry.game.MBlockEntities
|
||||
|
||||
class EnergyHatchBlockEntity(
|
||||
val isInput: Boolean,
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user