From 9c6e9aef64b3c566f7e56702c0540fd1139975a1 Mon Sep 17 00:00:00 2001 From: modmuss50 <modmuss50@gmail.com> Date: Sun, 8 May 2016 10:13:21 +0100 Subject: [PATCH] Update to new forge registry system --- .../techreborn/client/StackToolTipEvent.java | 2 +- .../command/TechRebornDevCommand.java | 9 +- .../java/techreborn/dev/JsonGenerator.java | 2 +- src/main/java/techreborn/init/ModBlocks.java | 161 ++++++++++-------- .../java/techreborn/proxies/ClientProxy.java | 2 +- 5 files changed, 96 insertions(+), 80 deletions(-) diff --git a/src/main/java/techreborn/client/StackToolTipEvent.java b/src/main/java/techreborn/client/StackToolTipEvent.java index d1c41acb8..ccfe22a11 100644 --- a/src/main/java/techreborn/client/StackToolTipEvent.java +++ b/src/main/java/techreborn/client/StackToolTipEvent.java @@ -62,7 +62,7 @@ public class StackToolTipEvent { Block block = Block.getBlockFromItem(event.getItemStack().getItem()); if (block != null && (block instanceof BlockContainer || block instanceof ITileEntityProvider) - && Block.REGISTRY.getNameForObject(block).getResourceDomain().contains("techreborn")) + && block.getRegistryName().getResourceDomain().contains("techreborn")) { TileEntity tile = block.createTileEntity(Minecraft.getMinecraft().theWorld, block.getDefaultState()); diff --git a/src/main/java/techreborn/command/TechRebornDevCommand.java b/src/main/java/techreborn/command/TechRebornDevCommand.java index 7a03d0783..fbcd4c1ee 100644 --- a/src/main/java/techreborn/command/TechRebornDevCommand.java +++ b/src/main/java/techreborn/command/TechRebornDevCommand.java @@ -94,14 +94,7 @@ public class TechRebornDevCommand extends CommandBase } else if ("getname".equals(args[0])) { EntityPlayer player = (EntityPlayer) sender; if (player.getHeldItem(EnumHand.MAIN_HAND) != null) { - if(GameData.getItemRegistry().containsValue(player.getHeldItem(EnumHand.MAIN_HAND).getItem())){ - sender.addChatMessage(new TextComponentString(GameData.getItemRegistry().getNameForObject(player.getHeldItem(EnumHand.MAIN_HAND).getItem()) + ":" + player.getHeldItem(EnumHand.MAIN_HAND).getItemDamage())); - } else { - Block block = Block.getBlockFromItem(player.getHeldItem(EnumHand.MAIN_HAND).getItem()); - if (block != null && block != Blocks.AIR) { - sender.addChatMessage(new TextComponentString(GameData.getBlockRegistry().getNameForObject(block) + ":" + player.getHeldItem(EnumHand.MAIN_HAND).getItemDamage())); - } - } + sender.addChatMessage(new TextComponentString(player.getHeldItem(EnumHand.MAIN_HAND).getItem().getRegistryName() + ":" + player.getHeldItem(EnumHand.MAIN_HAND).getItemDamage())); } else { ((EntityPlayer) sender).addChatComponentMessage(new TextComponentString("hold an item!")); } diff --git a/src/main/java/techreborn/dev/JsonGenerator.java b/src/main/java/techreborn/dev/JsonGenerator.java index d9585a1f6..b4d0a1010 100644 --- a/src/main/java/techreborn/dev/JsonGenerator.java +++ b/src/main/java/techreborn/dev/JsonGenerator.java @@ -60,7 +60,7 @@ public class JsonGenerator { for(Object object : RebornCore.jsonDestroyer.objectsToDestroy){ if(object instanceof BlockMachineBase){ BlockMachineBase base = (BlockMachineBase) object; - String name = GameData.getBlockRegistry().getNameForObject(base).getResourcePath().replace("tile.techreborn.", ""); + String name = base.getRegistryName().getResourcePath().replace("tile.techreborn.", ""); File state = new File(blockstates, name + ".json"); if(state.exists()){ state.delete(); diff --git a/src/main/java/techreborn/init/ModBlocks.java b/src/main/java/techreborn/init/ModBlocks.java index b9e2113a7..92eae6da5 100644 --- a/src/main/java/techreborn/init/ModBlocks.java +++ b/src/main/java/techreborn/init/ModBlocks.java @@ -3,7 +3,9 @@ package techreborn.init; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.init.Blocks; +import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.oredict.OreDictionary; import reborncore.common.tile.TileMachineBase; @@ -138,6 +140,8 @@ import techreborn.tiles.transformers.TileHVTransformer; import techreborn.tiles.transformers.TileLVTransformer; import techreborn.tiles.transformers.TileMVTransformer; +import java.lang.reflect.InvocationTargetException; + public class ModBlocks { @@ -217,266 +221,285 @@ public class ModBlocks public static void init() { thermalGenerator = new BlockThermalGenerator(); - GameRegistry.registerBlock(thermalGenerator, "techreborn.thermalGenerator"); + registerBlock(thermalGenerator, "techreborn.thermalGenerator"); GameRegistry.registerTileEntity(TileThermalGenerator.class, "TileThermalGeneratorTR"); quantumTank = new BlockQuantumTank(); - GameRegistry.registerBlock(quantumTank, ItemBlockQuantumTank.class, "techreborn.quantumTank"); + registerBlock(quantumTank, ItemBlockQuantumTank.class, "techreborn.quantumTank"); GameRegistry.registerTileEntity(TileQuantumTank.class, "TileQuantumTankTR"); quantumChest = new BlockQuantumChest(); - GameRegistry.registerBlock(quantumChest, ItemBlockQuantumChest.class, "techreborn.quantumChest"); + registerBlock(quantumChest, ItemBlockQuantumChest.class, "techreborn.quantumChest"); GameRegistry.registerTileEntity(TileQuantumChest.class, "TileQuantumChestTR"); digitalChest = new BlockDigitalChest(); - GameRegistry.registerBlock(digitalChest, ItemBlockDigitalChest.class, "techreborn.digitalChest"); + registerBlock(digitalChest, ItemBlockDigitalChest.class, "techreborn.digitalChest"); GameRegistry.registerTileEntity(TileDigitalChest.class, "TileDigitalChestTR"); centrifuge = new BlockCentrifuge(); - GameRegistry.registerBlock(centrifuge, "techreborn.centrifuge"); + registerBlock(centrifuge, "techreborn.centrifuge"); GameRegistry.registerTileEntity(TileCentrifuge.class, "TileCentrifugeTR"); RollingMachine = new BlockRollingMachine(Material.ROCK); - GameRegistry.registerBlock(RollingMachine, "rollingmachine"); + registerBlock(RollingMachine, "rollingmachine"); GameRegistry.registerTileEntity(TileRollingMachine.class, "TileRollingMachineTR"); BlastFurnace = new BlockBlastFurnace(Material.ROCK); - GameRegistry.registerBlock(BlastFurnace, "blastFurnace"); + registerBlock(BlastFurnace, "blastFurnace"); GameRegistry.registerTileEntity(TileBlastFurnace.class, "TileBlastFurnaceTR"); AlloySmelter = new BlockAlloySmelter(Material.ROCK); - GameRegistry.registerBlock(AlloySmelter, "alloySmelter"); + registerBlock(AlloySmelter, "alloySmelter"); GameRegistry.registerTileEntity(TileAlloySmelter.class, "TileAlloySmalterTR"); IndustrialGrinder = new BlockIndustrialGrinder(Material.ROCK); - GameRegistry.registerBlock(IndustrialGrinder, "grinder"); + registerBlock(IndustrialGrinder, "grinder"); GameRegistry.registerTileEntity(TileIndustrialGrinder.class, "TileIndustrialGrinderTR"); ImplosionCompressor = new BlockImplosionCompressor(Material.ROCK); - GameRegistry.registerBlock(ImplosionCompressor, "implosioncompressor"); + registerBlock(ImplosionCompressor, "implosioncompressor"); GameRegistry.registerTileEntity(TileImplosionCompressor.class, "TileImplosionCompressorTR"); MatterFabricator = new BlockMatterFabricator(Material.ROCK); - GameRegistry.registerBlock(MatterFabricator, "matterfabricator"); + registerBlock(MatterFabricator, "matterfabricator"); GameRegistry.registerTileEntity(TileMatterFabricator.class, "TileMatterFabricatorTR"); ChunkLoader = new BlockChunkLoader(Material.ROCK); - GameRegistry.registerBlock(ChunkLoader, "chunkloader"); + registerBlock(ChunkLoader, "chunkloader"); GameRegistry.registerTileEntity(TileChunkLoader.class, "TileChunkLoaderTR"); chargeBench = new BlockChargeBench(Material.ROCK); - GameRegistry.registerBlock(chargeBench, "chargebench"); + registerBlock(chargeBench, "chargebench"); GameRegistry.registerTileEntity(TileChargeBench.class, "TileChargeBench"); playerDetector = new BlockPlayerDetector(); - GameRegistry.registerBlock(playerDetector, ItemBlockPlayerDetector.class, "playerDetector"); + registerBlock(playerDetector, ItemBlockPlayerDetector.class, "playerDetector"); GameRegistry.registerTileEntity(TilePlayerDectector.class, "TilePlayerDectectorTR"); MachineCasing = new BlockMachineCasing(Material.ROCK); - GameRegistry.registerBlock(MachineCasing, ItemBlockMachineCasing.class, "machinecasing"); + registerBlock(MachineCasing, ItemBlockMachineCasing.class, "machinecasing"); GameRegistry.registerTileEntity(TileMachineCasing.class, "TileMachineCasingTR"); ore = new BlockOre(Material.ROCK); - GameRegistry.registerBlock(ore, ItemBlockOre.class, "techreborn.ore"); + registerBlock(ore, ItemBlockOre.class, "techreborn.ore"); ore2 = new BlockOre2(Material.ROCK); - GameRegistry.registerBlock(ore2, ItemBlockOre2.class, "techreborn.ore2"); + registerBlock(ore2, ItemBlockOre2.class, "techreborn.ore2"); storage = new BlockStorage(Material.IRON); - GameRegistry.registerBlock(storage, ItemBlockStorage.class, "techreborn.storage"); + registerBlock(storage, ItemBlockStorage.class, "techreborn.storage"); storage2 = new BlockStorage2(Material.IRON); - GameRegistry.registerBlock(storage2, ItemBlockStorage2.class, "techreborn.storage2"); + registerBlock(storage2, ItemBlockStorage2.class, "techreborn.storage2"); Dragoneggenergysiphoner = new BlockDragonEggSiphoner(Material.ROCK); - GameRegistry.registerBlock(Dragoneggenergysiphoner, "dragoneggenergsiphon"); + registerBlock(Dragoneggenergysiphoner, "dragoneggenergsiphon"); GameRegistry.registerTileEntity(TileDragonEggSiphoner.class, "TileDragonEggSiphonerTR"); Magicenergeyconverter = new BlockMagicEnergyConverter(Material.ROCK); - GameRegistry.registerBlock(Magicenergeyconverter, "magicenergyconverter"); + registerBlock(Magicenergeyconverter, "magicenergyconverter"); AssemblyMachine = new BlockAssemblingMachine(Material.ROCK); - GameRegistry.registerBlock(AssemblyMachine, "assemblymachine"); + registerBlock(AssemblyMachine, "assemblymachine"); GameRegistry.registerTileEntity(TileAssemblingMachine.class, "TileAssemblyMachineTR"); DieselGenerator = new BlockDieselGenerator(Material.ROCK); - GameRegistry.registerBlock(DieselGenerator, "dieselgenerator"); + registerBlock(DieselGenerator, "dieselgenerator"); GameRegistry.registerTileEntity(TileDieselGenerator.class, "TileDieselGeneratorTR"); IndustrialElectrolyzer = new BlockIndustrialElectrolyzer(Material.ROCK); - GameRegistry.registerBlock(IndustrialElectrolyzer, "industrialelectrolyzer"); + registerBlock(IndustrialElectrolyzer, "industrialelectrolyzer"); GameRegistry.registerTileEntity(TileIndustrialElectrolyzer.class, "TileIndustrialElectrolyzerTR"); MagicalAbsorber = new BlockMagicEnergyAbsorber(Material.ROCK); - GameRegistry.registerBlock(MagicalAbsorber, "magicrnergyabsorber"); + registerBlock(MagicalAbsorber, "magicrnergyabsorber"); Semifluidgenerator = new BlockSemiFluidGenerator(Material.ROCK); - GameRegistry.registerBlock(Semifluidgenerator, "semifluidgenerator"); + registerBlock(Semifluidgenerator, "semifluidgenerator"); GameRegistry.registerTileEntity(TileSemifluidGenerator.class, "TileSemifluidGeneratorTR"); Gasturbine = new BlockGasTurbine(Material.ROCK); - GameRegistry.registerBlock(Gasturbine, "gasturbine"); + registerBlock(Gasturbine, "gasturbine"); GameRegistry.registerTileEntity(TileGasTurbine.class, "TileGassTurbineTR"); AlloyFurnace = new BlockAlloyFurnace(Material.ROCK); - GameRegistry.registerBlock(AlloyFurnace, "alloyfurnace"); + registerBlock(AlloyFurnace, "alloyfurnace"); GameRegistry.registerTileEntity(TileAlloyFurnace.class, "TileAlloyFurnaceTR"); ChemicalReactor = new BlockChemicalReactor(Material.ROCK); - GameRegistry.registerBlock(ChemicalReactor, "chemicalreactor"); + registerBlock(ChemicalReactor, "chemicalreactor"); GameRegistry.registerTileEntity(TileChemicalReactor.class, "TileChemicalReactorTR"); Idsu = new BlockIDSU(); - GameRegistry.registerBlock(Idsu, "idsu"); + registerBlock(Idsu, "idsu"); GameRegistry.registerTileEntity(TileIDSU.class, "TileIDSUTR"); Aesu = new BlockAESU(); - GameRegistry.registerBlock(Aesu, ItemBlockAesu.class, "aesu"); + registerBlock(Aesu, ItemBlockAesu.class, "aesu"); GameRegistry.registerTileEntity(TileAesu.class, "TileAesuTR"); Lesu = new BlockLESU(); - GameRegistry.registerBlock(Lesu, "lesu"); + registerBlock(Lesu, "lesu"); GameRegistry.registerTileEntity(TileLesu.class, "TileLesuTR"); Supercondensator = new BlockSupercondensator(Material.ROCK); - GameRegistry.registerBlock(Supercondensator, "supercondensator"); + registerBlock(Supercondensator, "supercondensator"); LesuStorage = new BlockLESUStorage(Material.ROCK); - GameRegistry.registerBlock(LesuStorage, "lesustorage"); + registerBlock(LesuStorage, "lesustorage"); GameRegistry.registerTileEntity(TileLesuStorage.class, "TileLesuStorageTR"); Distillationtower = new BlockDistillationTower(Material.ROCK); - GameRegistry.registerBlock(Distillationtower, "distillationtower"); + registerBlock(Distillationtower, "distillationtower"); ElectricCraftingTable = new BlockElectricCraftingTable(Material.ROCK); - GameRegistry.registerBlock(ElectricCraftingTable, "electriccraftingtable"); + registerBlock(ElectricCraftingTable, "electriccraftingtable"); VacuumFreezer = new BlockVacuumFreezer(Material.ROCK); - GameRegistry.registerBlock(VacuumFreezer, "vacuumfreezer"); + registerBlock(VacuumFreezer, "vacuumfreezer"); GameRegistry.registerTileEntity(TileVacuumFreezer.class, "TileVacuumFreezerTR"); PlasmaGenerator = new BlockPlasmaGenerator(Material.ROCK); - GameRegistry.registerBlock(PlasmaGenerator, "plasmagenerator"); + registerBlock(PlasmaGenerator, "plasmagenerator"); ComputerCube = new BlockComputerCube(Material.ROCK); - GameRegistry.registerBlock(ComputerCube, "computercube"); + registerBlock(ComputerCube, "computercube"); FusionControlComputer = new BlockFusionControlComputer(Material.ROCK); - GameRegistry.registerBlock(FusionControlComputer, "fusioncontrolcomputer"); + registerBlock(FusionControlComputer, "fusioncontrolcomputer"); GameRegistry.registerTileEntity(TileEntityFusionController.class, "TileEntityFustionControllerTR"); FusionCoil = new BlockFusionCoil(Material.ROCK); - GameRegistry.registerBlock(FusionCoil, "fusioncoil"); + registerBlock(FusionCoil, "fusioncoil"); LightningRod = new BlockLightningRod(Material.ROCK); - GameRegistry.registerBlock(LightningRod, "lightningrod"); + registerBlock(LightningRod, "lightningrod"); heatGenerator = new BlockHeatGenerator(Material.ROCK); - GameRegistry.registerBlock(heatGenerator, "heatgenerator"); + registerBlock(heatGenerator, "heatgenerator"); GameRegistry.registerTileEntity(TileHeatGenerator.class, "TileHeatGeneratorTR"); industrialSawmill = new BlockIndustrialSawmill(Material.ROCK); - GameRegistry.registerBlock(industrialSawmill, "industrialSawmill"); + registerBlock(industrialSawmill, "industrialSawmill"); GameRegistry.registerTileEntity(TileIndustrialSawmill.class, "TileIndustrialSawmillTR"); machineframe = new BlockMachineFrame(Material.IRON); - GameRegistry.registerBlock(machineframe, ItemBlockMachineFrame.class, "techreborn.machineFrame"); + registerBlock(machineframe, ItemBlockMachineFrame.class, "techreborn.machineFrame"); Grinder = new BlockGrinder(Material.IRON); - GameRegistry.registerBlock(Grinder, "techreborn.grinder"); + registerBlock(Grinder, "techreborn.grinder"); GameRegistry.registerTileEntity(TileGrinder.class, "TileGrinderTR"); Generator = new BlockGenerator(); - GameRegistry.registerBlock(Generator, "techreborn.generator"); + registerBlock(Generator, "techreborn.generator"); GameRegistry.registerTileEntity(TileGenerator.class, "TileGeneratorTR"); Extractor = new BlockExtractor(Material.IRON); - GameRegistry.registerBlock(Extractor, "techreborn.extractor"); + registerBlock(Extractor, "techreborn.extractor"); GameRegistry.registerTileEntity(TileExtractor.class, "TileExtractorTR"); Compressor = new BlockCompressor(Material.IRON); - GameRegistry.registerBlock(Compressor, "techreborn.compressor"); + registerBlock(Compressor, "techreborn.compressor"); GameRegistry.registerTileEntity(TileCompressor.class, "TileCompressorTR"); ElectricFurnace = new BlockElectricFurnace(Material.IRON); - GameRegistry.registerBlock(ElectricFurnace, "techreborn.electricfurnace"); + registerBlock(ElectricFurnace, "techreborn.electricfurnace"); GameRegistry.registerTileEntity(TileElectricFurnace.class, "TileElectricFurnaceTR"); solarPanel = new BlockSolarPanel(); - GameRegistry.registerBlock(solarPanel, "techreborn.solarpanel"); + registerBlock(solarPanel, "techreborn.solarpanel"); GameRegistry.registerTileEntity(TileSolarPanel.class, "TileSolarPanel"); waterMill = new BlockWaterMill(); - GameRegistry.registerBlock(waterMill, "techreborn.watermill"); + registerBlock(waterMill, "techreborn.watermill"); GameRegistry.registerTileEntity(TileWaterMill.class, "TileWaterMill"); windMill = new BlockWindMill(); - GameRegistry.registerBlock(windMill, "techreborn.windmill"); + registerBlock(windMill, "techreborn.windmill"); GameRegistry.registerTileEntity(TileWindMill.class, "TileWindMill"); GameRegistry.registerTileEntity(TileMachineBase.class, "TileMachineBaseTR"); rubberLog = new BlockRubberLog(); - GameRegistry.registerBlock(rubberLog, "rubberLog"); + registerBlock(rubberLog, "rubberLog"); rubberPlanks = new BlockRubberPlank(); - GameRegistry.registerBlock(rubberPlanks, "rubberPlanks"); + registerBlock(rubberPlanks, "rubberPlanks"); rubberLeaves = new BlockRubberLeaves(); - GameRegistry.registerBlock(rubberLeaves, "rubberLeaves"); + registerBlock(rubberLeaves, "rubberLeaves"); rubberSapling = new BlockRubberSapling(); - GameRegistry.registerBlock(rubberSapling, ItemBlockRubberSapling.class, "rubberSapling"); + registerBlock(rubberSapling, ItemBlockRubberSapling.class, "rubberSapling"); ironFence = new BlockIronFence(); - GameRegistry.registerBlock(ironFence, "ironFence"); + registerBlock(ironFence, "ironFence"); reinforcedglass = new BlockReinforcedGlass(Material.GLASS); - GameRegistry.registerBlock(reinforcedglass, "reinforcedglass"); + registerBlock(reinforcedglass, "reinforcedglass"); recycler = new BlockRecycler(Material.IRON); - GameRegistry.registerBlock(recycler, "recycler"); + registerBlock(recycler, "recycler"); GameRegistry.registerTileEntity(TileRecycler.class, "TileRecyclerTR"); batBox = new BlockBatBox(); - GameRegistry.registerBlock(batBox, "batBox"); + registerBlock(batBox, "batBox"); GameRegistry.registerTileEntity(TileBatBox.class, "TileBatBox"); mfe = new BlockMFE(); - GameRegistry.registerBlock(mfe, "mfe"); + registerBlock(mfe, "mfe"); GameRegistry.registerTileEntity(TileMFE.class, "TileMFE"); mfsu = new BlockMFSU(); - GameRegistry.registerBlock(mfsu, "mfsu"); + registerBlock(mfsu, "mfsu"); GameRegistry.registerTileEntity(TileMFSU.class, "TileMFSU"); lvt = new BlockLVTransformer(); - GameRegistry.registerBlock(lvt, "lvt"); + registerBlock(lvt, "lvt"); GameRegistry.registerTileEntity(TileLVTransformer.class, "TileLVTransformer"); mvt = new BlockMVTransformer(); - GameRegistry.registerBlock(mvt, "mvt"); + registerBlock(mvt, "mvt"); GameRegistry.registerTileEntity(TileMVTransformer.class, "TileMVTransformer"); hvt = new BlockHVTransformer(); - GameRegistry.registerBlock(hvt, "hvt"); + registerBlock(hvt, "hvt"); GameRegistry.registerTileEntity(TileHVTransformer.class, "TileHVTransformer"); ironFurnace = new BlockIronFurnace(); - GameRegistry.registerBlock(ironFurnace, "ironfurnace"); + registerBlock(ironFurnace, "ironfurnace"); GameRegistry.registerTileEntity(TileIronFurnace.class, "TileIronFurnaceTR"); nuke = new BlockNuke(); - GameRegistry.registerBlock(nuke, "nuke"); + registerBlock(nuke, "nuke"); scrapboxinator = new BlockScrapboxinator(Material.IRON); - GameRegistry.registerBlock(scrapboxinator, "scrapboxinator"); + registerBlock(scrapboxinator, "scrapboxinator"); GameRegistry.registerTileEntity(TileScrapboxinator.class, "TileScrapboxinatorTR"); registerOreDict(); Core.logHelper.info("TechReborns Blocks Loaded"); } + public static void registerBlock(Block block, String name){ + block.setRegistryName(name); + GameRegistry.register(block); + GameRegistry.register(new ItemBlock(block), block.getRegistryName()); + } + + public static void registerBlock(Block block, Class<? extends ItemBlock> itemclass, String name){ + block.setRegistryName(name); + GameRegistry.register(block); + try { + ItemBlock itemBlock = itemclass.getConstructor(Block.class).newInstance(block); + itemBlock.setRegistryName(name); + GameRegistry.register(itemBlock); + } catch (InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException e) { + e.printStackTrace(); + } + + } + public static void registerOreDict() { OreDictionary.registerOre("oreGalena", new ItemStack(ore, 1, 0)); diff --git a/src/main/java/techreborn/proxies/ClientProxy.java b/src/main/java/techreborn/proxies/ClientProxy.java index eed36322e..a6a30a924 100644 --- a/src/main/java/techreborn/proxies/ClientProxy.java +++ b/src/main/java/techreborn/proxies/ClientProxy.java @@ -99,7 +99,7 @@ public class ClientProxy extends CommonProxy } public static ResourceLocation getItemLocation(Item item) { - Object o = GameData.getItemRegistry().getNameForObject(item); + Object o = item.getRegistryName(); if(o == null) { return null; }