package net.minecraft.client.gui; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.io.IOException; import net.minecraft.client.Minecraft; import net.minecraft.client.mco.ExceptionMcoService; import net.minecraft.client.mco.McoClient; import net.minecraft.client.mco.McoServer; import net.minecraft.util.StringTranslate; import org.lwjgl.input.Keyboard; @SideOnly(Side.CLIENT) public class GuiScreenConfigureWorld extends GuiScreen { private final GuiScreen field_96285_a; private McoServer field_96280_b; private SelectionListInvited field_96282_c; private int field_96277_d; private int field_96286_n; private int field_96287_o; private int field_96284_p = -1; private String field_96283_q; private GuiButton field_96281_r; private GuiButton field_96279_s; private GuiButton field_96278_t; private GuiButton field_96276_u; private GuiButton field_98128_v; private GuiButton field_98127_w; private GuiButton field_98129_x; private boolean field_102020_y; public GuiScreenConfigureWorld(GuiScreen par1, McoServer par2) { this.field_96285_a = par1; this.field_96280_b = par2; } /** * Called from the main game loop to update the screen. */ public void updateScreen() {} /** * Adds the buttons (and other controls) to the screen in question. */ public void initGui() { StringTranslate stringtranslate = StringTranslate.getInstance(); this.field_96277_d = this.width / 2 - 200; this.field_96286_n = 180; this.field_96287_o = this.width / 2; Keyboard.enableRepeatEvents(true); this.buttonList.clear(); if (this.field_96280_b.field_96404_d.equals("CLOSED")) { this.buttonList.add(this.field_96281_r = new GuiButton(0, this.field_96277_d, this.func_96264_a(12), this.field_96286_n / 2 - 2, 20, stringtranslate.translateKey("mco.configure.world.buttons.open"))); this.field_96281_r.enabled = !this.field_96280_b.field_98166_h; } else { this.buttonList.add(this.field_96279_s = new GuiButton(1, this.field_96277_d, this.func_96264_a(12), this.field_96286_n / 2 - 2, 20, stringtranslate.translateKey("mco.configure.world.buttons.close"))); this.field_96279_s.enabled = !this.field_96280_b.field_98166_h; } this.buttonList.add(this.field_98129_x = new GuiButton(7, this.field_96277_d + this.field_96286_n / 2 + 2, this.func_96264_a(12), this.field_96286_n / 2 - 2, 20, stringtranslate.translateKey("mco.configure.world.buttons.subscription"))); this.buttonList.add(this.field_96278_t = new GuiButton(5, this.field_96277_d, this.func_96264_a(10), this.field_96286_n / 2 - 2, 20, stringtranslate.translateKey("mco.configure.world.buttons.edit"))); this.buttonList.add(this.field_96276_u = new GuiButton(6, this.field_96277_d + this.field_96286_n / 2 + 2, this.func_96264_a(10), this.field_96286_n / 2 - 2, 20, stringtranslate.translateKey("mco.configure.world.buttons.reset"))); this.buttonList.add(this.field_98128_v = new GuiButton(4, this.field_96287_o, this.func_96264_a(10), this.field_96286_n / 2 - 2, 20, stringtranslate.translateKey("mco.configure.world.buttons.invite"))); this.buttonList.add(this.field_98127_w = new GuiButton(3, this.field_96287_o + this.field_96286_n / 2 + 2, this.func_96264_a(10), this.field_96286_n / 2 - 2, 20, stringtranslate.translateKey("mco.configure.world.buttons.uninvite"))); this.buttonList.add(new GuiButton(10, this.field_96287_o, this.func_96264_a(12), this.field_96286_n, 20, stringtranslate.translateKey("gui.back"))); this.field_96282_c = new SelectionListInvited(this); this.field_96278_t.enabled = !this.field_96280_b.field_98166_h; this.field_96276_u.enabled = !this.field_96280_b.field_98166_h; this.field_98128_v.enabled = !this.field_96280_b.field_98166_h; this.field_98127_w.enabled = !this.field_96280_b.field_98166_h; } private int func_96264_a(int par1) { return 40 + par1 * 13; } /** * Called when the screen is unloaded. Used to disable keyboard repeat events */ public void onGuiClosed() { Keyboard.enableRepeatEvents(false); } /** * Fired when a control is clicked. This is the equivalent of ActionListener.actionPerformed(ActionEvent e). */ protected void actionPerformed(GuiButton par1GuiButton) { if (par1GuiButton.enabled) { if (par1GuiButton.id == 10) { if (this.field_102020_y) { ((GuiScreenOnlineServers)this.field_96285_a).func_102018_a(this.field_96280_b.field_96408_a); } this.mc.displayGuiScreen(this.field_96285_a); } else if (par1GuiButton.id == 5) { this.mc.displayGuiScreen(new GuiScreenEditOnlineWorld(this, this.field_96285_a, this.field_96280_b)); } else if (par1GuiButton.id == 1) { StringTranslate stringtranslate = StringTranslate.getInstance(); String s = stringtranslate.translateKey("mco.configure.world.close.question.line1"); String s1 = stringtranslate.translateKey("mco.configure.world.close.question.line2"); this.mc.displayGuiScreen(new GuiScreenConfirmation(this, "Warning!", s, s1, 1)); } else if (par1GuiButton.id == 0) { this.func_96268_g(); } else if (par1GuiButton.id == 4) { this.mc.displayGuiScreen(new GuiScreenInvite(this.field_96285_a, this, this.field_96280_b)); } else if (par1GuiButton.id == 3) { this.func_96272_i(); } else if (par1GuiButton.id == 6) { this.mc.displayGuiScreen(new GuiScreenResetWorld(this, this.field_96280_b)); } else if (par1GuiButton.id == 7) { this.mc.displayGuiScreen(new GuiScreenSubscription(this, this.field_96280_b)); } } } private void func_96268_g() { McoClient mcoclient = new McoClient(this.mc.session); try { Boolean obool = mcoclient.func_96383_b(this.field_96280_b.field_96408_a); if (obool.booleanValue()) { this.field_102020_y = true; this.field_96280_b.field_96404_d = "OPEN"; this.initGui(); } } catch (ExceptionMcoService exceptionmcoservice) { ; } catch (IOException ioexception) { ; } } private void func_96275_h() { McoClient mcoclient = new McoClient(this.mc.session); try { boolean flag = mcoclient.func_96378_c(this.field_96280_b.field_96408_a).booleanValue(); if (flag) { this.field_102020_y = true; this.field_96280_b.field_96404_d = "CLOSED"; this.initGui(); } } catch (ExceptionMcoService exceptionmcoservice) { ; } catch (IOException ioexception) { ; } } private void func_96272_i() { if (this.field_96284_p >= 0 && this.field_96284_p < this.field_96280_b.field_96402_f.size()) { this.field_96283_q = (String)this.field_96280_b.field_96402_f.get(this.field_96284_p); StringTranslate stringtranslate = StringTranslate.getInstance(); GuiYesNo guiyesno = new GuiYesNo(this, "Warning!", stringtranslate.translateKey("mco.configure.world.uninvite.question") + " \'" + this.field_96283_q + "\'", 3); this.mc.displayGuiScreen(guiyesno); } } public void confirmClicked(boolean par1, int par2) { if (par2 == 3) { if (par1) { McoClient mcoclient = new McoClient(this.mc.session); try { mcoclient.func_96381_a(this.field_96280_b.field_96408_a, this.field_96283_q); } catch (ExceptionMcoService exceptionmcoservice) { System.err.println("Could not uninvite the selected user"); } this.func_96267_d(this.field_96284_p); } this.mc.displayGuiScreen(new GuiScreenConfigureWorld(this.field_96285_a, this.field_96280_b)); } if (par2 == 1) { if (par1) { this.func_96275_h(); } this.mc.displayGuiScreen(this); } } private void func_96267_d(int par1) { this.field_96280_b.field_96402_f.remove(par1); } /** * Fired when a key is typed. This is the equivalent of KeyListener.keyTyped(KeyEvent e). */ protected void keyTyped(char par1, int par2) {} /** * Called when the mouse is clicked. */ protected void mouseClicked(int par1, int par2, int par3) { super.mouseClicked(par1, par2, par3); } /** * Draws the screen and all the components in it. */ public void drawScreen(int par1, int par2, float par3) { StringTranslate stringtranslate = StringTranslate.getInstance(); this.drawDefaultBackground(); this.field_96282_c.func_96612_a(par1, par2, par3); this.drawCenteredString(this.fontRenderer, stringtranslate.translateKey("mco.configure.world.title"), this.width / 2, 17, 16777215); this.drawString(this.fontRenderer, stringtranslate.translateKey("mco.configure.world.name"), this.field_96277_d, this.func_96264_a(1), 10526880); this.drawString(this.fontRenderer, this.field_96280_b.func_96398_b(), this.field_96277_d, this.func_96264_a(2), 16777215); this.drawString(this.fontRenderer, stringtranslate.translateKey("mco.configure.world.description"), this.field_96277_d, this.func_96264_a(4), 10526880); this.drawString(this.fontRenderer, this.field_96280_b.func_96397_a(), this.field_96277_d, this.func_96264_a(5), 16777215); this.drawString(this.fontRenderer, stringtranslate.translateKey("mco.configure.world.status"), this.field_96277_d, this.func_96264_a(7), 10526880); this.drawString(this.fontRenderer, this.func_104045_j(), this.field_96277_d, this.func_96264_a(8), 16777215); this.drawString(this.fontRenderer, stringtranslate.translateKey("mco.configure.world.invited"), this.field_96287_o, this.func_96264_a(1), 10526880); super.drawScreen(par1, par2, par3); } private String func_104045_j() { if (this.field_96280_b.field_98166_h) { return "Expired"; } else { String s = this.field_96280_b.field_96404_d.toLowerCase(); return Character.toUpperCase(s.charAt(0)) + s.substring(1); } } static Minecraft func_96265_a(GuiScreenConfigureWorld par0GuiScreenConfigureWorld) { return par0GuiScreenConfigureWorld.mc; } static int func_96271_b(GuiScreenConfigureWorld par0GuiScreenConfigureWorld) { return par0GuiScreenConfigureWorld.field_96287_o; } static int func_96274_a(GuiScreenConfigureWorld par0GuiScreenConfigureWorld, int par1) { return par0GuiScreenConfigureWorld.func_96264_a(par1); } static int func_96269_c(GuiScreenConfigureWorld par0GuiScreenConfigureWorld) { return par0GuiScreenConfigureWorld.field_96286_n; } static McoServer func_96266_d(GuiScreenConfigureWorld par0GuiScreenConfigureWorld) { return par0GuiScreenConfigureWorld.field_96280_b; } static int func_96270_b(GuiScreenConfigureWorld par0GuiScreenConfigureWorld, int par1) { return par0GuiScreenConfigureWorld.field_96284_p = par1; } static int func_96263_e(GuiScreenConfigureWorld par0GuiScreenConfigureWorld) { return par0GuiScreenConfigureWorld.field_96284_p; } static FontRenderer func_96273_f(GuiScreenConfigureWorld par0GuiScreenConfigureWorld) { return par0GuiScreenConfigureWorld.fontRenderer; } }