bspkrs icon

Beginning of IngameInfo ML class

bspkrs | PRO | 11/30/12 09:31:57 PM UTC | 0 ⭐ | 341 👁️ | Never ⏰ | []
Java |

3.37 KB

|

None

|

0 👍

/

0 👎

package net.minecraft.src;
 
import java.io.*;
import java.net.URL;
import java.util.*;
import java.util.logging.Level;
import java.text.SimpleDateFormat;
import net.minecraft.client.Minecraft;
 
public class mod_ingameInfo extends BaseMod
{
    private Minecraft minecraft;
    private ScaledResolution scaledResolution;
    private int alignMode;
    int y[];
    String text[];
    String fileName;
    private boolean checkUpdate;
 
    public mod_ingameInfo()
    {
        minecraft = ModLoader.getMinecraftInstance();
        y = new int[3];
        fileName = "ingameInfo";
        text = loadText(new File(Minecraft.getMinecraftDir(), (new StringBuilder()).append("/mods/daftpvf/").append(fileName).toString()));
        ModLoader.setInGameHook(this, true, false);
        checkUpdate = true;
    }
 
    public void load()
    {
        if(!isCurrentVersion(ModLoader.getMinecraftInstance()))
            ModLoader.getLogger().log(Level.INFO, "Your version of IngameInfo is out of date! Visit http://www.minecraftforum.net/topic/1009577- for the latest version.");
    }
 
    public String getVersion()
    {
        return "1.3.1.h modified by bspkrs";
    }
 
    public boolean onTickInGame(float f, Minecraft mc)
    {
        if(mc.inGameHasFocus && !mc.gameSettings.showDebugInfo)
        {
            scaledResolution = new ScaledResolution(mc.gameSettings, mc.displayWidth, mc.displayHeight);
            y = (new int[] {
                0, 0, 0, 0, 0, 0, 0, 0, 0
            });
            String lines[] = text;
            int i = lines.length;
            for(int j = 0; j < i; j++)
            {
                String s = lines[j];
                s = replaceAllTags(s);
                mc.fontRenderer.drawStringWithShadow(s, getX(mc.fontRenderer.getStringWidth(s)), getY(i, y[alignMode]), 0xffffff);
                y[alignMode]++;
            }
 
        }
        
        if(checkUpdate)
        {
            if(!isCurrentVersion(mc) && mc.inGameHasFocus)
            {
                minecraft.thePlayer.addChatMessage("&cYour version of IngameInfo is out of date!");
                minecraft.thePlayer.addChatMessage("&cVisit http://www.minecraftforum.net/topic/1009577- for the latest version.");
            }
            checkUpdate = false;
        }
        return true;
    }
    
    private boolean isCurrentVersion(Minecraft minecraft)
    {
        try
        {
            String[] version = loadTextFromURL(new URL("https://dl.dropbox.com/u/20748481/Minecraft/1.3.1/ingameInfo.version"));
            return version[0].equalsIgnoreCase(getVersion());
        }
        catch(Exception e)
        {
            ModLoader.getLogger().log(Level.WARNING, "Error getting current version info: " + e.getStackTrace());
            return true;
        }
    }
 
    private String[] loadTextFromURL(URL url)
    {
        ArrayList arraylist = new ArrayList();
        Scanner scanner = null;
        try
        {
            scanner = new Scanner(url.openStream(), "UTF-8");
        }
        catch(FileNotFoundException filenotfoundexception) { } catch (IOException e) {
            ModLoader.getLogger().log(Level.WARNING, "Error getting current version info: " + e.getStackTrace());
        }
        while(scanner.hasNextLine())
        {
            arraylist.add(scanner.nextLine());
        }
        scanner.close();
        return (String[])arraylist.toArray(new String[arraylist.size()]);
    }

Comments