use of buildcraft.builders.blueprints.RealBlueprintDeployer in project BuildCraft by BuildCraft.
the class BuildCraftBuilders method init.
@Mod.EventHandler
public void init(FMLInitializationEvent evt) {
NetworkRegistry.INSTANCE.registerGuiHandler(instance, new BuildersGuiHandler());
MinecraftForge.EVENT_BUS.register(new BuilderTooltipHandler());
EntityRegistry.registerModEntity(EntityMechanicalArm.class, "bcMechArm", EntityIds.MECHANICAL_ARM, instance, 50, 1, true);
// Standard blocks
ISchematicRegistry schemes = BuilderAPI.schematicRegistry;
schemes.registerSchematicBlock(Blocks.air, SchematicAir.class);
schemes.registerSchematicBlock(Blocks.snow, SchematicIgnore.class);
schemes.registerSchematicBlock(Blocks.tallgrass, SchematicIgnore.class);
schemes.registerSchematicBlock(Blocks.double_plant, SchematicIgnore.class);
schemes.registerSchematicBlock(Blocks.ice, SchematicIgnore.class);
schemes.registerSchematicBlock(Blocks.piston_head, SchematicIgnore.class);
schemes.registerSchematicBlock(Blocks.dirt, SchematicDirt.class);
schemes.registerSchematicBlock(Blocks.grass, SchematicDirt.class);
schemes.registerSchematicBlock(Blocks.cactus, SchematicCactus.class);
schemes.registerSchematicBlock(Blocks.farmland, SchematicFarmland.class);
schemes.registerSchematicBlock(Blocks.wheat, SchematicSeeds.class, Items.wheat_seeds);
schemes.registerSchematicBlock(Blocks.pumpkin_stem, SchematicSeeds.class, Items.pumpkin_seeds);
schemes.registerSchematicBlock(Blocks.melon_stem, SchematicSeeds.class, Items.melon_seeds);
schemes.registerSchematicBlock(Blocks.nether_wart, SchematicSeeds.class, Items.nether_wart);
schemes.registerSchematicBlock(Blocks.torch, SchematicBlock.class);
schemes.registerSchematicBlock(Blocks.REDSTONE_TORCH, SchematicBlock.class);
schemes.registerSchematicBlock(Blocks.unlit_redstone_torch, SchematicBlock.class);
schemes.registerSchematicBlock(Blocks.tripwire_hook, SchematicBlock.class);
schemes.registerSchematicBlock(Blocks.tripwire, SchematicTripwire.class);
schemes.registerSchematicBlock(Blocks.skull, SchematicSkull.class);
schemes.registerSchematicBlock(Blocks.log, SchematicLog.class);
schemes.registerSchematicBlock(Blocks.log2, SchematicLog.class);
schemes.registerSchematicBlock(Blocks.hay_block, SchematicRotatedPillar.class);
schemes.registerSchematicBlock(Blocks.quartz_block, SchematicQuartz.class);
schemes.registerSchematicBlock(Blocks.hopper, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.anvil, SchematicCustomStack.class, new ItemStack(Blocks.anvil));
schemes.registerSchematicBlock(Blocks.vine, SchematicVine.class);
schemes.registerSchematicBlock(Blocks.furnace, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.lit_furnace, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.CHEST, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.dispenser, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.dropper, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.ender_chest, SchematicEnderChest.class);
schemes.registerSchematicBlock(Blocks.lever, SchematicLever.class);
schemes.registerSchematicBlock(Blocks.gold_ore, SchematicTreatAsOther.class, Blocks.stone.getDefaultState());
schemes.registerSchematicBlock(Blocks.iron_ore, SchematicTreatAsOther.class, Blocks.stone.getDefaultState());
schemes.registerSchematicBlock(Blocks.coal_ore, SchematicTreatAsOther.class, Blocks.stone.getDefaultState());
schemes.registerSchematicBlock(Blocks.lapis_ore, SchematicTreatAsOther.class, Blocks.stone.getDefaultState());
schemes.registerSchematicBlock(Blocks.diamond_ore, SchematicTreatAsOther.class, Blocks.stone.getDefaultState());
schemes.registerSchematicBlock(Blocks.redstone_ore, SchematicTreatAsOther.class, Blocks.stone.getDefaultState());
schemes.registerSchematicBlock(Blocks.lit_redstone_ore, SchematicTreatAsOther.class, Blocks.stone.getDefaultState());
schemes.registerSchematicBlock(Blocks.emerald_ore, SchematicTreatAsOther.class, Blocks.stone.getDefaultState());
schemes.registerSchematicBlock(Blocks.gravel, SchematicGravel.class);
schemes.registerSchematicBlock(Blocks.redstone_wire, SchematicRedstoneWire.class, new ItemStack(Items.REDSTONE));
schemes.registerSchematicBlock(Blocks.cake, SchematicCustomStack.class, new ItemStack(Items.cake));
schemes.registerSchematicBlock(Blocks.glowstone, SchematicCustomStack.class, new ItemStack(Blocks.glowstone));
schemes.registerSchematicBlock(Blocks.powered_repeater, SchematicCustomStackFloored.class, new ItemStack(Items.repeater));
schemes.registerSchematicBlock(Blocks.unpowered_repeater, SchematicCustomStackFloored.class, new ItemStack(Items.repeater));
schemes.registerSchematicBlock(Blocks.powered_comparator, SchematicCustomStackFloored.class, new ItemStack(Items.comparator));
schemes.registerSchematicBlock(Blocks.unpowered_comparator, SchematicCustomStackFloored.class, new ItemStack(Items.comparator));
schemes.registerSchematicBlock(Blocks.daylight_detector, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.daylight_detector_inverted, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.jukebox, SchematicJukebox.class);
schemes.registerSchematicBlock(Blocks.noteblock, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.redstone_lamp, SchematicRedstoneLamp.class);
schemes.registerSchematicBlock(Blocks.lit_redstone_lamp, SchematicRedstoneLamp.class);
schemes.registerSchematicBlock(Blocks.glass_pane, SchematicGlassPane.class);
schemes.registerSchematicBlock(Blocks.stained_glass_pane, SchematicGlassPane.class);
schemes.registerSchematicBlock(Blocks.piston, SchematicPiston.class);
schemes.registerSchematicBlock(Blocks.piston_extension, SchematicIgnore.class);
schemes.registerSchematicBlock(Blocks.sticky_piston, SchematicPiston.class);
schemes.registerSchematicBlock(Blocks.oak_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.stone_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.brick_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.stone_brick_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.nether_brick_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.sandstone_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.spruce_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.birch_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.jungle_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.quartz_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.acacia_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.dark_oak_stairs, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.ACACIA_DOOR, SchematicDoor.class, new ItemStack(Items.ACACIA_DOOR));
schemes.registerSchematicBlock(Blocks.BIRCH_DOOR, SchematicDoor.class, new ItemStack(Items.BIRCH_DOOR));
schemes.registerSchematicBlock(Blocks.DARK_OAK_DOOR, SchematicDoor.class, new ItemStack(Items.DARK_OAK_DOOR));
schemes.registerSchematicBlock(Blocks.JUNGLE_DOOR, SchematicDoor.class, new ItemStack(Items.JUNGLE_DOOR));
schemes.registerSchematicBlock(Blocks.OAK_DOOR, SchematicDoor.class, new ItemStack(Items.OAK_DOOR));
schemes.registerSchematicBlock(Blocks.SPRUCE_DOOR, SchematicDoor.class, new ItemStack(Items.SPRUCE_DOOR));
schemes.registerSchematicBlock(Blocks.IRON_DOOR, SchematicDoor.class, new ItemStack(Items.IRON_DOOR));
schemes.registerSchematicBlock(Blocks.bed, SchematicBed.class);
schemes.registerSchematicBlock(Blocks.wall_sign, SchematicSignLike.class, true);
schemes.registerSchematicBlock(Blocks.standing_sign, SchematicSignLike.class, false);
schemes.registerSchematicBlock(Blocks.wall_banner, SchematicBanner.class, true);
schemes.registerSchematicBlock(Blocks.standing_banner, SchematicBanner.class, false);
schemes.registerSchematicBlock(Blocks.portal, SchematicPortal.class);
schemes.registerSchematicBlock(Blocks.rail, SchematicRail.class);
schemes.registerSchematicBlock(Blocks.activator_rail, SchematicRail.class);
schemes.registerSchematicBlock(Blocks.detector_rail, SchematicRail.class);
schemes.registerSchematicBlock(Blocks.golden_rail, SchematicRail.class);
schemes.registerSchematicBlock(Blocks.beacon, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.brewing_stand, SchematicBrewingStand.class);
schemes.registerSchematicBlock(Blocks.enchanting_table, SchematicTile.class);
schemes.registerSchematicBlock(Blocks.fire, SchematicFire.class);
schemes.registerSchematicBlock(Blocks.bedrock, SchematicBlockCreative.class);
schemes.registerSchematicBlock(Blocks.command_block, SchematicTileCreative.class);
schemes.registerSchematicBlock(Blocks.mob_spawner, SchematicTileCreative.class);
schemes.registerSchematicBlock(Blocks.glass, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.stone_slab, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.double_stone_slab, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.wooden_slab, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.double_wooden_slab, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.stained_glass, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.acacia_fence, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.birch_fence, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.dark_oak_fence, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.jungle_fence, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.oak_fence, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.spruce_fence, SchematicStandalone.class);
schemes.registerSchematicBlock(Blocks.iron_bars, SchematicStandalone.class);
// Standard entities
schemes.registerSchematicEntity(EntityArmorStand.class, SchematicArmorStand.class);
schemes.registerSchematicEntity(EntityMinecartEmpty.class, SchematicMinecart.class, Items.minecart);
schemes.registerSchematicEntity(EntityMinecartFurnace.class, SchematicMinecart.class, Items.furnace_minecart);
schemes.registerSchematicEntity(EntityMinecartTNT.class, SchematicMinecart.class, Items.tnt_minecart);
schemes.registerSchematicEntity(EntityMinecartChest.class, SchematicMinecart.class, Items.chest_minecart);
schemes.registerSchematicEntity(EntityMinecartHopper.class, SchematicMinecart.class, Items.hopper_minecart);
schemes.registerSchematicEntity(EntityPainting.class, SchematicHanging.class, Items.painting);
schemes.registerSchematicEntity(EntityItemFrame.class, SchematicHanging.class, Items.item_frame);
// BuildCraft blocks
schemes.registerSchematicBlock(architectBlock, SchematicTile.class);
schemes.registerSchematicBlock(builderBlock, SchematicBuilderLike.class);
schemes.registerSchematicBlock(fillerBlock, SchematicBuilderLike.class);
schemes.registerSchematicBlock(libraryBlock, SchematicTile.class);
schemes.registerSchematicBlock(quarryBlock, SchematicBuilderLike.class);
// schemes.registerSchematicBlock(markerBlock, SchematicWallSide.class);
// schemes.registerSchematicBlock(pathMarkerBlock, SchematicWallSide.class);
// schemes.registerSchematicBlock(constructionMarkerBlock, SchematicWallSide.class);
// Factories required to save entities in world
SchematicFactory.registerSchematicFactory(SchematicBlock.class, new SchematicFactoryBlock());
SchematicFactory.registerSchematicFactory(SchematicMask.class, new SchematicFactoryMask());
SchematicFactory.registerSchematicFactory(SchematicEntity.class, new SchematicFactoryEntity());
// Template
LibraryAPI.registerHandler(new LibraryBlueprintTypeHandler(false));
// Blueprint
LibraryAPI.registerHandler(new LibraryBlueprintTypeHandler(true));
LibraryAPI.registerHandler(new LibraryBookTypeHandler());
BlueprintDeployer.instance = new RealBlueprintDeployer();
architectAchievement = BuildCraftCore.achievementManager.registerAchievement(new Achievement("buildcraft|builders:achievement.architect", "architectAchievement", 11, 2, BuildCraftBuilders.architectBlock, BuildCraftCore.goldGearAchievement));
builderAchievement = BuildCraftCore.achievementManager.registerAchievement(new Achievement("buildcraft|builders:achievement.builder", "builderAchievement", 13, 2, BuildCraftBuilders.builderBlock, architectAchievement));
blueprintAchievement = BuildCraftCore.achievementManager.registerAchievement(new Achievement("buildcraft|builders:achievement.blueprint", "blueprintAchievement", 11, 4, BuildCraftBuilders.blueprintItem, architectAchievement));
templateAchievement = BuildCraftCore.achievementManager.registerAchievement(new Achievement("buildcraft|builders:achievement.template", "templateAchievement", 13, 4, BuildCraftBuilders.templateItem, blueprintAchievement));
libraryAchievement = BuildCraftCore.achievementManager.registerAchievement(new Achievement("buildcraft|builders:achievement.blueprintLibrary", "blueprintLibraryAchievement", 15, 2, BuildCraftBuilders.libraryBlock, builderAchievement));
chunkDestroyerAchievement = BuildCraftCore.achievementManager.registerAchievement(new Achievement("buildcraft|builders:achievement.chunkDestroyer", "chunkDestroyerAchievement", 9, 2, quarryBlock, BuildCraftCore.diamondGearAchievement));
if (BuildCraftCore.loadDefaultRecipes) {
loadRecipes();
}
BuilderProxy.proxy.registerBlockRenderers();
}
Aggregations