@Override public void registerItemSubtypes( ISubtypeRegistry subtypeRegistry ) { final Optional<Item> maybeFacade = AEApi.instance().definitions().items().facade().maybeItem(); maybeFacade.ifPresent( subtypeRegistry::useNbtForSubtypes ); }
private void registerFacadeRecipe( IDefinitions definitions, IModRegistry registry ) { Optional<Item> itemFacade = definitions.items().facade().maybeItem(); Optional<ItemStack> cableAnchor = definitions.parts().cableAnchor().maybeStack( 1 ); if( itemFacade.isPresent() && cableAnchor.isPresent() ) { registry.addRecipeRegistryPlugin( new FacadeRegistryPlugin( (ItemFacade) itemFacade.get(), cableAnchor.get() ) ); } }
@Override public ItemStack getIconItemStack() { final Optional<Item> maybeFacade = AEApi.instance().definitions().items().facade().maybeItem(); if( maybeFacade.isPresent() ) { return ( (ItemFacade) maybeFacade.get() ).getCreativeTabIcon(); } return new ItemStack( Blocks.PLANKS ); } }
@Override public Item getItemDropped( final IBlockState state, final Random rand, final int fortune ) { return AEApi.instance() .definitions() .materials() .certusQuartzCrystalCharged() .maybeItem() .orElseThrow( () -> new MissingDefinitionException( "Tried to access charged certus quartz crystal, even though they are disabled" ) ); }
@Override public Item getItemDropped( final IBlockState state, final Random rand, final int fortune ) { return AEApi.instance() .definitions() .materials() .certusQuartzCrystal() .maybeItem() .orElseThrow( () -> new MissingDefinitionException( "Tried to access certus quartz crystal, even though they are disabled" ) ); }
public AEColoredItemDefinition colored( IItemDefinition target, int offset ) { ColoredItemDefinition definition = new ColoredItemDefinition(); target.maybeItem().ifPresent( targetItem -> { for( final AEColor color : AEColor.VALID_COLORS ) { final ActivityState state = ActivityState.from( target.isEnabled() ); definition.add( color, new ItemStackSrc( targetItem, offset + color.ordinal(), state ) ); } } ); return definition; }
ids[0] = Math.abs( ids[0] ); Optional<Item> maybeFacadeItem = AEApi.instance().definitions().items().facade().maybeItem(); if( maybeFacadeItem.isPresent() )
@SubscribeEvent public void registerRecipes( RegistryEvent.Register<IRecipe> event ) { final IForgeRegistry<IRecipe> registry = event.getRegistry(); final Api api = Api.INSTANCE; final ApiDefinitions definitions = api.definitions(); final Side side = FMLCommonHandler.instance().getEffectiveSide(); if( AEConfig.instance().isFeatureEnabled( AEFeature.ENABLE_DISASSEMBLY_CRAFTING ) ) { DisassembleRecipe r = new DisassembleRecipe(); registry.register( r.setRegistryName( AppEng.MOD_ID.toLowerCase(), "disassemble" ) ); } if( AEConfig.instance().isFeatureEnabled( AEFeature.ENABLE_FACADE_CRAFTING ) ) { definitions.items().facade().maybeItem().ifPresent( facadeItem -> { FacadeRecipe f = new FacadeRecipe( (ItemFacade) facadeItem ); registry.register( f.setRegistryName( AppEng.MOD_ID.toLowerCase(), "facade" ) ); } ); } definitions.getRegistry().getBootstrapComponents( IRecipeRegistrationComponent.class ).forEachRemaining( b -> b.recipeRegistration( side, registry ) ); final AERecipeLoader ldr = new AERecipeLoader(); ldr.loadProcessingRecipes(); }
items.wirelessTerminal().maybeItem().ifPresent( terminal -> registries.wireless().registerWirelessHandler( (IWirelessTermHandler) terminal ) ); items.chargedStaff().maybeItem().ifPresent( chargedStaff -> registries.charger().addChargeRate( chargedStaff, 320d ) ); items.portableCell().maybeItem().ifPresent( chargedStaff -> registries.charger().addChargeRate( chargedStaff, 800d ) ); items.colorApplicator().maybeItem().ifPresent( colorApplicator -> registries.charger().addChargeRate( colorApplicator, 800d ) ); items.wirelessTerminal().maybeItem().ifPresent( terminal -> registries.charger().addChargeRate( terminal, 8000d ) ); items.entropyManipulator().maybeItem().ifPresent( entropyManipulator -> registries.charger().addChargeRate( entropyManipulator, 8000d ) ); items.massCannon().maybeItem().ifPresent( massCannon -> registries.charger().addChargeRate( massCannon, 8000d ) ); blocks.energyCell().maybeItem().ifPresent( cell -> registries.charger().addChargeRate( cell, 8000d ) ); blocks.energyCellDense().maybeItem().ifPresent( cell -> registries.charger().addChargeRate( cell, 16000d ) );
public static void registerItemColors() { IItemColor dummyItemColor = new ThEItemColors.DummyAspectItemColors(); ThEApi.instance().items().dummyAspect().maybeItem() .ifPresent(item -> Minecraft.getMinecraft().getItemColors().registerItemColorHandler(dummyItemColor, item)); IItemColor terminalItemColor = new ThEItemColors.TerminalItemColor(); //IBlockColor terminalBlockColor = new ThEItemColors.TerminalBlockColor(); ThEApi.instance().items().arcaneTerminal().maybeItem().ifPresent(item -> { Minecraft.getMinecraft().getItemColors().registerItemColorHandler(terminalItemColor, item); // Minecraft.getMinecraft().getBlockColors().registerBlockColorHandler(terminalBlockColor, item); }); ThEApi.instance().items().essentiaTerminal().maybeItem() .ifPresent(item -> Minecraft.getMinecraft().getItemColors().registerItemColorHandler(terminalItemColor, item)); }
BlocksTC.tube ))); ThEApi.instance().items().essentiaStorageBus().maybeItem().ifPresent(item -> ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(ModGlobals.MOD_ID, "essentia_storage_bus"), new ShapelessArcaneRecipe( recipeGroup, ItemsTC.salisMundus ))); ThEApi.instance().items().essentiaTerminal().maybeItem().ifPresent(essentia -> { ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(ModGlobals.MOD_ID, "essentia_terminal"), new ShapelessArcaneRecipe( recipeGroup, )); }); ThEApi.instance().items().arcaneTerminal().maybeItem().ifPresent(arcane -> ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(ModGlobals.MOD_ID, "arcane_terminal"), new ShapelessArcaneRecipe( recipeGroup, AEApi.instance().definitions().materials().calcProcessor().maybeStack(1).orElse(ItemStack.EMPTY) ))); ThEApi.instance().items().upgradeArcane().maybeItem().ifPresent(upgrade -> { ThaumcraftApi.addArcaneCraftingRecipe(new ResourceLocation(ModGlobals.MOD_ID, "upgrade_arcane"), new ShapelessArcaneRecipe( recipeGroup,
else if (tis.getItem() == AEApi.instance().definitions().items().viewCell().maybeItem().get()) { if (mergeItemStack(tis.copy(), 54, 58, false)) { if (tis.getCount() > 1) {