Advertisement
Dals

Client

Oct 30th, 2012
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.21 KB | None | 0 0
  1. package se.dalsit.net;
  2.  
  3. import java.io.EOFException;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.io.ObjectInputStream;
  7. import java.io.ObjectOutputStream;
  8. import java.io.Serializable;
  9. import java.net.Socket;
  10. import java.security.acl.Owner;
  11. import java.util.ArrayList;
  12.  
  13. import javax.swing.JOptionPane;
  14.  
  15. import se.dalsit.net.Packet.NewConnection;
  16.  
  17. public class Client implements Runnable {
  18.  
  19.    
  20.     public static void main (String args [] ) {
  21.         new  Client();
  22.     }
  23.    
  24.    
  25.    
  26.     private static final long serialVersionUID = 1L;
  27.     private  Socket socket;
  28.     private final static String CLIENTSTRING = "[CLIENT]: ";
  29.     private   ObjectInputStream objectReader;
  30.     private   ObjectOutputStream objectWriter;
  31.  
  32.     private Player player;
  33.     private ArrayList<Player> playerList = new ArrayList<Player>();
  34.  
  35.     private   Thread clientThread;
  36.    
  37.     Object o = null;
  38.    
  39.     public Client() {
  40.         setUpConnection();
  41.  
  42.     }
  43.  
  44.     private void setUpConnection() {
  45.         try {
  46.             socket = new Socket(
  47.                     JOptionPane.showInputDialog("Connect to host, enter IP"),
  48.                     4242);
  49.  
  50.        
  51.             objectReader = new ObjectInputStream(socket.getInputStream());
  52.             objectWriter = new ObjectOutputStream(socket.getOutputStream());
  53.             readPlayer(objectReader);
  54.            
  55.             try {
  56.                 ArrayList<Player> temp = (ArrayList) objectReader.readObject();
  57.            
  58.                 playerList = temp;
  59.  
  60.             } catch (ClassNotFoundException e) {
  61.                 e.printStackTrace();
  62.             }
  63.  
  64.            
  65.            
  66.             System.out.println(CLIENTSTRING + "Player ID: " + player.x + " playerslist " + playerList.size());
  67.             //Window.clientArea.append(CLIENTSTRING + "Player ID: " + player.x +  " ,Size of list: " + playerList.size()+ "\n");
  68.  
  69.             clientThread = new Thread (this, "Thread for player ID: " + player.x);
  70.             clientThread.start();
  71.            
  72.        
  73.             //Sends a packet telling its a new connection
  74.             objectWriter.writeObject(new Packet.NewConnection());
  75.            
  76.             System.out.println(CLIENTSTRING + "Started");
  77.             //Window.clientArea.append(CLIENTSTRING + "Started" + "\n");
  78.            
  79.            
  80.         } catch (IOException e) {
  81.             //Window.clientArea.append(CLIENTSTRING + "No server running on that IP" + "\n");
  82.             System.out.println(CLIENTSTRING + "NO SERVER RUNNING ON THAT IP");
  83.             e.printStackTrace();
  84.         }
  85.  
  86.     }
  87.  
  88.     private void readPlayer(ObjectInputStream or) {
  89.         try {
  90.             player = (Player) or.readObject();
  91.             System.out.println(CLIENTSTRING + "Player ID: " + player.x );
  92.             //Window.clientArea.append(CLIENTSTRING + "Player ID: " + player.x + "\n");
  93.  
  94.         } catch (ClassNotFoundException e) {
  95.  
  96.             e.printStackTrace();
  97.         } catch (IOException e) {
  98.  
  99.             e.printStackTrace();
  100.         }
  101.  
  102.     }
  103.  
  104.  
  105.     public void run() {
  106.         try {
  107.         while ((o = objectReader.readObject()) != null) {
  108.             ArrayList<Player> tempList = (ArrayList<Player>) o;
  109.             playerList = tempList;
  110.             System.out.println(CLIENTSTRING + "read object from server" +" Size is : " + playerList.size() );
  111.            
  112.        
  113.             //Window.clientArea.append(CLIENTSTRING+"read object from server" +" Size is : " + playerList.size() + "\n");
  114.            
  115.            
  116.         }
  117.         }catch (Exception ex) {
  118.             ex.printStackTrace();
  119.         }
  120.                
  121.     }
  122.  
  123.                
  124.  
  125.        
  126.        
  127.    
  128.  
  129.            
  130.  
  131.        
  132.    
  133.  
  134.     public Player getPlayer() {
  135.         return player;
  136.     }
  137.  
  138.     public void setPlayer(Player player) {
  139.         this.player = player;
  140.     }
  141.  
  142. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement