private static void registerSubTileWithMini(String key, Class<? extends SubTileEntity> clazz) { BotaniaAPI.registerSubTile(key, clazz); for (Class innerClazz : clazz.getDeclaredClasses()) if (innerClazz.getSimpleName().equals("Mini")) BotaniaAPI.registerMiniSubTile(key + "Chibi", innerClazz, key); }
public void postInit(FMLPostInitializationEvent event) { if (Botania.thaumcraftLoaded) { ModBrews.initTC(); ModBrewRecipes.initTC(); } ModBlocks.addDispenserBehaviours(); ModBlocks.registerMultiparts(); ConfigHandler.loadPostInit(); LexiconData.postInit(); registerNEIStuff(); int words = 0; for (LexiconEntry entry : BotaniaAPI.getAllEntries()) for (LexiconPage page : entry.pages) { words += countWords(page.getUnlocalizedName()); if (page instanceof ITwoNamedPage) words += countWords(((ITwoNamedPage) page).getSecondUnlocalizedName()); } FMLLog.log(Level.INFO, "[Botania] The Lexica Botania has %d words.", words); }
public static void init() { manasteelRecipes = new ArrayList<>(); manasteelRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaResource, 1, 0), "ingotIron", 3000)); manasteelRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModBlocks.storage, 1, 0), new ItemStack(Blocks.IRON_BLOCK), 27000)); manaPearlRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaResource, 1, 1), new ItemStack(Items.ENDER_PEARL), 6000); manaDiamondRecipes = new ArrayList<>(); manaDiamondRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaResource, 1, 2), "gemDiamond", 10000)); manaDiamondRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModBlocks.storage, 1, 3), new ItemStack(Blocks.DIAMOND_BLOCK), 90000)); manaPowderRecipes = new ArrayList<>(); manaPowderRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaResource, 1, 23), new ItemStack(Items.GUNPOWDER), 500)); manaPowderRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaResource, 1, 23), new ItemStack(Items.REDSTONE), 500)); manaPowderRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaResource, 1, 23), new ItemStack(Items.GLOWSTONE_DUST), 500)); manaPowderRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaResource, 1, 23), new ItemStack(Items.SUGAR), 500)); for (int i = 0; i < 16; i++) manaPowderRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaResource, 1, 23), new ItemStack(ModItems.dye, 1, i), 400)); pistonRelayRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModBlocks.pistonRelay), new ItemStack(Blocks.PISTON), 15000); manaCookieRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaCookie), new ItemStack(Items.COOKIE), 20000); grassSeedsRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.grassSeeds), new ItemStack(Blocks.TALLGRASS, 1, 1), 2500); podzolSeedsRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.grassSeeds, 1, 1), new ItemStack(Blocks.DEADBUSH), 2500); mycelSeedsRecipes = new ArrayList<>(); mycelSeedsRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.grassSeeds, 1, 2), new ItemStack(Blocks.RED_MUSHROOM), 6500)); mycelSeedsRecipes.add( BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.grassSeeds, 1, 2), new ItemStack(Blocks.BROWN_MUSHROOM), 6500)); manaQuartzRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.quartz, 1, 1), new ItemStack(Items.QUARTZ), 250); tinyPotatoRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModBlocks.tinyPotato), new ItemStack(Items.POTATO), 1337); if (Botania.thaumcraftLoaded) { Item inkwell = Item.REGISTRY.getObject(new ResourceLocation("thaumcraft", "scribing_tools")); manaInkwellRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaInkwell, 1, ModItems.manaInkwell.getMaxDamage()), new ItemStack(inkwell), 35000); } managlassRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModBlocks.manaGlass), new ItemStack(Blocks.GLASS), 150); manaStringRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaResource, 1, 16), new ItemStack(Items.STRING), 5000); if (Botania.gardenOfGlassLoaded) sugarCaneRecipe = BotaniaAPI.registerManaInfusionRecipe( new ItemStack(Items.REEDS), new ItemStack(Blocks.HAY_BLOCK), 2000); BotaniaAPI.registerManaInfusionRecipe( new ItemStack(ModItems.manaBottle), new ItemStack(Items.GLASS_BOTTLE), 5000); }
public static void baka() throws Compat.ItemNotFoundException { Item resource = Compat.getItem("Botania", "manaResource"); Block storage = Compat.getBlock("Botania", "storage"); ItemStack terra = new ItemStack(storage, 1, 1); ItemStack gaia = new ItemStack(resource, 1, 5); Grinder.catalyst.getInput().add(terra); Grinder.catalyst.getInput().add(gaia); Alfheim.vacationTime(); BotaniaAPI.registerSubTile("asgardandelion", SubTileCheaty.class); BotaniaAPI.registerSubTileSignature(SubTileCheaty.class, new Signature("asgardandelion")); BotaniaAPI.addSubTileToCreativeMenu("asgardandelion"); ItemStack cheaty = getFlower("asgardandelion"); SubTileCheaty.lexicon = new LudicrousLexicon("asgardandelion", BotaniaAPI.categoryGenerationFlowers); SubTileCheaty.lexicon.addPage( BotaniaAPI.internalHandler.textPage("avaritia.lexicon.asgardandelion.0")); SubTileCheaty.lexicon.setIcon(cheaty); ExtremeCraftingManager.getInstance() .addRecipe( cheaty, new Object[] { " III ", " IIIII ", " IIXII ", " IIIII ", " III ", " nn N nn ", "nnnnNnnnn", " nn N nn ", " N ", 'I', new ItemStack(LudicrousItems.resource, 1, 6), 'X', new ItemStack(LudicrousItems.resource, 1, 5), 'N', new ItemStack(LudicrousItems.resource, 1, 4), 'n', new ItemStack(LudicrousItems.resource, 1, 3), }); LudicrousBlocks.infinitato = GameRegistry.registerBlock(new BlockInfinitato(), "infinitato"); GameRegistry.registerTileEntity(TileInfinitato.class, "Avaritia_Infinitato"); costumes = new ItemInfinitatoCostume(); GameRegistry.registerItem(costumes, "costumes"); if (Compat.nei) { try { NotEnough.hide(new ItemStack(costumes, 1, OreDictionary.WILDCARD_VALUE)); } catch (Throwable e) { } } Block potato = Compat.getBlock("Botania", "tinyPotato"); ExtremeShapedRecipe tatorecipe = ExtremeCraftingManager.getInstance() .addRecipe( new ItemStack(LudicrousBlocks.infinitato), new Object[] { "IIIIIIIII", "IIIIIIIII", "IIISISIII", "IIIIIIIII", "IISIXISII", "IIISSSIII", "IIIIIIIII", "IIIIIIIII", "IIIIIIIII", 'I', new ItemStack(potato), 'X', new ItemStack(LudicrousItems.resource, 1, 5), 'S', new ItemStack(Items.diamond) }); BlockInfinitato.lexiconEntry = new LudicrousLexicon("infinitato", BotaniaAPI.categoryMisc); BlockInfinitato.lexiconEntry .setLexiconPages( BotaniaAPI.internalHandler.textPage("avaritia.lexicon.infinitato.0"), new PageLudicrousRecipe("avaritia.lexicon.infinitato.1", tatorecipe)) .setIcon(new ItemStack(LudicrousBlocks.infinitato)); }
private static void initTileEntities() { registerTile(TileAltar.class, LibBlockNames.ALTAR); registerTile(TileSpecialFlower.class, LibBlockNames.SPECIAL_FLOWER); registerTile(TileSpreader.class, LibBlockNames.SPREADER); registerTile(TilePool.class, LibBlockNames.POOL); registerTile(TileRuneAltar.class, LibBlockNames.RUNE_ALTAR); registerTile(TilePylon.class, LibBlockNames.PYLON); registerTile(TileDistributor.class, LibBlockNames.DISTRIBUTOR); registerTile(TileManaBeacon.class, LibBlockNames.MANA_BEACON); registerTile(TileManaVoid.class, LibBlockNames.MANA_VOID); registerTile(TileManaDetector.class, LibBlockNames.MANA_DETECTOR); registerTile(TileEnchanter.class, LibBlockNames.ENCHANTER); registerTile(TileTurntable.class, LibBlockNames.TURNTABLE); registerTile(TileTinyPlanet.class, LibBlockNames.TINY_PLANET); registerTile(TileOpenCrate.class, LibBlockNames.OPEN_CRATE); registerTile(TileCraftCrate.class, LibBlockNames.CRAFT_CRATE); registerTile(TileForestEye.class, LibBlockNames.FOREST_EYE); registerTile(TilePlatform.class, LibBlockNames.PLATFORM); registerTile(TileAlfPortal.class, LibBlockNames.ALF_PORTAL); registerTile(TileBifrost.class, LibBlockNames.BIFROST); registerTile(TileFloatingFlower.class, LibBlockNames.MINI_ISLAND); registerTile(TileTinyPotato.class, LibBlockNames.TINY_POTATO); registerTile(TileSpawnerClaw.class, LibBlockNames.SPAWNER_CLAW); registerTile(TileEnderEye.class, LibBlockNames.ENDER_EYE_BLOCK); registerTile(TileStarfield.class, LibBlockNames.STARFIELD); registerTile(TileRFGenerator.class, LibBlockNames.RF_GENERATOR); registerTile(TileBrewery.class, LibBlockNames.BREWERY); registerTile(TileTerraPlate.class, LibBlockNames.TERRA_PLATE); registerTile(TileRedStringContainer.class, LibBlockNames.RED_STRING_CONTAINER); registerTile(TileRedStringDispenser.class, LibBlockNames.RED_STRING_DISPENSER); registerTile(TileRedStringFertilizer.class, LibBlockNames.RED_STRING_FERTILIZER); registerTile(TileRedStringComparator.class, LibBlockNames.RED_STRING_COMPARATOR); registerTile(TileRedStringRelay.class, LibBlockNames.RED_STRING_RELAY); registerTile(TileFloatingSpecialFlower.class, LibBlockNames.FLOATING_SPECIAL_FLOWER); registerTile(TileManaFlame.class, LibBlockNames.MANA_FLAME); registerTile(TilePrism.class, LibBlockNames.PRISM); registerTile(TileCorporeaIndex.class, LibBlockNames.CORPOREA_INDEX); registerTile(TileCorporeaFunnel.class, LibBlockNames.CORPOREA_FUNNEL); registerTile(TilePump.class, LibBlockNames.PUMP); registerTile(TileFakeAir.class, LibBlockNames.FAKE_AIR); registerTile(TileCorporeaInterceptor.class, LibBlockNames.CORPOREA_INTERCEPTOR); registerTile(TileCorporeaCrystalCube.class, LibBlockNames.CORPOREA_CRYSTAL_CUBE); registerTile(TileIncensePlate.class, LibBlockNames.INCENSE_PLATE); registerTile(TileHourglass.class, LibBlockNames.HOURGLASS); registerTile(TileSparkChanger.class, LibBlockNames.SPARK_CHANGER); registerTile(TileCocoon.class, LibBlockNames.COCOON); registerTile(TileLightRelay.class, LibBlockNames.LIGHT_RELAY); registerTile(TileCacophonium.class, LibBlockNames.CACOPHONIUM); registerTile(TileBellows.class, LibBlockNames.BELLOWS); registerTile(TileCell.class, LibBlockNames.CELL_BLOCK); registerTile(TileRedStringInterceptor.class, LibBlockNames.RED_STRING_INTERCEPTOR); registerTile(TileGaiaHead.class, LibBlockNames.GAIA_HEAD); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_PUREDAISY, SubTilePureDaisy.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_MANASTAR, SubTileManastar.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_DAYBLOOM, SubTileDaybloom.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_ENDOFLAME, SubTileEndoflame.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_HYDROANGEAS, SubTileHydroangeas.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_THERMALILY, SubTileThermalily.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_NIGHTSHADE, SubTileNightshade.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_ARCANE_ROSE, SubTileArcaneRose.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_MUNCHDEW, SubTileMunchdew.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_ENTROPINNYUM, SubTileEntropinnyum.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_KEKIMURUS, SubTileKekimurus.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_GOURMARYLLIS, SubTileGourmaryllis.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_NARSLIMMUS, SubTileNarslimmus.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_SPECTROLUS, SubTileSpectrolus.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_DANDELIFEON, SubTileDandelifeon.class); registerSubTileWithMini(LibBlockNames.SUBTILE_BELLETHORN, SubTileBellethorn.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_DREADTHORN, SubTileDreadthorn.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_HEISEI_DREAM, SubTileHeiseiDream.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_TIGERSEYE, SubTileTigerseye.class); BotaniaAPI.registerSubTile( LibBlockNames.SUBTILE_JADED_AMARANTHUS, SubTileJadedAmaranthus.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_ORECHID, SubTileOrechid.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_ORECHID_IGNEM, SubTileOrechidIgnem.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_FALLEN_KANADE, SubTileFallenKanade.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_EXOFLAME, SubTileExoflame.class); registerSubTileWithMini(LibBlockNames.SUBTILE_AGRICARNATION, SubTileAgricarnation.class); registerSubTileWithMini(LibBlockNames.SUBTILE_HOPPERHOCK, SubTileHopperhock.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_TANGLEBERRIE, SubTileTangleberrie.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_JIYUULIA, SubTileJiyuulia.class); registerSubTileWithMini(LibBlockNames.SUBTILE_RANNUNCARPUS, SubTileRannuncarpus.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_HYACIDUS, SubTileHyacidus.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_POLLIDISIAC, SubTilePollidisiac.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_CLAYCONIA, SubTileClayconia.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_LOONIUM, SubTileLoonuim.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_DAFFOMILL, SubTileDaffomill.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_VINCULOTUS, SubTileVinculotus.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_SPECTRANTHEMUM, SubTileSpectranthemum.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_MEDUMONE, SubTileMedumone.class); registerSubTileWithMini(LibBlockNames.SUBTILE_MARIMORPHOSIS, SubTileMarimorphosis.class); registerSubTileWithMini(LibBlockNames.SUBTILE_BUBBELL, SubTileBubbell.class); BotaniaAPI.registerSubTile(LibBlockNames.SUBTILE_SOLEGNOLIA, SubTileSolegnolia.class); }