001 package cpw.mods.fml.client;
002
003 import java.io.File;
004 import java.util.Map.Entry;
005
006 import net.minecraft.client.gui.GuiErrorScreen;
007
008 import cpw.mods.fml.common.DuplicateModsFoundException;
009 import cpw.mods.fml.common.MissingModsException;
010 import cpw.mods.fml.common.ModContainer;
011 import cpw.mods.fml.common.versioning.ArtifactVersion;
012
013 public class GuiDupesFound extends GuiErrorScreen
014 {
015
016 private DuplicateModsFoundException dupes;
017
018 public GuiDupesFound(DuplicateModsFoundException dupes)
019 {
020 this.dupes = dupes;
021 }
022
023 @Override
024
025 /**
026 * Adds the buttons (and other controls) to the screen in question.
027 */
028 public void initGui()
029 {
030 super.initGui();
031 }
032 @Override
033
034 /**
035 * Draws the screen and all the components in it.
036 */
037 public void drawScreen(int par1, int par2, float par3)
038 {
039 this.drawDefaultBackground();
040 int offset = Math.max(85 - dupes.dupes.size() * 10, 10);
041 this.drawCenteredString(this.fontRenderer, "Forge Mod Loader has found a problem with your minecraft installation", this.width / 2, offset, 0xFFFFFF);
042 offset+=10;
043 this.drawCenteredString(this.fontRenderer, "You have mod sources that are duplicate within your system", this.width / 2, offset, 0xFFFFFF);
044 offset+=10;
045 this.drawCenteredString(this.fontRenderer, "Mod Id : File name", this.width / 2, offset, 0xFFFFFF);
046 offset+=5;
047 for (Entry<ModContainer, File> mc : dupes.dupes.entries())
048 {
049 offset+=10;
050 this.drawCenteredString(this.fontRenderer, String.format("%s : %s", mc.getKey().getModId(), mc.getValue().getName()), this.width / 2, offset, 0xEEEEEE);
051 }
052 }
053 }