package net.minecraft.client.gui; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.net.ConnectException; import java.net.UnknownHostException; import net.minecraft.client.multiplayer.NetClientHandler; import net.minecraft.network.packet.Packet2ClientProtocol; import net.minecraft.util.StringTranslate; @SideOnly(Side.CLIENT) class ThreadOnlineConnect extends Thread { final String field_96595_a; final int field_96593_b; final TaskOnlineConnect field_96594_c; ThreadOnlineConnect(TaskOnlineConnect par1TaskOnlineConnect, String par2Str, int par3) { this.field_96594_c = par1TaskOnlineConnect; this.field_96595_a = par2Str; this.field_96593_b = par3; } public void run() { try { TaskOnlineConnect.func_96583_a(this.field_96594_c, new NetClientHandler(this.field_96594_c.func_96578_b(), this.field_96595_a, this.field_96593_b, TaskOnlineConnect.func_98172_a(this.field_96594_c))); if (this.field_96594_c.func_96577_c()) { return; } this.field_96594_c.func_96576_b(StringTranslate.getInstance().translateKey("mco.connect.authorizing")); TaskOnlineConnect.func_96580_a(this.field_96594_c).addToSendQueue(new Packet2ClientProtocol(61, this.field_96594_c.func_96578_b().session.username, this.field_96595_a, this.field_96593_b)); } catch (UnknownHostException unknownhostexception) { if (this.field_96594_c.func_96577_c()) { return; } this.field_96594_c.func_96578_b().displayGuiScreen(new GuiScreenDisconnectedOnline(TaskOnlineConnect.func_98172_a(this.field_96594_c), "connect.failed", "disconnect.genericReason", new Object[] {"Unknown host \'" + this.field_96595_a + "\'"})); } catch (ConnectException connectexception) { if (this.field_96594_c.func_96577_c()) { return; } this.field_96594_c.func_96578_b().displayGuiScreen(new GuiScreenDisconnectedOnline(TaskOnlineConnect.func_98172_a(this.field_96594_c), "connect.failed", "disconnect.genericReason", new Object[] {connectexception.getMessage()})); } catch (Exception exception) { if (this.field_96594_c.func_96577_c()) { return; } exception.printStackTrace(); this.field_96594_c.func_96578_b().displayGuiScreen(new GuiScreenDisconnectedOnline(TaskOnlineConnect.func_98172_a(this.field_96594_c), "connect.failed", "disconnect.genericReason", new Object[] {exception.toString()})); } } }