001 package net.minecraft.src; 002 003 import cpw.mods.fml.common.Side; 004 import cpw.mods.fml.common.asm.SideOnly; 005 006 @SideOnly(Side.CLIENT) 007 public class GuiShareToLan extends GuiScreen 008 { 009 private final GuiScreen field_74092_a; 010 private GuiButton field_74090_b; 011 private GuiButton field_74091_c; 012 private String field_74089_d = "survival"; 013 private boolean field_74093_m = false; 014 015 public GuiShareToLan(GuiScreen par1GuiScreen) 016 { 017 this.field_74092_a = par1GuiScreen; 018 } 019 020 /** 021 * Adds the buttons (and other controls) to the screen in question. 022 */ 023 public void initGui() 024 { 025 this.controlList.clear(); 026 this.controlList.add(new GuiButton(101, this.width / 2 - 155, this.height - 28, 150, 20, StatCollector.translateToLocal("lanServer.start"))); 027 this.controlList.add(new GuiButton(102, this.width / 2 + 5, this.height - 28, 150, 20, StatCollector.translateToLocal("gui.cancel"))); 028 this.controlList.add(this.field_74091_c = new GuiButton(104, this.width / 2 - 155, 100, 150, 20, StatCollector.translateToLocal("selectWorld.gameMode"))); 029 this.controlList.add(this.field_74090_b = new GuiButton(103, this.width / 2 + 5, 100, 150, 20, StatCollector.translateToLocal("selectWorld.allowCommands"))); 030 this.func_74088_g(); 031 } 032 033 private void func_74088_g() 034 { 035 StringTranslate var1 = StringTranslate.getInstance(); 036 this.field_74091_c.displayString = var1.translateKey("selectWorld.gameMode") + " " + var1.translateKey("selectWorld.gameMode." + this.field_74089_d); 037 this.field_74090_b.displayString = var1.translateKey("selectWorld.allowCommands") + " "; 038 039 if (this.field_74093_m) 040 { 041 this.field_74090_b.displayString = this.field_74090_b.displayString + var1.translateKey("options.on"); 042 } 043 else 044 { 045 this.field_74090_b.displayString = this.field_74090_b.displayString + var1.translateKey("options.off"); 046 } 047 } 048 049 /** 050 * Fired when a control is clicked. This is the equivalent of ActionListener.actionPerformed(ActionEvent e). 051 */ 052 protected void actionPerformed(GuiButton par1GuiButton) 053 { 054 if (par1GuiButton.id == 102) 055 { 056 this.mc.displayGuiScreen(this.field_74092_a); 057 } 058 else if (par1GuiButton.id == 104) 059 { 060 if (this.field_74089_d.equals("survival")) 061 { 062 this.field_74089_d = "creative"; 063 } 064 else if (this.field_74089_d.equals("creative")) 065 { 066 this.field_74089_d = "adventure"; 067 } 068 else 069 { 070 this.field_74089_d = "survival"; 071 } 072 073 this.func_74088_g(); 074 } 075 else if (par1GuiButton.id == 103) 076 { 077 this.field_74093_m = !this.field_74093_m; 078 this.func_74088_g(); 079 } 080 else if (par1GuiButton.id == 101) 081 { 082 this.mc.displayGuiScreen((GuiScreen)null); 083 String var2 = this.mc.getIntegratedServer().shareToLAN(EnumGameType.getByName(this.field_74089_d), this.field_74093_m); 084 String var3 = ""; 085 086 if (var2 != null) 087 { 088 var3 = this.mc.thePlayer.translateString("commands.publish.started", new Object[] {var2}); 089 } 090 else 091 { 092 var3 = this.mc.thePlayer.translateString("commands.publish.failed", new Object[0]); 093 } 094 095 this.mc.ingameGUI.getChatGUI().printChatMessage(var3); 096 } 097 } 098 099 /** 100 * Draws the screen and all the components in it. 101 */ 102 public void drawScreen(int par1, int par2, float par3) 103 { 104 this.drawDefaultBackground(); 105 this.drawCenteredString(this.fontRenderer, StatCollector.translateToLocal("lanServer.title"), this.width / 2, 50, 16777215); 106 this.drawCenteredString(this.fontRenderer, StatCollector.translateToLocal("lanServer.otherPlayers"), this.width / 2, 82, 16777215); 107 super.drawScreen(par1, par2, par3); 108 } 109 }