Unlit lamp blockstate

This commit is contained in:
DBotThePony 2022-09-09 10:39:38 +07:00
parent b2b128f93a
commit 6cfae8f420
Signed by: DBot
GPG Key ID: DCC23B5715498507

View File

@ -1,5 +1,6 @@
package ru.dbotthepony.mc.otm.datagen package ru.dbotthepony.mc.otm.datagen
import net.minecraft.client.renderer.block.model.BlockModel
import net.minecraft.core.Direction import net.minecraft.core.Direction
import net.minecraft.data.recipes.ShapedRecipeBuilder import net.minecraft.data.recipes.ShapedRecipeBuilder
import net.minecraft.data.recipes.ShapelessRecipeBuilder import net.minecraft.data.recipes.ShapelessRecipeBuilder
@ -7,6 +8,7 @@ import net.minecraft.resources.ResourceLocation
import net.minecraft.world.item.DyeColor import net.minecraft.world.item.DyeColor
import net.minecraft.world.level.block.Block import net.minecraft.world.level.block.Block
import net.minecraft.world.level.block.IronBarsBlock import net.minecraft.world.level.block.IronBarsBlock
import net.minecraft.world.level.block.state.properties.BlockStateProperties
import net.minecraftforge.client.model.generators.ConfiguredModel import net.minecraftforge.client.model.generators.ConfiguredModel
import net.minecraftforge.client.model.generators.ModelFile import net.minecraftforge.client.model.generators.ModelFile
import net.minecraftforge.eventbus.api.SubscribeEvent import net.minecraftforge.eventbus.api.SubscribeEvent
@ -18,6 +20,7 @@ import ru.dbotthepony.mc.otm.block.entity.WorkerState
import ru.dbotthepony.mc.otm.block.matter.MatterBottlerBlock import ru.dbotthepony.mc.otm.block.matter.MatterBottlerBlock
import ru.dbotthepony.mc.otm.block.matter.PatternStorageBlock import ru.dbotthepony.mc.otm.block.matter.PatternStorageBlock
import ru.dbotthepony.mc.otm.block.storage.DriveViewerBlock import ru.dbotthepony.mc.otm.block.storage.DriveViewerBlock
import ru.dbotthepony.mc.otm.core.get
import ru.dbotthepony.mc.otm.datagen.blocks.BatteryBankProvider import ru.dbotthepony.mc.otm.datagen.blocks.BatteryBankProvider
import ru.dbotthepony.mc.otm.datagen.blocks.MatterBankProvider import ru.dbotthepony.mc.otm.datagen.blocks.MatterBankProvider
import ru.dbotthepony.mc.otm.datagen.blocks.MatteryBlockStateProvider import ru.dbotthepony.mc.otm.datagen.blocks.MatteryBlockStateProvider
@ -33,6 +36,7 @@ import ru.dbotthepony.mc.otm.core.registryName
import ru.dbotthepony.mc.otm.datagen.lang.MatteryLanguageProvider import ru.dbotthepony.mc.otm.datagen.lang.MatteryLanguageProvider
import ru.dbotthepony.mc.otm.datagen.loot.addLootModifiers import ru.dbotthepony.mc.otm.datagen.loot.addLootModifiers
import ru.dbotthepony.mc.otm.datagen.loot.addLootTables import ru.dbotthepony.mc.otm.datagen.loot.addLootTables
import ru.dbotthepony.mc.otm.datagen.models.MatteryModelBuilder
import ru.dbotthepony.mc.otm.datagen.recipes.addCraftingTableRecipes import ru.dbotthepony.mc.otm.datagen.recipes.addCraftingTableRecipes
import ru.dbotthepony.mc.otm.datagen.tags.TagsProvider import ru.dbotthepony.mc.otm.datagen.tags.TagsProvider
import ru.dbotthepony.mc.otm.datagen.tags.addTags import ru.dbotthepony.mc.otm.datagen.tags.addTags
@ -249,8 +253,11 @@ object DataGen {
decorativeCubeAll(MBlocks.DANGER_STRIPE_BLOCK) decorativeCubeAll(MBlocks.DANGER_STRIPE_BLOCK)
decorativeColumn(MBlocks.METAL_BEAM, "metal_beam_side", "metal_beam_top") decorativeColumn(MBlocks.METAL_BEAM, "metal_beam_side", "metal_beam_top")
var labLampOn: MatteryModelBuilder? = null
var labLampOff: MatteryModelBuilder? = null
blockModelProvider.exec { blockModelProvider.exec {
it.cube( labLampOn = it.cube(
MBlocks.LABORATORY_LAMP.registryName!!.path, MBlocks.LABORATORY_LAMP.registryName!!.path,
ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"), ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"),
ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"), ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"),
@ -259,13 +266,31 @@ object DataGen {
ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"), ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"),
ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"), ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"),
) )
labLampOff = it.cube(
MBlocks.LABORATORY_LAMP.registryName!!.path + "_unlit",
ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"),
ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"),
ResourceLocation(MOD_ID, "block/decorative/laboratory_lamp_front_off"),
ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"),
ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"),
ResourceLocation(MOD_ID, "block/decorative/metal_beam_top"),
)
} }
itemModelProvider.block(MItems.LABORATORY_LAMP) itemModelProvider.block(MItems.LABORATORY_LAMP)
itemModelProvider.block(MItems.DANGER_STRIPE_BLOCK) itemModelProvider.block(MItems.DANGER_STRIPE_BLOCK)
itemModelProvider.block(MItems.METAL_BEAM) itemModelProvider.block(MItems.METAL_BEAM)
blockStateProvider.block(MBlocks.LABORATORY_LAMP) blockStateProvider.lambda {
it.getVariantBuilder(MBlocks.LABORATORY_LAMP).forAllStates {
return@forAllStates ConfiguredModel.builder()
.modelFile(if (it[BlockStateProperties.LIT]) labLampOn!! else labLampOff!!)
.rotationX(it[RotatableMatteryBlock.FACING_FULL].toXRotBlockstate())
.rotationY(it[RotatableMatteryBlock.FACING_FULL].toYRotBlockstate())
.build()
}
}
blockModelProvider.exec { blockModelProvider.exec {
for (crate in MRegistry.CARGO_CRATES.blocks.values) { for (crate in MRegistry.CARGO_CRATES.blocks.values) {