public AERecipeLoader() { this.mod = Loader.instance().getIndexedModList().get( AppEng.MOD_ID ); this.ctx = new JsonContext( AppEng.MOD_ID ); this.initFactories(); }
@Override protected void renderHoveredToolTip( int mouseX, int mouseY ) { final Slot slot = this.getSlot( mouseX, mouseY ); if( slot != null && slot instanceof IMEFluidSlot && slot.isEnabled() ) { final IMEFluidSlot fluidSlot = (IMEFluidSlot) slot; if( fluidSlot.getAEFluidStack() != null && fluidSlot.shouldRenderAsFluid() ) { final IAEFluidStack fluidStack = fluidSlot.getAEFluidStack(); final String formattedAmount = NumberFormat.getNumberInstance( Locale.US ).format( fluidStack.getStackSize() / 1000.0 ) + " B"; final String modName = "" + TextFormatting.BLUE + TextFormatting.ITALIC + Loader.instance() .getIndexedModList() .get( Platform.getModId( fluidStack ) ) .getName(); final List<String> list = new ArrayList<>(); list.add( fluidStack.getFluidStack().getLocalizedName() ); list.add( formattedAmount ); list.add( modName ); this.drawHoveringText( list, mouseX, mouseY ); return; } } super.renderHoveredToolTip( mouseX, mouseY ); }
/** * Gets a mod container by it's ID. * * @param modID The ID of the mod to grab. * @return The ModContainer using that ID. */ public static ModContainer getModContainer (String modID) { return Loader.instance().getIndexedModList().get(modID); }
private ForgeModIdHelper() { this.modMap = Loader.instance().getIndexedModList(); }
public static String[] getResourceListing(String mod, String path) { List<String> all = Lists.newArrayList(); if (CraftingHelper.findFiles(Loader.instance().getIndexedModList().get(mod), "assets/" + mod + "/" + path, null, (root, full) -> all.add(root.relativize(full).toString()), false, false)) return all.toArray(new String[0]); return new String[0]; }
private static void init() { Map<String, ModContainer> modMap = Loader.instance().getIndexedModList(); for (Map.Entry<String, ModContainer> modEntry : modMap.entrySet()) { String lowercaseId = modEntry.getKey().toLowerCase(Locale.ENGLISH); String modName = modEntry.getValue().getName(); modNamesForIds.put(lowercaseId, modName); } }
private static ModContainer findModContainer(ResourceLocation id) { if (id == null) return null; String modId = id.getResourceDomain(); return Loader.instance().getIndexedModList().get(modId); } }
public void register(String method, String modid) { String[] data = method.split("\\."); String methodName = data[data.length - 1]; String className = method.substring(0, method.length() - methodName.length() - 1); String modName = Loader.instance().getIndexedModList().get(modid).getName(); try { Class clazz = Class.forName(className); Method registerMethod = clazz.getDeclaredMethod(methodName, IRecipeRegistry.class); registerMethod.invoke(null, (IRecipeRegistry) RecipeRegistryComm.getInstance(modName)); } catch(Exception e) { logger.info("RecipeAPI: Unable to register comm recipes for " + modid); e.printStackTrace(); } }
@SuppressWarnings("UnusedDeclaration") @EventHandler public void init(@SuppressWarnings("UnusedParameters") FMLInitializationEvent event) { ModContainer thisMod = Loader.instance().getIndexedModList().get(ModInfo.MODID); if(thisMod != null) { String fileName = thisMod.getSource().getName(); if(fileName.contains("-dev") || !fileName.contains(".jar")) { ModInfo.DEBUG_MODE = true; MinerLogger.debug("Enabling debug mode"); } } }
public void copyAllRecipes(File directory) { Map<String, ModContainer> modList = Loader.instance().getIndexedModList(); for (Map.Entry<String, ModContainer> entry : modList.entrySet() ) { for (String recipeName : getResourceListing(entry.getKey(), "fluid_recipes")) { if (recipeName.isEmpty()) continue; InputStream stream = LibrarianLib.PROXY.getResource(entry.getKey(), "fluid_recipes/" + recipeName); if (stream == null) { Wizardry.logger.fatal(" > SOMETHING WENT WRONG! Could not read recipe " + recipeName + " from mod jar of '" + entry.getKey() + "'! Report this to the devs on Github!"); continue; } try { FileUtils.copyInputStreamToFile(stream, new File(directory, recipeName)); Wizardry.logger.info(" > Mana recipe " + recipeName + " copied successfully from mod jar."); } catch (IOException e) { e.printStackTrace(); } } } }
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 @Nonnull String block2Modname(IForgeRegistryEntry<?> block) { if (block != null) { final ResourceLocation registryName = block.getRegistryName(); if (registryName != null) { final String modid = registryName.getResourceDomain(); if (!Strings.isBlank(modid)) { final ModContainer modContainer = Loader.instance().getIndexedModList().get(modid); if (modContainer != null) { String name = modContainer.getName(); if (name != null && !name.trim().isEmpty()) { return name; } } } } } return "(???)"; }
final ModContainer imb = net.minecraftforge.fml.common.Loader.instance().getIndexedModList().get( "ImmibisCore" ); if( imb != null )
private static Map<File, Set<ModContainer>> makeModMap() { Map<File, Set<ModContainer>> modMap = new HashMap<>(); for (ModContainer mod : Loader.instance().getModList()) { Set<ModContainer> currentMods = modMap.getOrDefault(mod.getSource(), new HashSet<>()); currentMods.add(mod); try { modMap.put(mod.getSource().getCanonicalFile(), currentMods); } catch (IOException e) { throw new RuntimeException(e); } } try { modMap.remove(Loader.instance().getMinecraftModContainer().getSource()); // Ignore minecraft jar (minecraft) modMap.remove(Loader.instance().getIndexedModList().get("FML").getSource()); // Ignore forge jar (FML, forge) } catch (NullPointerException ignored) { // Workaround for https://github.com/MinecraftForge/MinecraftForge/issues/4919 } return modMap; }
public String getModName() { if (modName == null) { ResourceLocation rl = item.getRegistryName(); assert rl != null; Map<String, ModContainer> modList = Loader.instance().getIndexedModList(); ModContainer mc = modList.get(rl.getResourceDomain()); if (mc == null) { // get mod that really registered this item Map<ResourceLocation, String> map = ReflectionHelper.invokePrivateMethod(ForgeRegistry.class, ForgeRegistries.ITEMS, "getOverrideOwners", "getOverrideOwners", new Class[0], new Object[0]); final String key = map.get(rl); if (key != null) mc = modList.get(key); } modName = mc != null ? mc.getName() : "UNKNOWN"; } return modName; }
@SideOnly(Side.CLIENT) public void getTooltip(List<String> tooltip) { TooltipHelper.addToTooltip(tooltip, getUnlocalizedName()); TooltipHelper.tooltipIfShift(tooltip, () -> addToTooltipAfterShift(tooltip)); String addon = PsiAPI.pieceMods.get(getClass()); if(!addon.equals(LibMisc.MOD_ID)) { ModContainer container = Loader.instance().getIndexedModList().get(addon); if (container != null) TooltipHelper.addToTooltip(tooltip, "psimisc.providerMod", container.getName()); } }
public static boolean isModVersionEqualsOrHigher(String modId, String version) { ComparableVersion v1 = new ComparableVersion(version); ModContainer mod = Loader.instance().getIndexedModList().get(modId); if (mod != null) { ComparableVersion v2 = new ComparableVersion(mod.getVersion()); return v1.compareTo(v2) <= 0; } return false; } }
@SuppressWarnings("unused") @EventHandler public void init(@SuppressWarnings("UnusedParameters") FMLInitializationEvent event) { MinecraftForge.EVENT_BUS.register(this); ModContainer thisMod = Loader.instance().getIndexedModList().get(ModInfo.MOD_ID); if(thisMod != null) { String fileName = thisMod.getSource().getName(); if(fileName.contains("-dev") || !fileName.contains(".jar")) { debugMode = true; devLog("DEV VERSION"); } } forceConsumerAvailable = false; if(AUTODETECT_TOOLS_TOGGLE) { addTools(); } }
public static boolean isModLoaded(String modname, @Nullable String versionRangeString) { if (!isModLoaded(modname)) { return false; } if (versionRangeString != null) { ModContainer mod = Loader.instance().getIndexedModList().get(modname); ArtifactVersion modVersion = mod.getProcessedVersion(); VersionRange versionRange = VersionParser.parseRange(versionRangeString); DefaultArtifactVersion requiredVersion = new DefaultArtifactVersion(modname, versionRange); return requiredVersion.containsVersion(modVersion); } return true; }
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()); }