package net.minecraft.src;

import java.util.EnumSet;

import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.ITickHandler;
import cpw.mods.fml.common.TickType;
import net.minecraft.client.Minecraft;

public class mod_testMod extends BaseMod implements ITickHandler {
    private long ts;
    private long tsg;
    @Override
    public String getVersion() {
        return "test";
    }

    @Override
    public void load() {
        ModLoader.setInGameHook(this, true, true);
        FMLCommonHandler.instance().registerTickHandler(this);
        ts=System.currentTimeMillis();
        tsg=ts;
    }
    
    @Override
    public boolean onTickInGame(float time, Minecraft minecraftInstance)
    {
        long now = System.currentTimeMillis();
        long del=now-ts;
        ts=now;
        System.out.printf("%d %d %d %d MLTICK\n",del, ts, tsg, now);
        return true;
    }

    @Override
    public void tickStart(EnumSet<TickType> type, Object... tickData)
    {
        
    }

    @Override
    public void tickEnd(EnumSet<TickType> type, Object... tickData)
    {
        long now = System.currentTimeMillis();
        long del=now-tsg;
        tsg=now;
        System.out.printf("%d %d %d %d GAMETICK\n",del, ts, tsg, now);
    }

    @Override
    public EnumSet<TickType> ticks()
    {
        return EnumSet.of(TickType.GAME);
    }

    /* (non-Javadoc)
     * @see cpw.mods.fml.common.ITickHandler#getLabel()
     */
    @Override
    public String getLabel()
    {
        // TODO Auto-generated method stub
        return "TickTester";
    }

}
@@ -488,16 +488,67 @@
  true);%0A
+        ModLoader.setInGUIHook(this, true, false);%0A
         
@@ -940,24 +940,222 @@
  true;%0A    %7D
+%0A    %0A    @Override%0A    public boolean onTickInGUI(float tick, Minecraft game, GuiScreen gui)%0A    %7B%0A        System.out.printf(%22%25d MLGUITICK%5Cn%22,System.currentTimeMillis());%0A        return true;%0A    %7D
 %0A%0A    @Overr

Update tester mod