diff options
author | BlueWeabo <ilia.iliev2005@gmail.com> | 2023-04-01 17:06:06 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-01 16:06:06 +0200 |
commit | 655cc902d3df19a1ac2bfaa38cc928ed629d0171 (patch) | |
tree | 25e34b45705b8473e20af3f9b92af25cc87a1e0d /src/main/java/gregtech/loaders | |
parent | a01d019ed97101936210f16c7a362d852f081f09 (diff) | |
download | GT5-Unofficial-655cc902d3df19a1ac2bfaa38cc928ed629d0171.tar.gz GT5-Unofficial-655cc902d3df19a1ac2bfaa38cc928ed629d0171.tar.bz2 GT5-Unofficial-655cc902d3df19a1ac2bfaa38cc928ed629d0171.zip |
Implement Power Logic, Pollution Logic and Processing Logic for MuTEs and many other things (#1823)
* update bs 2
* fuel consumption and energy implementation. clean up
* don't register XD
* some clean up
* coke oven work
* semi-working coke oven
somehow i broke the activating of the multiblock
* power logic
* PowerLogic
* clean up, saving loading nbt
* small cleanup and pollution
* pollution working :P
* Energy mostly working, wallsharing
* processing logic
* fix npe and deregister
* review requests
* missed one
* remove extra 0
Diffstat (limited to 'src/main/java/gregtech/loaders')
-rw-r--r-- | src/main/java/gregtech/loaders/preload/GT_Loader_MultiTileEntities.java | 57 |
1 files changed, 42 insertions, 15 deletions
diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_MultiTileEntities.java b/src/main/java/gregtech/loaders/preload/GT_Loader_MultiTileEntities.java index f9266833bc..22c8c9ece8 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_MultiTileEntities.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_MultiTileEntities.java @@ -1,20 +1,35 @@ package gregtech.loaders.preload; import static gregtech.GT_Mod.GT_FML_LOGGER; +import static gregtech.api.multitileentity.enums.GT_MultiTileCasing.*; import net.minecraft.block.Block; import net.minecraft.block.material.Material; +import gregtech.api.enums.Materials; import gregtech.api.multitileentity.MultiTileEntityBlock; import gregtech.api.multitileentity.MultiTileEntityRegistry; +import gregtech.api.multitileentity.multiblock.base.WallShareablePart; +import gregtech.api.multitileentity.multiblock.casing.BasicCasing; +import gregtech.common.tileentities.casings.functional.MotorCasing; +import gregtech.common.tileentities.casings.upgrade.InventoryUpgrade; +import gregtech.common.tileentities.machines.multiblock.MultiBlock_CokeOven; +import gregtech.common.tileentities.machines.multiblock.MultiBlock_Macerator; public class GT_Loader_MultiTileEntities implements Runnable { + public static int CASING_REGISTRY = 0; + @Override public void run() { GT_FML_LOGGER.info("GT_Mod: Registering MultiTileEntities"); - final MultiTileEntityRegistry aRegistry = new MultiTileEntityRegistry("gt.multitileentity"); - final MultiTileEntityBlock aMachine = MultiTileEntityBlock.getOrCreate( + // registerMachines(); + // registerCasings(); + + } + + private static void registerMachines() { + final MultiTileEntityBlock machine = MultiTileEntityBlock.getOrCreate( "GregTech", "machine", Material.iron, @@ -25,19 +40,31 @@ public class GT_Loader_MultiTileEntities implements Runnable { 15, true, true); - + final MultiTileEntityRegistry machineRegistry = new MultiTileEntityRegistry("gt.multitileentity.controllers"); // Disable for now - // aRegistry.create(1000, MultiBlock_Macerator.class).name("Large Macerator").category("Multiblock Controller") - // .setBlock(aMachine).material(Materials.Iron).texture("metalwall").tankCapacity(128000L) - // .inputInventorySize(16).outputInventorySize(16).register(); - // aRegistry.create(18000, BasicCasing.class).name("Test Casing").category("Multiblock - // Casing").setBlock(aMachine) - // .material(Materials.Cobalt).texture("metalwall").register(); - // aRegistry.create(20001, InventoryUpgrade.class).name("Inventory Upgrade LV") - // .category("MultiBlock Special Casing").setBlock(aMachine).material(Materials.SpaceTime) - // .texture("metalwall").upgradeInventorySize(16).tier(1).register(); - // aRegistry.create(20002, InventoryUpgrade.class).name("Inventory Upgrade MV") - // .category("MultiBlock Upgrade Casing").setBlock(aMachine).material(Materials.Neutronium) - // .texture("metalwall").upgradeInventorySize(24).tier(2).register(); + machineRegistry.create(1000, MultiBlock_Macerator.class).name("Large Macerator") + .category("Multiblock Controller").setBlock(machine).material(Materials.Iron).texture("metalwall") + .tankCapacity(128000L).inputInventorySize(16).outputInventorySize(16).register(); + machineRegistry.create(0, MultiBlock_CokeOven.class).name("Coke Oven").category("MultiblockController") + .setBlock(machine).texture("cokeOven").inputInventorySize(1).outputInventorySize(1).register(); + } + + private static void registerCasings() { + final MultiTileEntityRegistry casingRegistry = new MultiTileEntityRegistry("gt.multitileentity.casings"); + final MultiTileEntityBlock casing = MultiTileEntityBlock + .getOrCreate("GregTech", "casing", Material.iron, Block.soundTypeMetal, "wrench", 0, 0, 15, true, true); + casingRegistry.create(CokeOven.getId(), WallShareablePart.class).name("Coke Oven Bricks") + .category("MultiBlock Casing").setBlock(casing).texture("cokeOven").register(); + casingRegistry.create(18000, BasicCasing.class).name("Test Casing").category("Multiblock Casing") + .setBlock(casing).material(Materials.Cobalt).texture("metalwall").register(); + casingRegistry.create(20001, InventoryUpgrade.class).name("Inventory Upgrade LV") + .category("MultiBlock Special Casing").setBlock(casing).material(Materials.SpaceTime) + .texture("metalwall").upgradeInventorySize(16).tier(1).register(); + casingRegistry.create(20002, InventoryUpgrade.class).name("Inventory Upgrade MV") + .category("MultiBlock Upgrade Casing").setBlock(casing).material(Materials.Neutronium) + .texture("metalwall").upgradeInventorySize(24).tier(2).register(); + casingRegistry.create(10000, MotorCasing.class).name("Motor Casing LV").tier(1) + .category("MultiBlock Functional Casing").setBlock(casing).material(Materials.Arsenic) + .texture("metalwall").register(); } } |