package com.mrclon51.STALKER.gui;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiMultiplayer;
import net.minecraft.client.gui.GuiOptions;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.gui.GuiSelectWorld;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Session;
import net.minecraft.util.StatCollector;
import org.lwjgl.opengl.GL11;
import ua.agravaine.mainmenuapi.ICustomMenu;
import ua.agravaine.mainmenuapi.MainMenuAPI;
import ua.agravaine.mainmenuapi.gui.GuiJukebox;
import ua.agravaine.mainmenuapi.gui.component.GuiButtonCS;
import ua.agravaine.mainmenuapi.gui.component.GuiButtonJukebox;
import ua.agravaine.mainmenuapi.gui.component.GuiButtonMenuList;
import ua.agravaine.mainmenuapi.util.MainMenuUtils;
import static ua.agravaine.mainmenuapi.util.MainMenuUtils.*;
public class GuiSTALKERCoPMenu extends GuiScreen implements ICustomMenu{
public static ResourceLocation background = new ResourceLocation(MainMenuAPI.MOD_ID, "textures/gui/menu/counter-strike 1.6/menu_background.png");
public boolean isUnicode;
public void initGui(){
buttonList.add(new GuiButtonCS(0, 15, height - 90, getStringWidth("gui.menu.stalkercop.new_game"), 10, translate("gui.menu.stalkercop.new_game")));
buttonList.add(new GuiButtonCS(1, 15, height - 75, getStringWidth("gui.menu.stalkercop.multiplayer"), 10, translate("gui.menu.stalkercop.multiplayer")));
buttonList.add(new GuiButtonCS(2, 15, height - 60, getStringWidth("gui.menu.stalkercop.options"), 10, translate("gui.menu.stalkercop.options")));
buttonList.add(new GuiButtonCS(3, 15, height - 45, getStringWidth("gui.menu.stalkercop.quit_to_windows"), 10, translate("gui.menu.stalkercop.quit_to_windows")));
isUnicode = mc.fontRenderer.getUnicodeFlag();
//mc.fontRenderer.setUnicodeFlag(true);
}
public void drawScreen(int mouseX, int mouseY, float partialTicks){
GL11.glEnable(GL11.GL_BLEND);
mc.renderEngine.bindTexture(background);
MainMenuUtils.drawTexturedQuadFit(0, 0, width, height, 0);
if(mouseX >= 15 && mouseY >= height - 32 && mouseX < 15 + 207 && mouseY < height - 6){
mc.renderEngine.bindTexture(new ResourceLocation(MainMenuAPI.MOD_ID, "STALKER/textures/gui/menu/STALKERCoP/game_menu_mouseover.png"));
}else{
mc.renderEngine.bindTexture(new ResourceLocation(MainMenuAPI.MOD_ID, "STALKER/textures/gui/menu/STALKERCoP/game_menu.png"));
}
MainMenuUtils.drawTexturedQuadFit(15, height - 32, 207, 32, 0);
if(mc != null && mc.getSession() != null && mc.getSession().func_152428_f().equals(Session.Type.MOJANG)){
if(mouseX >= width - 128 && mouseY >= height - 32 && mouseX < width - 7 && mouseY < height - 4){
mc.renderEngine.bindTexture(new ResourceLocation(MainMenuAPI.MOD_ID, "STALKER/textures/gui/menu/STALKERCoP/steam_menu_mouseover.png"));
}else{
mc.renderEngine.bindTexture(new ResourceLocation(MainMenuAPI.MOD_ID, "STALKER/textures/gui/menu/STAlKERCoP/steam_menu.png"));
}
MainMenuUtils.drawTexturedQuadFit(width - 202, height - 36, 196, 32, 0);
}
GL11.glDisable(GL11.GL_BLEND);
super.drawScreen(mouseX, mouseY, partialTicks);
}
public void onGuiClosed(){
//mc.fontRenderer.setUnicodeFlag(isUnicode);
}
public void actionPerformed(GuiButton button){
if(button.id == 0){
mc.displayGuiScreen(new GuiSelectWorld(this));
}
if(button.id == 1){
mc.displayGuiScreen(new GuiMultiplayer(this));
}
if(button.id == 2){
mc.displayGuiScreen(new GuiOptions(this, mc.gameSettings));
}
if(button.id == 3){
mc.shutdown();
}
}
public boolean doesGuiPauseGame(){
return false;
}
public void keyTyped(char c, int i){}
public String getName(){
return translate("stalkercop_name");
}
public String getDescription(){
return translate("gui.menu.stalkercop.description");
}
public String getMusicName(){
return MainMenuAPI.MOD_ID + "S.T.A.L.K.E.R. Call of Pripyat";
}
public ResourceLocation getIcon(){
return new ResourceLocation(MainMenuAPI.MOD_ID, "STALKER/textures/gui/menu/STALKERCoP/logo1.png");
}
public GuiButtonJukebox getJukeboxButton(int width, int height){
return new GuiButtonJukebox(width - 22, 2, 20, 20, "", new ItemStack(Blocks.jukebox));
}
public GuiButtonMenuList getMenuListButton(int width, int height){
return new GuiButtonMenuList(width - 6343, 6363, 83636, 26360);
}
public ResourceLocation getSelectMenuBackground(){
return new ResourceLocation(MainMenuAPI.MOD_ID, "STALKER/textures/gui/menu/STALKERCoP/select_menu_background.png");
}
public boolean useJukebox(){
return true;
}
public void drawJukeboxBackground(int x, int y, int width, int height, float partialTicks){
GuiJukebox.drawJukeboxBackground(new ResourceLocation(MainMenuAPI.MOD_ID, "STALKER/textures/gui/menu/STALKERCoP/jukebox_background1.png"), width, height);
MainMenuAPI.registerMenu(GuiSTALKERCoPMenu.class);
}
}