import java.awt.*; import java.applet.*; import java.io.*; import java.net.*; public class StartApplet extends Applet implements Runnable{ Thread runner; int PORT = 8282; Client c; public void init(){ setBackground(Color.blue); setLayout(new GridLayout(1,1)); add(new Button("Join")); /* Players.addItem("1"); Players.addItem("2"); Players.addItem("3"); Players.addItem("4"); Players.addItem("5"); Players.addItem("6"); add(Players); */ } public boolean action(Event e, Object arg){ if (arg.equals("Join")){ join(); } return true; } public void join(){ boolean con = false; while(!con){ try{ c = new Client(this.getCodeBase().getHost(),PORT); new ClientThread(c).start(); con = true; } catch (SocketException e) { con = false; if (PORT++ > 8300) this.stop(); System.out.println("Connection denied trying next game-port: "+PORT); } catch(IOException e){ System.out.println("Error: "+e); }//Pop up frame... } } public void start(){ if(runner == null){ runner = new Thread(this); runner.start();} else if(runner.isAlive()) runner.resume(); } public void stop(){ if(runner != null && runner.isAlive()) runner.suspend(); } public void run(){ } }