package net.minecraft.client.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.net.URI;
import net.minecraft.client.settings.GameSettings;
import net.minecraft.util.StatCollector;
import org.lwjgl.input.Keyboard;
import org.lwjgl.opengl.GL11;
@SideOnly(Side.CLIENT)
public class GuiScreenDemo extends GuiScreen
{
/**
* Adds the buttons (and other controls) to the screen in question.
*/
public void initGui()
{
this.controlList.clear();
byte var1 = -16;
this.controlList.add(new GuiButton(1, this.width / 2 - 116, this.height / 2 + 62 + var1, 114, 20, StatCollector.translateToLocal("demo.help.buy")));
this.controlList.add(new GuiButton(2, this.width / 2 + 2, this.height / 2 + 62 + var1, 114, 20, StatCollector.translateToLocal("demo.help.later")));
}
/**
* Fired when a control is clicked. This is the equivalent of ActionListener.actionPerformed(ActionEvent e).
*/
protected void actionPerformed(GuiButton par1GuiButton)
{
switch (par1GuiButton.id)
{
case 1:
par1GuiButton.enabled = false;
try
{
Class var2 = Class.forName("java.awt.Desktop");
Object var3 = var2.getMethod("getDesktop", new Class[0]).invoke((Object)null, new Object[0]);
var2.getMethod("browse", new Class[] {URI.class}).invoke(var3, new Object[] {new URI("http://www.minecraft.net/store?source=demo")});
}
catch (Throwable var4)
{
var4.printStackTrace();
}
break;
case 2:
this.mc.displayGuiScreen((GuiScreen)null);
this.mc.setIngameFocus();
}
}
/**
* Called from the main game loop to update the screen.
*/
public void updateScreen()
{
super.updateScreen();
}
/**
* Draws either a gradient over the background screen (when it exists) or a flat gradient over background.png
*/
public void drawDefaultBackground()
{
super.drawDefaultBackground();
int var1 = this.mc.renderEngine.getTexture("/gui/demo_bg.png");
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
this.mc.renderEngine.bindTexture(var1);
int var2 = (this.width - 248) / 2;
int var3 = (this.height - 166) / 2;
this.drawTexturedModalRect(var2, var3, 0, 0, 248, 166);
}
/**
* Draws the screen and all the components in it.
*/
public void drawScreen(int par1, int par2, float par3)
{
this.drawDefaultBackground();
int var4 = (this.width - 248) / 2 + 10;
int var5 = (this.height - 166) / 2 + 8;
this.fontRenderer.drawString(StatCollector.translateToLocal("demo.help.title"), var4, var5, 2039583);
var5 += 12;
GameSettings var7 = this.mc.gameSettings;
String var6 = StatCollector.translateToLocal("demo.help.movementShort");
var6 = String.format(var6, new Object[] {Keyboard.getKeyName(var7.keyBindForward.keyCode), Keyboard.getKeyName(var7.keyBindLeft.keyCode), Keyboard.getKeyName(var7.keyBindBack.keyCode), Keyboard.getKeyName(var7.keyBindRight.keyCode)});
this.fontRenderer.drawString(var6, var4, var5, 5197647);
var6 = StatCollector.translateToLocal("demo.help.movementMouse");
this.fontRenderer.drawString(var6, var4, var5 + 12, 5197647);
var6 = StatCollector.translateToLocal("demo.help.jump");
var6 = String.format(var6, new Object[] {Keyboard.getKeyName(var7.keyBindJump.keyCode)});
this.fontRenderer.drawString(var6, var4, var5 + 24, 5197647);
var6 = StatCollector.translateToLocal("demo.help.inventory");
var6 = String.format(var6, new Object[] {Keyboard.getKeyName(var7.keyBindInventory.keyCode)});
this.fontRenderer.drawString(var6, var4, var5 + 36, 5197647);
this.fontRenderer.drawSplitString(StatCollector.translateToLocal("demo.help.fullWrapped"), var4, var5 + 68, 218, 2039583);
super.drawScreen(par1, par2, par3);
}
}