private static boolean checkIncompatibleMods() { if(!checkedIncompatibility) { hasIncompatibleMods = Loader.isModLoaded("optifine"); checkedIncompatibility = true; } return !hasIncompatibleMods; }
static void putMaterialTrace(String materialIdentifier) { ModContainer activeMod = Loader.instance().activeModContainer(); materialRegisteredByMod.put(materialIdentifier, activeMod); }
public AERecipeLoader() { this.mod = Loader.instance().getIndexedModList().get( AppEng.MOD_ID ); this.ctx = new JsonContext( AppEng.MOD_ID ); this.initFactories(); }
public void registerModels() { if(Loader.instance().hasReachedState(LoaderState.INITIALIZATION)) { TConstruct.log.error( "Proxy.registerModels has to be called during preInit. Otherwise the models wont be found on first load."); } }
public static boolean isModLoaded(String modId) { if (modId.contains("@")) { String version = modId.substring(modId.indexOf('@') + 1); modId = modId.substring(0, modId.indexOf('@')); if (Loader.isModLoaded(modId)) { ModContainer mod = Loader.instance().getIndexedModList().get(modId); if (mod != null) { return mod.getVersion().startsWith(version); } } return false; } else if (Loader.isModLoaded(modId)) { return true; } else { return ModAPIManager.INSTANCE.hasAPI(modId); } }
public static boolean isModLoaded( final String modid ) { try { // if this fails for some reason, try the other method. return Loader.isModLoaded( modid ); } catch( final Throwable ignored ) { } for( final ModContainer f : Loader.instance().getActiveModList() ) { if( f.getModId().equals( modid ) ) { return true; } } return false; }
/** * Creates a new Configuration object. * * Do NOT make this the same as the overall mod configuration; it will clobber it! * * @param confName The config file name (without path or .json suffix) * @param logger The logger to send debug info to. */ public Configuration(String confName, Logger logger) { this.confPath = Loader.instance().getConfigDir().toString() + File.separator + confName + ".json"; this.logger = logger; }
@Override public void registerCustomEMC(@Nonnull Object o, long value) { Preconditions.checkNotNull(o); boolean flag = Loader.instance().isInState(LoaderState.PREINITIALIZATION) || Loader.instance().isInState(LoaderState.INITIALIZATION) || Loader.instance().isInState(LoaderState.POSTINITIALIZATION); Preconditions.checkState(flag, String.format("Mod %s tried to register EMC at an invalid time!", Loader.instance().activeModContainer().getModId())); APICustomEMCMapper.instance.registerCustomEMC(o, value); PECore.debugLog("Mod {} registered emc value {} for Object {}", Loader.instance().activeModContainer().getModId(), value, o); }
public static void register() { if (disableAll || registered) { return; } ModContainer callingContainer = Loader.instance().activeModContainer(); ModContainer cofhContainer = FMLCommonHandler.instance().findContainerFor(CoFHCore.MOD_ID); Loader.instance().setActiveModContainer(cofhContainer); MinecraftForge.EVENT_BUS.register(INSTANCE); registered = true; Loader.instance().setActiveModContainer(callingContainer); }
public static void loadRecipes() { ModContainer awModContainer = Loader.instance().activeModContainer(); //noinspection ConstantConditions loadRecipes(awModContainer, new File(AWCoreStatics.configPathForFiles + "research_recipes"), ""); Loader.instance().getActiveModList().forEach(m -> AWCraftingManager.loadRecipes(m, m.getSource(), "assets/" + m.getModId() + "/research_recipes")); Loader.instance().setActiveModContainer(awModContainer); }
public InventoryTweaksModule() { try { this.api = (InvTweaksAPI) Class.forName( "invtweaks.forge.InvTweaksMod", true, Loader.instance().getModClassLoader() ) .getField( "instance" ) .get( null ); } catch( Exception ex ) { } }
final Loader loader = Loader.instance(); final List<ModContainer> mods = loader.getActiveModList();
@SubscribeEvent(priority = EventPriority.LOW) public static void registerAddonBlocks(@Nonnull RegistryEvent.Register<Block> event) { for (ModContainer modContainer : Loader.instance().getModList()) { Object mod = modContainer.getMod(); if (mod instanceof IEnderIOAddon) { ((IEnderIOAddon) mod).injectBlocks(NullHelper.notnullF(event.getRegistry(), "RegistryEvent.Register<Block>.getRegistry()")); } } }
public CraftTweakerRecipeMapper() { //Check to make sure it is a version of CraftTweaker that uses the new Recipe System ctCompat = Loader.isModLoaded("crafttweaker") && VersionParser.parseVersionReference("crafttweaker@[4.1.5,)").containsVersion(Loader.instance().getIndexedModList().get("crafttweaker").getProcessedVersion()); }
public static File getConfigDir() { return new File(Loader.instance().getConfigDir(), "CustomOreGen"); }
@Override public void registerCustomEMC(@Nonnull ItemStack stack, long value) { Preconditions.checkNotNull(stack); boolean flag = Loader.instance().isInState(LoaderState.PREINITIALIZATION) || Loader.instance().isInState(LoaderState.INITIALIZATION) || Loader.instance().isInState(LoaderState.POSTINITIALIZATION); Preconditions.checkState(flag, String.format("Mod %s tried to register EMC at an invalid time!", Loader.instance().activeModContainer().getModId())); APICustomEMCMapper.instance.registerCustomEMC(stack, value); PECore.debugLog("Mod {} registered emc value {} for itemstack {}", Loader.instance().activeModContainer().getModId(), value, stack.toString()); }
public static void register() { if (disableAll || registered) { return; } ModContainer callingContainer = Loader.instance().activeModContainer(); ModContainer cofhContainer = FMLCommonHandler.instance().findContainerFor(CoFHCore.MOD_ID); Loader.instance().setActiveModContainer(cofhContainer); MinecraftForge.EVENT_BUS.register(INSTANCE); registered = true; Loader.instance().setActiveModContainer(callingContainer); }
@Override public void transform(BookData book, SectionData data) { ContentListing listing = new ContentListing(); listing.title = book.translate(sectionName); addPage(data, sectionName, "", listing); // don't do stuff during preinit etc, we only want to fill it once everything is added if(!Loader.instance().hasReachedState(LoaderState.POSTINITIALIZATION)) { return; } MATERIAL_TYPES_ON_DISPLAY.forEach(type -> { int pageIndex = data.pages.size(); generateContent(type, data); if(pageIndex < data.pages.size()) { listing.addEntry(getStatName(type), data.pages.get(pageIndex)); } }); }