Update battery bank renderer

This commit is contained in:
DBotThePony 2024-08-25 21:00:18 +07:00
parent 4120660ebc
commit 03244dc630
Signed by: DBot
GPG Key ID: DCC23B5715498507

View File

@ -6,27 +6,27 @@ import net.minecraft.client.renderer.RenderType
import net.minecraft.client.renderer.blockentity.BlockEntityRenderer import net.minecraft.client.renderer.blockentity.BlockEntityRenderer
import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider
import net.minecraft.client.resources.model.BakedModel import net.minecraft.client.resources.model.BakedModel
import net.minecraft.client.resources.model.ModelResourceLocation
import net.minecraft.core.Direction import net.minecraft.core.Direction
import net.minecraft.resources.ResourceLocation
import net.minecraft.world.level.levelgen.XoroshiroRandomSource import net.minecraft.world.level.levelgen.XoroshiroRandomSource
import net.minecraftforge.client.event.ModelEvent import net.neoforged.neoforge.client.event.ModelEvent
import ru.dbotthepony.kommons.math.RGBAColor
import ru.dbotthepony.mc.otm.OverdriveThatMatters import ru.dbotthepony.mc.otm.OverdriveThatMatters
import ru.dbotthepony.mc.otm.block.entity.MatteryDeviceBlockEntity import ru.dbotthepony.mc.otm.block.entity.MatteryDeviceBlockEntity
import ru.dbotthepony.mc.otm.block.entity.matter.MatterCapacitorBankBlockEntity import ru.dbotthepony.mc.otm.block.entity.matter.MatterCapacitorBankBlockEntity
import ru.dbotthepony.mc.otm.block.entity.tech.BatteryBankBlockEntity import ru.dbotthepony.mc.otm.block.entity.tech.BatteryBankBlockEntity
import ru.dbotthepony.mc.otm.client.minecraft import ru.dbotthepony.mc.otm.client.minecraft
import ru.dbotthepony.mc.otm.client.render.sprites.AbstractMatterySprite
import ru.dbotthepony.mc.otm.client.render.DynamicBufferSource import ru.dbotthepony.mc.otm.client.render.DynamicBufferSource
import ru.dbotthepony.mc.otm.client.render.sprites.AbstractMatterySprite
import ru.dbotthepony.mc.otm.client.screen.widget.MatterGaugePanel import ru.dbotthepony.mc.otm.client.screen.widget.MatterGaugePanel
import ru.dbotthepony.mc.otm.client.screen.widget.PowerGaugePanel import ru.dbotthepony.mc.otm.client.screen.widget.PowerGaugePanel
import ru.dbotthepony.mc.otm.core.immutableList import ru.dbotthepony.mc.otm.core.ResourceLocation
import ru.dbotthepony.mc.otm.core.get import ru.dbotthepony.mc.otm.core.get
import ru.dbotthepony.mc.otm.core.immutableList
import ru.dbotthepony.mc.otm.core.math.BlockRotationFreedom import ru.dbotthepony.mc.otm.core.math.BlockRotationFreedom
import ru.dbotthepony.kommons.math.RGBAColor
import ru.dbotthepony.mc.otm.core.math.rotate import ru.dbotthepony.mc.otm.core.math.rotate
import ru.dbotthepony.mc.otm.core.math.rotateY import ru.dbotthepony.mc.otm.core.math.rotateY
import ru.dbotthepony.mc.otm.nanoTime import ru.dbotthepony.mc.otm.nanoTime
import java.util.function.BooleanSupplier
import java.util.function.Supplier import java.util.function.Supplier
import kotlin.math.PI import kotlin.math.PI
@ -61,7 +61,7 @@ abstract class BankRenderer<T : MatteryDeviceBlockEntity>(private val context: B
val buffer = DynamicBufferSource.WORLD.getBuffer(RenderType.solid()) val buffer = DynamicBufferSource.WORLD.getBuffer(RenderType.solid())
for (quad in model.getQuads(null, null, random)) for (quad in model.getQuads(null, null, random))
buffer.putBulkData(stack.last(), quad, 1f, 1f, 1f, p_112311_, p_112312_) buffer.putBulkData(stack.last(), quad, 1f, 1f, 1f, 1f, p_112311_, p_112312_, false)
} }
stack.popPose() stack.popPose()
@ -121,7 +121,7 @@ abstract class BankRenderer<T : MatteryDeviceBlockEntity>(private val context: B
class BatteryBankRenderer(context: BlockEntityRendererProvider.Context) : BankRenderer<BatteryBankBlockEntity>(context) { class BatteryBankRenderer(context: BlockEntityRendererProvider.Context) : BankRenderer<BatteryBankBlockEntity>(context) {
override val models: List<BakedModel> by lazy { override val models: List<BakedModel> by lazy {
immutableList(12) { immutableList(12) {
minecraft.modelManager.modelBakery.bakedTopLevelModels[ResourceLocation(OverdriveThatMatters.MOD_ID, "block/battery/battery$it")]!! minecraft.modelManager.modelBakery.bakedTopLevelModels[ModelResourceLocation.standalone(ResourceLocation(OverdriveThatMatters.MOD_ID, "block/battery/battery$it"))]!!
} }
} }
@ -139,7 +139,7 @@ class BatteryBankRenderer(context: BlockEntityRendererProvider.Context) : BankRe
companion object { companion object {
fun onRegisterAdditionalModels(event: ModelEvent.RegisterAdditional) { fun onRegisterAdditionalModels(event: ModelEvent.RegisterAdditional) {
for (i in 0 .. 11) { for (i in 0 .. 11) {
event.register(ResourceLocation(OverdriveThatMatters.MOD_ID, "block/battery/battery$i")) event.register(ModelResourceLocation.standalone(ResourceLocation(OverdriveThatMatters.MOD_ID, "block/battery/battery$i")))
} }
} }
} }
@ -148,7 +148,7 @@ class BatteryBankRenderer(context: BlockEntityRendererProvider.Context) : BankRe
class MatterBatteryBankRenderer(context: BlockEntityRendererProvider.Context) : BankRenderer<MatterCapacitorBankBlockEntity>(context) { class MatterBatteryBankRenderer(context: BlockEntityRendererProvider.Context) : BankRenderer<MatterCapacitorBankBlockEntity>(context) {
override val models: List<BakedModel> by lazy { override val models: List<BakedModel> by lazy {
immutableList(12) { immutableList(12) {
minecraft.modelManager.modelBakery.bakedTopLevelModels[ResourceLocation(OverdriveThatMatters.MOD_ID, "block/battery/matter_capacitor$it")]!! minecraft.modelManager.modelBakery.bakedTopLevelModels[ModelResourceLocation.standalone(ResourceLocation(OverdriveThatMatters.MOD_ID, "block/battery/matter_capacitor$it"))]!!
} }
} }
@ -166,7 +166,7 @@ class MatterBatteryBankRenderer(context: BlockEntityRendererProvider.Context) :
companion object { companion object {
fun onRegisterAdditionalModels(event: ModelEvent.RegisterAdditional) { fun onRegisterAdditionalModels(event: ModelEvent.RegisterAdditional) {
for (i in 0 .. 11) { for (i in 0 .. 11) {
event.register(ResourceLocation(OverdriveThatMatters.MOD_ID, "block/battery/matter_capacitor$i")) event.register(ModelResourceLocation.standalone(ResourceLocation(OverdriveThatMatters.MOD_ID, "block/battery/matter_capacitor$i")))
} }
} }
} }