2019-07-11 19:55:11 +02:00
|
|
|
package com.simibubi.create;
|
|
|
|
|
2022-11-17 22:50:15 +01:00
|
|
|
import static com.simibubi.create.Create.REGISTRATE;
|
2023-05-21 20:58:31 +02:00
|
|
|
import static com.simibubi.create.content.redstone.displayLink.AllDisplayBehaviours.assignDataBehaviourBE;
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
|
2023-05-21 20:58:31 +02:00
|
|
|
import com.simibubi.create.content.contraptions.actors.contraptionControls.ContraptionControlsBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.actors.contraptionControls.ContraptionControlsRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.actors.harvester.HarvesterBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.actors.harvester.HarvesterRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.actors.psi.PSIInstance;
|
|
|
|
import com.simibubi.create.content.contraptions.actors.psi.PortableFluidInterfaceBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.actors.psi.PortableItemInterfaceBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.actors.psi.PortableStorageInterfaceRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.actors.roller.RollerBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.actors.roller.RollerRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.bearing.BearingInstance;
|
|
|
|
import com.simibubi.create.content.contraptions.bearing.BearingRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.bearing.ClockworkBearingBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.bearing.MechanicalBearingBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.bearing.WindmillBearingBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.chassis.ChassisBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.chassis.StickerBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.chassis.StickerInstance;
|
|
|
|
import com.simibubi.create.content.contraptions.chassis.StickerRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.elevator.ElevatorContactBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.elevator.ElevatorPulleyBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.elevator.ElevatorPulleyRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.gantry.GantryCarriageBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.gantry.GantryCarriageInstance;
|
|
|
|
import com.simibubi.create.content.contraptions.gantry.GantryCarriageRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.mounted.CartAssemblerBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.piston.MechanicalPistonBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.piston.MechanicalPistonRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.pulley.HosePulleyInstance;
|
|
|
|
import com.simibubi.create.content.contraptions.pulley.PulleyBlockEntity;
|
|
|
|
import com.simibubi.create.content.contraptions.pulley.PulleyRenderer;
|
|
|
|
import com.simibubi.create.content.contraptions.pulley.RopePulleyInstance;
|
|
|
|
import com.simibubi.create.content.decoration.copycat.CopycatBlockEntity;
|
|
|
|
import com.simibubi.create.content.decoration.placard.PlacardBlockEntity;
|
|
|
|
import com.simibubi.create.content.decoration.placard.PlacardRenderer;
|
|
|
|
import com.simibubi.create.content.decoration.slidingDoor.SlidingDoorBlockEntity;
|
|
|
|
import com.simibubi.create.content.decoration.slidingDoor.SlidingDoorRenderer;
|
|
|
|
import com.simibubi.create.content.decoration.steamWhistle.WhistleBlockEntity;
|
|
|
|
import com.simibubi.create.content.decoration.steamWhistle.WhistleRenderer;
|
|
|
|
import com.simibubi.create.content.equipment.armor.BacktankBlockEntity;
|
|
|
|
import com.simibubi.create.content.equipment.armor.BacktankInstance;
|
|
|
|
import com.simibubi.create.content.equipment.armor.BacktankRenderer;
|
|
|
|
import com.simibubi.create.content.equipment.bell.BellRenderer;
|
|
|
|
import com.simibubi.create.content.equipment.bell.HauntedBellBlockEntity;
|
|
|
|
import com.simibubi.create.content.equipment.bell.PeculiarBellBlockEntity;
|
|
|
|
import com.simibubi.create.content.equipment.clipboard.ClipboardBlockEntity;
|
|
|
|
import com.simibubi.create.content.equipment.toolbox.ToolBoxInstance;
|
|
|
|
import com.simibubi.create.content.equipment.toolbox.ToolboxBlockEntity;
|
|
|
|
import com.simibubi.create.content.equipment.toolbox.ToolboxRenderer;
|
|
|
|
import com.simibubi.create.content.fluids.drain.ItemDrainBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.drain.ItemDrainRenderer;
|
|
|
|
import com.simibubi.create.content.fluids.hosePulley.HosePulleyBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.hosePulley.HosePulleyRenderer;
|
|
|
|
import com.simibubi.create.content.fluids.pipes.FluidPipeBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.pipes.SmartFluidPipeBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.pipes.StraightPipeBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.pipes.TransparentStraightPipeRenderer;
|
|
|
|
import com.simibubi.create.content.fluids.pipes.valve.FluidValveBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.pipes.valve.FluidValveInstance;
|
|
|
|
import com.simibubi.create.content.fluids.pipes.valve.FluidValveRenderer;
|
|
|
|
import com.simibubi.create.content.fluids.pump.PumpBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.pump.PumpCogInstance;
|
|
|
|
import com.simibubi.create.content.fluids.pump.PumpRenderer;
|
|
|
|
import com.simibubi.create.content.fluids.spout.SpoutBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.spout.SpoutRenderer;
|
|
|
|
import com.simibubi.create.content.fluids.tank.CreativeFluidTankBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.tank.FluidTankBlockEntity;
|
|
|
|
import com.simibubi.create.content.fluids.tank.FluidTankRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.base.CutoutRotatingInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.base.HalfShaftInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.base.HorizontalHalfShaftInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.base.KineticBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.base.KineticBlockEntityRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.base.ShaftInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.base.ShaftRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.base.SingleRotatingInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.belt.BeltBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.belt.BeltInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.belt.BeltRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.chainDrive.ChainGearshiftBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.clock.CuckooClockBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.clock.CuckooClockRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.crafter.MechanicalCrafterBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.crafter.MechanicalCrafterRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.crafter.ShaftlessCogwheelInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.crank.HandCrankBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.crank.HandCrankInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.crank.HandCrankRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.crank.ValveHandleBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.crusher.CrushingWheelBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.crusher.CrushingWheelControllerBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.deployer.DeployerBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.deployer.DeployerInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.deployer.DeployerRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.drill.DrillBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.drill.DrillInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.drill.DrillRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.fan.EncasedFanBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.fan.EncasedFanRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.fan.FanInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.fan.NozzleBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.flywheel.FlywheelBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.flywheel.FlywheelInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.flywheel.FlywheelRenderer;
|
2023-07-28 11:46:25 +02:00
|
|
|
import com.simibubi.create.content.kinetics.flywheel.engine.EngineInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.flywheel.engine.EngineRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.flywheel.engine.FurnaceEngineTileEntity;
|
2023-05-21 20:58:31 +02:00
|
|
|
import com.simibubi.create.content.kinetics.gantry.GantryShaftBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.gauge.GaugeInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.gauge.GaugeRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.gauge.SpeedGaugeBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.gauge.StressGaugeBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.gearbox.GearboxBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.gearbox.GearboxInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.gearbox.GearboxRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.mechanicalArm.ArmBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.mechanicalArm.ArmInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.mechanicalArm.ArmRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.millstone.MillstoneBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.millstone.MillstoneCogInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.millstone.MillstoneRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.mixer.MechanicalMixerBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.mixer.MechanicalMixerRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.mixer.MixerInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.motor.CreativeMotorBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.motor.CreativeMotorRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.press.MechanicalPressBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.press.MechanicalPressRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.press.PressInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.saw.SawBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.saw.SawInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.saw.SawRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.simpleRelays.BracketedKineticBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.simpleRelays.BracketedKineticBlockEntityInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.simpleRelays.BracketedKineticBlockEntityRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.simpleRelays.SimpleKineticBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.simpleRelays.encased.EncasedCogInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.simpleRelays.encased.EncasedCogRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.speedController.SpeedControllerBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.speedController.SpeedControllerRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.steamEngine.PoweredShaftBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.steamEngine.SteamEngineBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.steamEngine.SteamEngineInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.steamEngine.SteamEngineRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.transmission.ClutchBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.transmission.GearshiftBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.transmission.SplitShaftInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.transmission.SplitShaftRenderer;
|
|
|
|
import com.simibubi.create.content.kinetics.transmission.sequencer.SequencedGearshiftBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.turntable.TurntableBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.waterwheel.LargeWaterWheelBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.waterwheel.WaterWheelBlockEntity;
|
|
|
|
import com.simibubi.create.content.kinetics.waterwheel.WaterWheelInstance;
|
|
|
|
import com.simibubi.create.content.kinetics.waterwheel.WaterWheelRenderer;
|
|
|
|
import com.simibubi.create.content.logistics.chute.ChuteBlockEntity;
|
|
|
|
import com.simibubi.create.content.logistics.chute.ChuteRenderer;
|
|
|
|
import com.simibubi.create.content.logistics.chute.SmartChuteBlockEntity;
|
|
|
|
import com.simibubi.create.content.logistics.chute.SmartChuteRenderer;
|
|
|
|
import com.simibubi.create.content.logistics.crate.CreativeCrateBlockEntity;
|
|
|
|
import com.simibubi.create.content.logistics.depot.DepotBlockEntity;
|
|
|
|
import com.simibubi.create.content.logistics.depot.DepotRenderer;
|
|
|
|
import com.simibubi.create.content.logistics.depot.EjectorBlockEntity;
|
|
|
|
import com.simibubi.create.content.logistics.depot.EjectorInstance;
|
|
|
|
import com.simibubi.create.content.logistics.depot.EjectorRenderer;
|
|
|
|
import com.simibubi.create.content.logistics.funnel.FunnelBlockEntity;
|
|
|
|
import com.simibubi.create.content.logistics.funnel.FunnelInstance;
|
|
|
|
import com.simibubi.create.content.logistics.funnel.FunnelRenderer;
|
|
|
|
import com.simibubi.create.content.logistics.tunnel.BeltTunnelBlockEntity;
|
|
|
|
import com.simibubi.create.content.logistics.tunnel.BeltTunnelInstance;
|
|
|
|
import com.simibubi.create.content.logistics.tunnel.BeltTunnelRenderer;
|
|
|
|
import com.simibubi.create.content.logistics.tunnel.BrassTunnelBlockEntity;
|
|
|
|
import com.simibubi.create.content.logistics.vault.ItemVaultBlockEntity;
|
|
|
|
import com.simibubi.create.content.processing.basin.BasinBlockEntity;
|
|
|
|
import com.simibubi.create.content.processing.basin.BasinRenderer;
|
|
|
|
import com.simibubi.create.content.processing.burner.BlazeBurnerBlockEntity;
|
|
|
|
import com.simibubi.create.content.processing.burner.BlazeBurnerRenderer;
|
|
|
|
import com.simibubi.create.content.redstone.analogLever.AnalogLeverBlockEntity;
|
|
|
|
import com.simibubi.create.content.redstone.analogLever.AnalogLeverInstance;
|
|
|
|
import com.simibubi.create.content.redstone.analogLever.AnalogLeverRenderer;
|
|
|
|
import com.simibubi.create.content.redstone.diodes.BrassDiodeInstance;
|
|
|
|
import com.simibubi.create.content.redstone.diodes.BrassDiodeRenderer;
|
|
|
|
import com.simibubi.create.content.redstone.diodes.PulseExtenderBlockEntity;
|
|
|
|
import com.simibubi.create.content.redstone.diodes.PulseRepeaterBlockEntity;
|
|
|
|
import com.simibubi.create.content.redstone.displayLink.DisplayLinkBlockEntity;
|
|
|
|
import com.simibubi.create.content.redstone.displayLink.DisplayLinkRenderer;
|
|
|
|
import com.simibubi.create.content.redstone.displayLink.source.NixieTubeDisplaySource;
|
|
|
|
import com.simibubi.create.content.redstone.displayLink.target.NixieTubeDisplayTarget;
|
|
|
|
import com.simibubi.create.content.redstone.link.RedstoneLinkBlockEntity;
|
|
|
|
import com.simibubi.create.content.redstone.link.controller.LecternControllerBlockEntity;
|
|
|
|
import com.simibubi.create.content.redstone.link.controller.LecternControllerRenderer;
|
|
|
|
import com.simibubi.create.content.redstone.nixieTube.NixieTubeBlockEntity;
|
|
|
|
import com.simibubi.create.content.redstone.nixieTube.NixieTubeRenderer;
|
|
|
|
import com.simibubi.create.content.redstone.smartObserver.SmartObserverBlockEntity;
|
|
|
|
import com.simibubi.create.content.redstone.thresholdSwitch.ThresholdSwitchBlockEntity;
|
|
|
|
import com.simibubi.create.content.schematics.cannon.SchematicannonBlockEntity;
|
|
|
|
import com.simibubi.create.content.schematics.cannon.SchematicannonInstance;
|
|
|
|
import com.simibubi.create.content.schematics.cannon.SchematicannonRenderer;
|
|
|
|
import com.simibubi.create.content.schematics.table.SchematicTableBlockEntity;
|
|
|
|
import com.simibubi.create.content.trains.bogey.BogeyBlockEntityRenderer;
|
|
|
|
import com.simibubi.create.content.trains.bogey.StandardBogeyBlockEntity;
|
|
|
|
import com.simibubi.create.content.trains.display.FlapDisplayBlockEntity;
|
|
|
|
import com.simibubi.create.content.trains.display.FlapDisplayRenderer;
|
2023-05-21 21:48:39 +02:00
|
|
|
import com.simibubi.create.content.trains.observer.TrackObserverBlockEntity;
|
|
|
|
import com.simibubi.create.content.trains.observer.TrackObserverRenderer;
|
2023-05-21 20:58:31 +02:00
|
|
|
import com.simibubi.create.content.trains.signal.SignalBlockEntity;
|
|
|
|
import com.simibubi.create.content.trains.signal.SignalRenderer;
|
|
|
|
import com.simibubi.create.content.trains.station.StationBlockEntity;
|
|
|
|
import com.simibubi.create.content.trains.station.StationRenderer;
|
|
|
|
import com.simibubi.create.content.trains.track.FakeTrackBlockEntity;
|
|
|
|
import com.simibubi.create.content.trains.track.TrackBlockEntity;
|
|
|
|
import com.simibubi.create.content.trains.track.TrackInstance;
|
|
|
|
import com.simibubi.create.content.trains.track.TrackMaterial;
|
|
|
|
import com.simibubi.create.content.trains.track.TrackRenderer;
|
2023-01-19 22:35:41 +01:00
|
|
|
import com.simibubi.create.foundation.blockEntity.renderer.SmartBlockEntityRenderer;
|
2021-12-07 18:24:57 +01:00
|
|
|
import com.tterrag.registrate.util.entry.BlockEntityEntry;
|
2019-07-11 19:55:11 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public class AllBlockEntityTypes {
|
2019-07-11 19:55:11 +02:00
|
|
|
|
2019-08-06 18:13:33 +02:00
|
|
|
// Schematics
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SchematicannonBlockEntity> SCHEMATICANNON = REGISTRATE
|
|
|
|
.blockEntity("schematicannon", SchematicannonBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> SchematicannonInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.SCHEMATICANNON)
|
|
|
|
.renderer(() -> SchematicannonRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SchematicTableBlockEntity> SCHEMATIC_TABLE = REGISTRATE
|
|
|
|
.blockEntity("schematic_table", SchematicTableBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.SCHEMATIC_TABLE)
|
|
|
|
.register();
|
2019-07-11 19:55:11 +02:00
|
|
|
|
2019-08-06 18:13:33 +02:00
|
|
|
// Kinetics
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<BracketedKineticBlockEntity> BRACKETED_KINETIC = REGISTRATE
|
|
|
|
.blockEntity("simple_kinetic", BracketedKineticBlockEntity::new)
|
|
|
|
.instance(() -> BracketedKineticBlockEntityInstance::new, false)
|
2020-12-02 21:49:57 +01:00
|
|
|
.validBlocks(AllBlocks.SHAFT, AllBlocks.COGWHEEL, AllBlocks.LARGE_COGWHEEL)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> BracketedKineticBlockEntityRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2021-11-24 00:30:16 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<CreativeMotorBlockEntity> MOTOR = REGISTRATE
|
|
|
|
.blockEntity("motor", CreativeMotorBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> HalfShaftInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.CREATIVE_MOTOR)
|
|
|
|
.renderer(() -> CreativeMotorRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<GearboxBlockEntity> GEARBOX = REGISTRATE
|
|
|
|
.blockEntity("gearbox", GearboxBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> GearboxInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.GEARBOX)
|
|
|
|
.renderer(() -> GearboxRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<KineticBlockEntity> ENCASED_SHAFT = REGISTRATE
|
|
|
|
.blockEntity("encased_shaft", KineticBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> ShaftInstance::new, false)
|
2022-02-09 02:05:48 +01:00
|
|
|
.validBlocks(AllBlocks.ANDESITE_ENCASED_SHAFT, AllBlocks.BRASS_ENCASED_SHAFT, AllBlocks.ENCASED_CHAIN_DRIVE,
|
|
|
|
AllBlocks.METAL_GIRDER_ENCASED_SHAFT)
|
2021-11-10 02:41:49 +01:00
|
|
|
.renderer(() -> ShaftRenderer::new)
|
|
|
|
.register();
|
2021-11-24 00:30:16 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SimpleKineticBlockEntity> ENCASED_COGWHEEL = REGISTRATE
|
|
|
|
.blockEntity("encased_cogwheel", SimpleKineticBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> EncasedCogInstance::small, false)
|
2021-11-10 02:41:49 +01:00
|
|
|
.validBlocks(AllBlocks.ANDESITE_ENCASED_COGWHEEL, AllBlocks.BRASS_ENCASED_COGWHEEL)
|
2021-12-04 04:17:42 +01:00
|
|
|
.renderer(() -> EncasedCogRenderer::small)
|
2021-11-10 02:41:49 +01:00
|
|
|
.register();
|
2021-11-24 00:30:16 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SimpleKineticBlockEntity> ENCASED_LARGE_COGWHEEL = REGISTRATE
|
|
|
|
.blockEntity("encased_large_cogwheel", SimpleKineticBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> EncasedCogInstance::large, false)
|
2021-11-10 02:41:49 +01:00
|
|
|
.validBlocks(AllBlocks.ANDESITE_ENCASED_LARGE_COGWHEEL, AllBlocks.BRASS_ENCASED_LARGE_COGWHEEL)
|
2021-12-04 04:17:42 +01:00
|
|
|
.renderer(() -> EncasedCogRenderer::large)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-05-21 20:58:31 +02:00
|
|
|
public static final BlockEntityEntry<ChainGearshiftBlockEntity> ADJUSTABLE_CHAIN_GEARSHIFT = REGISTRATE
|
|
|
|
.blockEntity("adjustable_chain_gearshift", ChainGearshiftBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> ShaftInstance::new, false)
|
2020-12-11 19:36:13 +01:00
|
|
|
.validBlocks(AllBlocks.ADJUSTABLE_CHAIN_GEARSHIFT)
|
2021-11-10 02:41:49 +01:00
|
|
|
.renderer(() -> ShaftRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<EncasedFanBlockEntity> ENCASED_FAN = REGISTRATE
|
|
|
|
.blockEntity("encased_fan", EncasedFanBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> FanInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.ENCASED_FAN)
|
|
|
|
.renderer(() -> EncasedFanRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<NozzleBlockEntity> NOZZLE = REGISTRATE
|
|
|
|
.blockEntity("nozzle", NozzleBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.NOZZLE)
|
|
|
|
// .renderer(() -> renderer)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ClutchBlockEntity> CLUTCH = REGISTRATE
|
|
|
|
.blockEntity("clutch", ClutchBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> SplitShaftInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.CLUTCH)
|
|
|
|
.renderer(() -> SplitShaftRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<GearshiftBlockEntity> GEARSHIFT = REGISTRATE
|
|
|
|
.blockEntity("gearshift", GearshiftBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> SplitShaftInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.GEARSHIFT)
|
|
|
|
.renderer(() -> SplitShaftRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<TurntableBlockEntity> TURNTABLE = REGISTRATE
|
|
|
|
.blockEntity("turntable", TurntableBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> SingleRotatingInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.TURNTABLE)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> KineticBlockEntityRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<HandCrankBlockEntity> HAND_CRANK = REGISTRATE
|
|
|
|
.blockEntity("hand_crank", HandCrankBlockEntity::new)
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
.instance(() -> HandCrankInstance::new)
|
2023-03-30 00:55:13 +02:00
|
|
|
.validBlocks(AllBlocks.HAND_CRANK)
|
|
|
|
.renderer(() -> HandCrankRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
|
|
|
public static final BlockEntityEntry<ValveHandleBlockEntity> VALVE_HANDLE = REGISTRATE
|
|
|
|
.blockEntity("valve_handle", ValveHandleBlockEntity::new)
|
|
|
|
.instance(() -> HandCrankInstance::new)
|
|
|
|
.validBlocks(AllBlocks.COPPER_VALVE_HANDLE)
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
.validBlocks(AllBlocks.DYED_VALVE_HANDLES.toArray())
|
2020-09-24 13:39:12 +02:00
|
|
|
.renderer(() -> HandCrankRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<CuckooClockBlockEntity> CUCKOO_CLOCK = REGISTRATE
|
|
|
|
.blockEntity("cuckoo_clock", CuckooClockBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> HorizontalHalfShaftInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.CUCKOO_CLOCK, AllBlocks.MYSTERIOUS_CUCKOO_CLOCK)
|
|
|
|
.renderer(() -> CuckooClockRenderer::new)
|
|
|
|
.register();
|
2021-04-08 19:22:11 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<GantryShaftBlockEntity> GANTRY_SHAFT = REGISTRATE
|
|
|
|
.blockEntity("gantry_shaft", GantryShaftBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> SingleRotatingInstance::new, false)
|
2021-02-04 21:02:30 +01:00
|
|
|
.validBlocks(AllBlocks.GANTRY_SHAFT)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> KineticBlockEntityRenderer::new)
|
2021-02-04 21:02:30 +01:00
|
|
|
.register();
|
2021-04-08 19:22:11 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<GantryCarriageBlockEntity> GANTRY_PINION = REGISTRATE
|
|
|
|
.blockEntity("gantry_pinion", GantryCarriageBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> GantryCarriageInstance::new)
|
2021-03-02 05:53:43 +01:00
|
|
|
.validBlocks(AllBlocks.GANTRY_CARRIAGE)
|
|
|
|
.renderer(() -> GantryCarriageRenderer::new)
|
2021-02-04 21:02:30 +01:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<PumpBlockEntity> MECHANICAL_PUMP = REGISTRATE
|
|
|
|
.blockEntity("mechanical_pump", PumpBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> PumpCogInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_PUMP)
|
|
|
|
.renderer(() -> PumpRenderer::new)
|
|
|
|
.register();
|
2020-10-30 02:16:08 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SmartFluidPipeBlockEntity> SMART_FLUID_PIPE = REGISTRATE
|
|
|
|
.blockEntity("smart_fluid_pipe", SmartFluidPipeBlockEntity::new)
|
2020-10-17 18:20:05 +02:00
|
|
|
.validBlocks(AllBlocks.SMART_FLUID_PIPE)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> SmartBlockEntityRenderer::new)
|
2020-10-17 18:20:05 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<FluidPipeBlockEntity> FLUID_PIPE = REGISTRATE
|
|
|
|
.blockEntity("fluid_pipe", FluidPipeBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.FLUID_PIPE)
|
|
|
|
.register();
|
2020-08-28 21:24:08 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<FluidPipeBlockEntity> ENCASED_FLUID_PIPE = REGISTRATE
|
|
|
|
.blockEntity("encased_fluid_pipe", FluidPipeBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.ENCASED_FLUID_PIPE)
|
|
|
|
.register();
|
2020-08-28 21:24:08 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<StraightPipeBlockEntity> GLASS_FLUID_PIPE = REGISTRATE
|
|
|
|
.blockEntity("glass_fluid_pipe", StraightPipeBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.GLASS_FLUID_PIPE)
|
|
|
|
.renderer(() -> TransparentStraightPipeRenderer::new)
|
|
|
|
.register();
|
2020-10-30 02:16:08 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<FluidValveBlockEntity> FLUID_VALVE = REGISTRATE
|
|
|
|
.blockEntity("fluid_valve", FluidValveBlockEntity::new)
|
2021-03-15 22:20:13 +01:00
|
|
|
.instance(() -> FluidValveInstance::new)
|
2020-09-25 17:22:16 +02:00
|
|
|
.validBlocks(AllBlocks.FLUID_VALVE)
|
|
|
|
.renderer(() -> FluidValveRenderer::new)
|
|
|
|
.register();
|
2020-08-28 21:24:08 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<FluidTankBlockEntity> FLUID_TANK = REGISTRATE
|
|
|
|
.blockEntity("fluid_tank", FluidTankBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.FLUID_TANK)
|
|
|
|
.renderer(() -> FluidTankRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<CreativeFluidTankBlockEntity> CREATIVE_FLUID_TANK = REGISTRATE
|
|
|
|
.blockEntity("creative_fluid_tank", CreativeFluidTankBlockEntity::new)
|
2020-10-30 02:16:08 +01:00
|
|
|
.validBlocks(AllBlocks.CREATIVE_FLUID_TANK)
|
|
|
|
.renderer(() -> FluidTankRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<HosePulleyBlockEntity> HOSE_PULLEY = REGISTRATE
|
|
|
|
.blockEntity("hose_pulley", HosePulleyBlockEntity::new)
|
2021-04-07 08:17:16 +02:00
|
|
|
.instance(() -> HosePulleyInstance::new)
|
2020-10-30 02:16:08 +01:00
|
|
|
.validBlocks(AllBlocks.HOSE_PULLEY)
|
|
|
|
.renderer(() -> HosePulleyRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SpoutBlockEntity> SPOUT = REGISTRATE
|
|
|
|
.blockEntity("spout", SpoutBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.SPOUT)
|
|
|
|
.renderer(() -> SpoutRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ItemDrainBlockEntity> ITEM_DRAIN = REGISTRATE
|
|
|
|
.blockEntity("item_drain", ItemDrainBlockEntity::new)
|
2020-10-30 19:28:33 +01:00
|
|
|
.validBlocks(AllBlocks.ITEM_DRAIN)
|
|
|
|
.renderer(() -> ItemDrainRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<BeltBlockEntity> BELT = REGISTRATE
|
|
|
|
.blockEntity("belt", BeltBlockEntity::new)
|
|
|
|
.instance(() -> BeltInstance::new, BeltBlockEntity::shouldRenderNormally)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.BELT)
|
|
|
|
.renderer(() -> BeltRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ChuteBlockEntity> CHUTE = REGISTRATE
|
|
|
|
.blockEntity("chute", ChuteBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.CHUTE)
|
|
|
|
.renderer(() -> ChuteRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SmartChuteBlockEntity> SMART_CHUTE = REGISTRATE
|
|
|
|
.blockEntity("smart_chute", SmartChuteBlockEntity::new)
|
2021-01-22 20:43:59 +01:00
|
|
|
.validBlocks(AllBlocks.SMART_CHUTE)
|
|
|
|
.renderer(() -> SmartChuteRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<BeltTunnelBlockEntity> ANDESITE_TUNNEL = REGISTRATE
|
|
|
|
.blockEntity("andesite_tunnel", BeltTunnelBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> BeltTunnelInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.ANDESITE_TUNNEL)
|
|
|
|
.renderer(() -> BeltTunnelRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<BrassTunnelBlockEntity> BRASS_TUNNEL = REGISTRATE
|
|
|
|
.blockEntity("brass_tunnel", BrassTunnelBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> BeltTunnelInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.BRASS_TUNNEL)
|
|
|
|
.renderer(() -> BeltTunnelRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ArmBlockEntity> MECHANICAL_ARM = REGISTRATE
|
|
|
|
.blockEntity("mechanical_arm", ArmBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> ArmInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_ARM)
|
|
|
|
.renderer(() -> ArmRenderer::new)
|
|
|
|
.register();
|
2021-11-24 00:30:16 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ItemVaultBlockEntity> ITEM_VAULT = REGISTRATE
|
|
|
|
.blockEntity("item_vault", ItemVaultBlockEntity::new)
|
2021-11-10 21:07:47 +01:00
|
|
|
.validBlocks(AllBlocks.ITEM_VAULT)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<MechanicalPistonBlockEntity> MECHANICAL_PISTON = REGISTRATE
|
|
|
|
.blockEntity("mechanical_piston", MechanicalPistonBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> ShaftInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_PISTON, AllBlocks.STICKY_MECHANICAL_PISTON)
|
|
|
|
.renderer(() -> MechanicalPistonRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<WindmillBearingBlockEntity> WINDMILL_BEARING = REGISTRATE
|
|
|
|
.blockEntity("windmill_bearing", WindmillBearingBlockEntity::new)
|
2021-04-01 01:19:58 +02:00
|
|
|
.instance(() -> BearingInstance::new)
|
2020-10-22 00:50:17 +02:00
|
|
|
.validBlocks(AllBlocks.WINDMILL_BEARING)
|
|
|
|
.renderer(() -> BearingRenderer::new)
|
|
|
|
.register();
|
2020-10-30 02:16:08 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<MechanicalBearingBlockEntity> MECHANICAL_BEARING = REGISTRATE
|
|
|
|
.blockEntity("mechanical_bearing", MechanicalBearingBlockEntity::new)
|
2021-04-01 01:19:58 +02:00
|
|
|
.instance(() -> BearingInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_BEARING)
|
|
|
|
.renderer(() -> BearingRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ClockworkBearingBlockEntity> CLOCKWORK_BEARING = REGISTRATE
|
|
|
|
.blockEntity("clockwork_bearing", ClockworkBearingBlockEntity::new)
|
2021-04-01 01:19:58 +02:00
|
|
|
.instance(() -> BearingInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.CLOCKWORK_BEARING)
|
|
|
|
.renderer(() -> BearingRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<PulleyBlockEntity> ROPE_PULLEY = REGISTRATE
|
|
|
|
.blockEntity("rope_pulley", PulleyBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> RopePulleyInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.ROPE_PULLEY)
|
|
|
|
.renderer(() -> PulleyRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ElevatorPulleyBlockEntity> ELEVATOR_PULLEY =
|
|
|
|
REGISTRATE.blockEntity("elevator_pulley", ElevatorPulleyBlockEntity::new)
|
2022-10-18 19:31:26 +02:00
|
|
|
// .instance(() -> ElevatorPulleyInstance::new, false)
|
2023-01-16 13:43:51 +01:00
|
|
|
.validBlocks(AllBlocks.ELEVATOR_PULLEY)
|
|
|
|
.renderer(() -> ElevatorPulleyRenderer::new)
|
|
|
|
.register();
|
2022-10-18 19:31:26 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ElevatorContactBlockEntity> ELEVATOR_CONTACT =
|
|
|
|
REGISTRATE.blockEntity("elevator_contact", ElevatorContactBlockEntity::new)
|
2023-01-16 13:43:51 +01:00
|
|
|
.validBlocks(AllBlocks.ELEVATOR_CONTACT)
|
|
|
|
.register();
|
2022-10-18 19:31:26 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ChassisBlockEntity> CHASSIS = REGISTRATE
|
|
|
|
.blockEntity("chassis", ChassisBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.RADIAL_CHASSIS, AllBlocks.LINEAR_CHASSIS, AllBlocks.SECONDARY_LINEAR_CHASSIS)
|
|
|
|
// .renderer(() -> renderer)
|
|
|
|
.register();
|
2021-04-08 19:22:11 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<StickerBlockEntity> STICKER = REGISTRATE
|
|
|
|
.blockEntity("sticker", StickerBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> StickerInstance::new, false)
|
2021-03-03 05:21:58 +01:00
|
|
|
.validBlocks(AllBlocks.STICKER)
|
|
|
|
.renderer(() -> StickerRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ContraptionControlsBlockEntity> CONTRAPTION_CONTROLS =
|
|
|
|
REGISTRATE.blockEntity("contraption_controls", ContraptionControlsBlockEntity::new)
|
2023-01-16 13:43:51 +01:00
|
|
|
.validBlocks(AllBlocks.CONTRAPTION_CONTROLS)
|
|
|
|
.renderer(() -> ContraptionControlsRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<DrillBlockEntity> DRILL = REGISTRATE
|
|
|
|
.blockEntity("drill", DrillBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> DrillInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_DRILL)
|
|
|
|
.renderer(() -> DrillRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SawBlockEntity> SAW = REGISTRATE
|
|
|
|
.blockEntity("saw", SawBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> SawInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_SAW)
|
|
|
|
.renderer(() -> SawRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<HarvesterBlockEntity> HARVESTER = REGISTRATE
|
|
|
|
.blockEntity("harvester", HarvesterBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_HARVESTER)
|
|
|
|
.renderer(() -> HarvesterRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-02-22 15:14:04 +01:00
|
|
|
public static final BlockEntityEntry<RollerBlockEntity> MECHANICAL_ROLLER =
|
|
|
|
REGISTRATE.blockEntity("mechanical_roller", RollerBlockEntity::new)
|
|
|
|
.validBlocks(AllBlocks.MECHANICAL_ROLLER)
|
|
|
|
.renderer(() -> RollerRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<PortableItemInterfaceBlockEntity> PORTABLE_STORAGE_INTERFACE =
|
2022-11-17 22:50:15 +01:00
|
|
|
REGISTRATE
|
2023-01-19 22:35:41 +01:00
|
|
|
.blockEntity("portable_storage_interface", PortableItemInterfaceBlockEntity::new)
|
2022-01-03 22:55:43 +01:00
|
|
|
.instance(() -> PSIInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.PORTABLE_STORAGE_INTERFACE)
|
|
|
|
.renderer(() -> PortableStorageInterfaceRenderer::new)
|
2020-08-21 12:59:30 +02:00
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<PortableFluidInterfaceBlockEntity> PORTABLE_FLUID_INTERFACE =
|
2022-11-17 22:50:15 +01:00
|
|
|
REGISTRATE
|
2023-01-19 22:35:41 +01:00
|
|
|
.blockEntity("portable_fluid_interface", PortableFluidInterfaceBlockEntity::new)
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
.instance(() -> PSIInstance::new)
|
|
|
|
.validBlocks(AllBlocks.PORTABLE_FLUID_INTERFACE)
|
|
|
|
.renderer(() -> PortableStorageInterfaceRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SteamEngineBlockEntity> STEAM_ENGINE = REGISTRATE
|
|
|
|
.blockEntity("steam_engine", SteamEngineBlockEntity::new)
|
2022-11-22 23:35:37 +01:00
|
|
|
.instance(() -> SteamEngineInstance::new, false)
|
2022-02-22 19:41:30 +01:00
|
|
|
.validBlocks(AllBlocks.STEAM_ENGINE)
|
|
|
|
.renderer(() -> SteamEngineRenderer::new)
|
|
|
|
.register();
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<WhistleBlockEntity> STEAM_WHISTLE = REGISTRATE
|
|
|
|
.blockEntity("steam_whistle", WhistleBlockEntity::new)
|
2022-05-07 02:21:23 +02:00
|
|
|
.validBlocks(AllBlocks.STEAM_WHISTLE)
|
|
|
|
.renderer(() -> WhistleRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<PoweredShaftBlockEntity> POWERED_SHAFT = REGISTRATE
|
|
|
|
.blockEntity("powered_shaft", PoweredShaftBlockEntity::new)
|
2022-02-22 19:41:30 +01:00
|
|
|
.instance(() -> SingleRotatingInstance::new, false)
|
|
|
|
.validBlocks(AllBlocks.POWERED_SHAFT)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> KineticBlockEntityRenderer::new)
|
2022-02-22 19:41:30 +01:00
|
|
|
.register();
|
2020-11-25 18:54:59 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<FlywheelBlockEntity> FLYWHEEL = REGISTRATE
|
|
|
|
.blockEntity("flywheel", FlywheelBlockEntity::new)
|
2023-02-22 23:45:06 +01:00
|
|
|
.instance(() -> FlywheelInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.FLYWHEEL)
|
|
|
|
.renderer(() -> FlywheelRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-07-28 11:46:25 +02:00
|
|
|
public static final BlockEntityEntry<FurnaceEngineTileEntity> FURNACE_ENGINE = REGISTRATE
|
|
|
|
.blockEntity("furnace_engine", FurnaceEngineTileEntity::new)
|
|
|
|
.instance(() -> EngineInstance::new, false)
|
|
|
|
.validBlocks(AllBlocks.FURNACE_ENGINE)
|
|
|
|
.renderer(() -> EngineRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<MillstoneBlockEntity> MILLSTONE = REGISTRATE
|
|
|
|
.blockEntity("millstone", MillstoneBlockEntity::new)
|
2023-02-22 23:45:06 +01:00
|
|
|
.instance(() -> MillstoneCogInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MILLSTONE)
|
|
|
|
.renderer(() -> MillstoneRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<CrushingWheelBlockEntity> CRUSHING_WHEEL = REGISTRATE
|
|
|
|
.blockEntity("crushing_wheel", CrushingWheelBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> CutoutRotatingInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.CRUSHING_WHEEL)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> KineticBlockEntityRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<CrushingWheelControllerBlockEntity> CRUSHING_WHEEL_CONTROLLER =
|
2022-11-17 22:50:15 +01:00
|
|
|
REGISTRATE
|
2023-01-19 22:35:41 +01:00
|
|
|
.blockEntity("crushing_wheel_controller", CrushingWheelControllerBlockEntity::new)
|
2020-08-21 12:59:30 +02:00
|
|
|
.validBlocks(AllBlocks.CRUSHING_WHEEL_CONTROLLER)
|
2020-09-24 13:39:12 +02:00
|
|
|
// .renderer(() -> renderer)
|
2020-08-21 12:59:30 +02:00
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<WaterWheelBlockEntity> WATER_WHEEL = REGISTRATE
|
|
|
|
.blockEntity("water_wheel", WaterWheelBlockEntity::new)
|
2023-02-25 03:08:31 +01:00
|
|
|
.instance(() -> WaterWheelInstance::standard, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.WATER_WHEEL)
|
2023-02-25 03:08:31 +01:00
|
|
|
.renderer(() -> WaterWheelRenderer::standard)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2023-02-25 03:08:31 +01:00
|
|
|
|
2023-02-24 22:29:10 +01:00
|
|
|
public static final BlockEntityEntry<LargeWaterWheelBlockEntity> LARGE_WATER_WHEEL = REGISTRATE
|
|
|
|
.blockEntity("large_water_wheel", LargeWaterWheelBlockEntity::new)
|
2023-02-25 03:08:31 +01:00
|
|
|
.instance(() -> WaterWheelInstance::large, false)
|
2023-02-24 00:36:35 +01:00
|
|
|
.validBlocks(AllBlocks.LARGE_WATER_WHEEL)
|
2023-02-25 03:08:31 +01:00
|
|
|
.renderer(() -> WaterWheelRenderer::large)
|
2023-02-24 00:36:35 +01:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<MechanicalPressBlockEntity> MECHANICAL_PRESS = REGISTRATE
|
|
|
|
.blockEntity("mechanical_press", MechanicalPressBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> PressInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_PRESS)
|
|
|
|
.renderer(() -> MechanicalPressRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<MechanicalMixerBlockEntity> MECHANICAL_MIXER = REGISTRATE
|
|
|
|
.blockEntity("mechanical_mixer", MechanicalMixerBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> MixerInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_MIXER)
|
|
|
|
.renderer(() -> MechanicalMixerRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<DeployerBlockEntity> DEPLOYER = REGISTRATE
|
|
|
|
.blockEntity("deployer", DeployerBlockEntity::new)
|
2021-03-16 23:52:37 +01:00
|
|
|
.instance(() -> DeployerInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.DEPLOYER)
|
|
|
|
.renderer(() -> DeployerRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<BasinBlockEntity> BASIN = REGISTRATE
|
|
|
|
.blockEntity("basin", BasinBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.BASIN)
|
|
|
|
.renderer(() -> BasinRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<BlazeBurnerBlockEntity> HEATER = REGISTRATE
|
|
|
|
.blockEntity("blaze_heater", BlazeBurnerBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.BLAZE_BURNER)
|
|
|
|
.renderer(() -> BlazeBurnerRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<MechanicalCrafterBlockEntity> MECHANICAL_CRAFTER = REGISTRATE
|
|
|
|
.blockEntity("mechanical_crafter", MechanicalCrafterBlockEntity::new)
|
2023-02-22 23:45:06 +01:00
|
|
|
.instance(() -> ShaftlessCogwheelInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.MECHANICAL_CRAFTER)
|
|
|
|
.renderer(() -> MechanicalCrafterRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SequencedGearshiftBlockEntity> SEQUENCED_GEARSHIFT = REGISTRATE
|
|
|
|
.blockEntity("sequenced_gearshift", SequencedGearshiftBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> SplitShaftInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.SEQUENCED_GEARSHIFT)
|
|
|
|
.renderer(() -> SplitShaftRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SpeedControllerBlockEntity> ROTATION_SPEED_CONTROLLER = REGISTRATE
|
|
|
|
.blockEntity("rotation_speed_controller", SpeedControllerBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> ShaftInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.ROTATION_SPEED_CONTROLLER)
|
|
|
|
.renderer(() -> SpeedControllerRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SpeedGaugeBlockEntity> SPEEDOMETER = REGISTRATE
|
|
|
|
.blockEntity("speedometer", SpeedGaugeBlockEntity::new)
|
2021-03-15 22:20:13 +01:00
|
|
|
.instance(() -> GaugeInstance.Speed::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.SPEEDOMETER)
|
|
|
|
.renderer(() -> GaugeRenderer::speed)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<StressGaugeBlockEntity> STRESSOMETER = REGISTRATE
|
|
|
|
.blockEntity("stressometer", StressGaugeBlockEntity::new)
|
2021-03-15 22:20:13 +01:00
|
|
|
.instance(() -> GaugeInstance.Stress::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.STRESSOMETER)
|
|
|
|
.renderer(() -> GaugeRenderer::stress)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<AnalogLeverBlockEntity> ANALOG_LEVER = REGISTRATE
|
|
|
|
.blockEntity("analog_lever", AnalogLeverBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> AnalogLeverInstance::new, false)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.ANALOG_LEVER)
|
|
|
|
.renderer(() -> AnalogLeverRenderer::new)
|
|
|
|
.register();
|
2022-05-31 21:51:38 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<PlacardBlockEntity> PLACARD = REGISTRATE
|
|
|
|
.blockEntity("placard", PlacardBlockEntity::new)
|
2022-05-31 21:51:38 +02:00
|
|
|
.validBlocks(AllBlocks.PLACARD)
|
|
|
|
.renderer(() -> PlacardRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<CartAssemblerBlockEntity> CART_ASSEMBLER = REGISTRATE
|
|
|
|
.blockEntity("cart_assembler", CartAssemblerBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.CART_ASSEMBLER)
|
|
|
|
// .renderer(() -> renderer)
|
|
|
|
.register();
|
2019-08-17 00:57:36 +02:00
|
|
|
|
2019-08-25 10:14:15 +02:00
|
|
|
// Logistics
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<RedstoneLinkBlockEntity> REDSTONE_LINK = REGISTRATE
|
|
|
|
.blockEntity("redstone_link", RedstoneLinkBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.REDSTONE_LINK)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> SmartBlockEntityRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<NixieTubeBlockEntity> NIXIE_TUBE = REGISTRATE
|
|
|
|
.blockEntity("nixie_tube", NixieTubeBlockEntity::new)
|
2021-07-06 15:04:22 +02:00
|
|
|
.validBlocks(AllBlocks.ORANGE_NIXIE_TUBE)
|
|
|
|
.validBlocks(AllBlocks.NIXIE_TUBES.toArray())
|
2020-09-24 13:39:12 +02:00
|
|
|
.renderer(() -> NixieTubeRenderer::new)
|
2023-01-19 22:35:41 +01:00
|
|
|
.onRegister(assignDataBehaviourBE(new NixieTubeDisplayTarget()))
|
|
|
|
.onRegister(assignDataBehaviourBE(new NixieTubeDisplaySource()))
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<DisplayLinkBlockEntity> DISPLAY_LINK = REGISTRATE
|
|
|
|
.blockEntity("display_link", DisplayLinkBlockEntity::new)
|
2022-05-15 23:40:33 +02:00
|
|
|
.validBlocks(AllBlocks.DISPLAY_LINK)
|
|
|
|
.renderer(() -> DisplayLinkRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-04-29 15:53:07 +02:00
|
|
|
public static final BlockEntityEntry<ThresholdSwitchBlockEntity> THRESHOLD_SWITCH = REGISTRATE
|
|
|
|
.blockEntity("stockpile_switch", ThresholdSwitchBlockEntity::new)
|
|
|
|
.validBlocks(AllBlocks.THRESHOLD_SWITCH)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> SmartBlockEntityRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<CreativeCrateBlockEntity> CREATIVE_CRATE = REGISTRATE
|
|
|
|
.blockEntity("creative_crate", CreativeCrateBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.CREATIVE_CRATE)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> SmartBlockEntityRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<DepotBlockEntity> DEPOT = REGISTRATE
|
|
|
|
.blockEntity("depot", DepotBlockEntity::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.DEPOT)
|
|
|
|
.renderer(() -> DepotRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<EjectorBlockEntity> WEIGHTED_EJECTOR = REGISTRATE
|
|
|
|
.blockEntity("weighted_ejector", EjectorBlockEntity::new)
|
2021-03-26 05:27:08 +01:00
|
|
|
.instance(() -> EjectorInstance::new)
|
2021-03-26 00:15:38 +01:00
|
|
|
.validBlocks(AllBlocks.WEIGHTED_EJECTOR)
|
|
|
|
.renderer(() -> EjectorRenderer::new)
|
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<FunnelBlockEntity> FUNNEL = REGISTRATE
|
|
|
|
.blockEntity("funnel", FunnelBlockEntity::new)
|
2021-03-14 05:45:24 +01:00
|
|
|
.instance(() -> FunnelInstance::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.validBlocks(AllBlocks.BRASS_FUNNEL, AllBlocks.BRASS_BELT_FUNNEL, AllBlocks.ANDESITE_FUNNEL,
|
|
|
|
AllBlocks.ANDESITE_BELT_FUNNEL)
|
|
|
|
.renderer(() -> FunnelRenderer::new)
|
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-04-29 15:53:07 +02:00
|
|
|
public static final BlockEntityEntry<SmartObserverBlockEntity> SMART_OBSERVER = REGISTRATE
|
|
|
|
.blockEntity("content_observer", SmartObserverBlockEntity::new)
|
|
|
|
.validBlocks(AllBlocks.SMART_OBSERVER)
|
2023-01-19 22:35:41 +01:00
|
|
|
.renderer(() -> SmartBlockEntityRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-08-21 12:59:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<PulseExtenderBlockEntity> PULSE_EXTENDER = REGISTRATE
|
|
|
|
.blockEntity("pulse_extender", PulseExtenderBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> BrassDiodeInstance::new, false)
|
2021-11-08 03:01:27 +01:00
|
|
|
.validBlocks(AllBlocks.PULSE_EXTENDER)
|
|
|
|
.renderer(() -> BrassDiodeRenderer::new)
|
2020-09-24 13:39:12 +02:00
|
|
|
.register();
|
2020-06-05 23:26:22 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<PulseRepeaterBlockEntity> PULSE_REPEATER = REGISTRATE
|
|
|
|
.blockEntity("pulse_repeater", PulseRepeaterBlockEntity::new)
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
.instance(() -> BrassDiodeInstance::new, false)
|
|
|
|
.validBlocks(AllBlocks.PULSE_REPEATER)
|
|
|
|
.renderer(() -> BrassDiodeRenderer::new)
|
|
|
|
.register();
|
2021-06-26 18:05:00 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<LecternControllerBlockEntity> LECTERN_CONTROLLER = REGISTRATE
|
|
|
|
.blockEntity("lectern_controller", LecternControllerBlockEntity::new)
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
.validBlocks(AllBlocks.LECTERN_CONTROLLER)
|
|
|
|
.renderer(() -> LecternControllerRenderer::new)
|
|
|
|
.register();
|
2021-06-30 04:32:49 +02:00
|
|
|
|
|
|
|
// Curiosities
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<BacktankBlockEntity> BACKTANK = REGISTRATE
|
|
|
|
.blockEntity("backtank", BacktankBlockEntity::new)
|
2022-10-07 21:32:44 +02:00
|
|
|
.instance(() -> BacktankInstance::new)
|
|
|
|
.validBlocks(AllBlocks.COPPER_BACKTANK, AllBlocks.NETHERITE_BACKTANK)
|
|
|
|
.renderer(() -> BacktankRenderer::new)
|
2021-05-04 03:50:17 +02:00
|
|
|
.register();
|
2020-06-05 23:26:22 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<PeculiarBellBlockEntity> PECULIAR_BELL = REGISTRATE
|
|
|
|
.blockEntity("peculiar_bell", PeculiarBellBlockEntity::new)
|
2021-06-26 18:05:00 +02:00
|
|
|
.validBlocks(AllBlocks.PECULIAR_BELL)
|
2021-06-28 03:38:42 +02:00
|
|
|
.renderer(() -> BellRenderer::new)
|
2021-06-26 18:05:00 +02:00
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<HauntedBellBlockEntity> HAUNTED_BELL = REGISTRATE
|
|
|
|
.blockEntity("cursed_bell", HauntedBellBlockEntity::new)
|
2021-07-04 20:23:34 +02:00
|
|
|
.validBlocks(AllBlocks.HAUNTED_BELL)
|
2021-06-28 03:38:42 +02:00
|
|
|
.renderer(() -> BellRenderer::new)
|
2021-06-26 18:05:00 +02:00
|
|
|
.register();
|
2021-11-24 00:30:16 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<ToolboxBlockEntity> TOOLBOX = REGISTRATE
|
|
|
|
.blockEntity("toolbox", ToolboxBlockEntity::new)
|
2022-01-04 08:52:36 +01:00
|
|
|
.instance(() -> ToolBoxInstance::new, false)
|
2021-10-07 16:16:24 +02:00
|
|
|
.validBlocks(AllBlocks.TOOLBOXES.toArray())
|
2021-09-16 04:10:34 +02:00
|
|
|
.renderer(() -> ToolboxRenderer::new)
|
|
|
|
.register();
|
2021-06-26 18:05:00 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<TrackBlockEntity> TRACK = REGISTRATE
|
|
|
|
.blockEntity("track", TrackBlockEntity::new)
|
2022-02-06 05:05:05 +01:00
|
|
|
.instance(() -> TrackInstance::new)
|
2023-05-10 11:11:36 +02:00
|
|
|
.validBlocksDeferred(TrackMaterial::allBlocks)
|
2022-02-01 01:14:21 +01:00
|
|
|
.renderer(() -> TrackRenderer::new)
|
|
|
|
.register();
|
2022-05-31 18:36:11 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<FakeTrackBlockEntity> FAKE_TRACK = REGISTRATE
|
|
|
|
.blockEntity("fake_track", FakeTrackBlockEntity::new)
|
2022-05-31 18:36:11 +02:00
|
|
|
.validBlocks(AllBlocks.FAKE_TRACK)
|
|
|
|
.register();
|
2022-02-06 05:05:05 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<StandardBogeyBlockEntity> BOGEY = REGISTRATE
|
|
|
|
.blockEntity("bogey", StandardBogeyBlockEntity::new)
|
|
|
|
.renderer(() -> BogeyBlockEntityRenderer::new)
|
2022-02-01 01:14:21 +01:00
|
|
|
.validBlocks(AllBlocks.SMALL_BOGEY, AllBlocks.LARGE_BOGEY)
|
|
|
|
.register();
|
2022-02-06 05:05:05 +01:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<StationBlockEntity> TRACK_STATION = REGISTRATE
|
|
|
|
.blockEntity("track_station", StationBlockEntity::new)
|
2022-02-01 01:14:21 +01:00
|
|
|
.renderer(() -> StationRenderer::new)
|
|
|
|
.validBlocks(AllBlocks.TRACK_STATION)
|
|
|
|
.register();
|
2023-05-09 18:23:47 +02:00
|
|
|
|
2023-05-06 14:31:25 +02:00
|
|
|
public static final BlockEntityEntry<SlidingDoorBlockEntity> SLIDING_DOOR =
|
|
|
|
REGISTRATE.blockEntity("sliding_door", SlidingDoorBlockEntity::new)
|
|
|
|
.renderer(() -> SlidingDoorRenderer::new)
|
|
|
|
.validBlocks(AllBlocks.TRAIN_DOOR, AllBlocks.FRAMED_GLASS_DOOR, AllBlocks.ANDESITE_DOOR,
|
|
|
|
AllBlocks.BRASS_DOOR, AllBlocks.COPPER_DOOR)
|
|
|
|
.register();
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
|
2023-05-09 19:37:24 +02:00
|
|
|
public static final BlockEntityEntry<CopycatBlockEntity> COPYCAT =
|
|
|
|
REGISTRATE.blockEntity("copycat", CopycatBlockEntity::new)
|
|
|
|
.validBlocks(AllBlocks.COPYCAT_PANEL, AllBlocks.COPYCAT_STEP)
|
|
|
|
.register();
|
2022-10-21 21:58:30 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<FlapDisplayBlockEntity> FLAP_DISPLAY = REGISTRATE
|
|
|
|
.blockEntity("flap_display", FlapDisplayBlockEntity::new)
|
2023-02-22 23:45:06 +01:00
|
|
|
.instance(() -> ShaftlessCogwheelInstance::new)
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
.renderer(() -> FlapDisplayRenderer::new)
|
2022-05-15 23:40:33 +02:00
|
|
|
.validBlocks(AllBlocks.DISPLAY_BOARD)
|
Big Data
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
2022-04-05 19:04:04 +02:00
|
|
|
.register();
|
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<SignalBlockEntity> TRACK_SIGNAL = REGISTRATE
|
|
|
|
.blockEntity("track_signal", SignalBlockEntity::new)
|
2022-02-16 03:14:31 +01:00
|
|
|
.renderer(() -> SignalRenderer::new)
|
|
|
|
.validBlocks(AllBlocks.TRACK_SIGNAL)
|
|
|
|
.register();
|
2022-10-18 19:31:26 +02:00
|
|
|
|
2023-01-19 22:35:41 +01:00
|
|
|
public static final BlockEntityEntry<TrackObserverBlockEntity> TRACK_OBSERVER = REGISTRATE
|
|
|
|
.blockEntity("track_observer", TrackObserverBlockEntity::new)
|
2022-06-05 17:02:33 +02:00
|
|
|
.renderer(() -> TrackObserverRenderer::new)
|
|
|
|
.validBlocks(AllBlocks.TRACK_OBSERVER)
|
|
|
|
.register();
|
2023-04-26 19:24:37 +02:00
|
|
|
|
|
|
|
public static final BlockEntityEntry<ClipboardBlockEntity> CLIPBOARD = REGISTRATE
|
|
|
|
.blockEntity("clipboard", ClipboardBlockEntity::new)
|
|
|
|
.validBlocks(AllBlocks.CLIPBOARD)
|
|
|
|
.register();
|
2022-02-01 01:14:21 +01:00
|
|
|
|
2020-09-24 13:39:12 +02:00
|
|
|
public static void register() {}
|
2019-07-11 19:55:11 +02:00
|
|
|
}
|