Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.*;
- import java.net.*;
- public class client {
- public static void main(String[] args) {
- int MAX = 1;
- DatagramSocket s;
- BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
- InetAddress srv_addr;
- DatagramPacket tosend;
- DatagramPacket pkt;
- byte[] buffer;
- char serverMove;
- char move;
- int res = 0;
- int exit = 0;
- try {
- s = new DatagramSocket();
- srv_addr = InetAddress.getByName("localhost");
- tosend = new DatagramPacket("p".getBytes(),1,srv_addr,12345);
- s.send(tosend);
- buffer = new byte[MAX];
- pkt = new DatagramPacket(buffer,1);
- s.receive(pkt);
- serverMove = (new String(pkt.getData())).charAt(0);
- System.out.println(" > " + serverMove);
- if(serverMove == 'k') {
- System.out.println("Let's play.");
- while(exit == 0) {
- move = (in.readLine()).charAt(0);
- switch(move) {
- case '.':
- if(res>=0) {
- tosend = new DatagramPacket("y".getBytes(),1,srv_addr,12345);
- System.out.println("You lose! :(");
- }
- else {
- tosend = new DatagramPacket("i".getBytes(),1,srv_addr,12345);
- System.out.println("You win! :)");
- }
- s.send(tosend);
- s.receive(pkt);
- serverMove = (new String(pkt.getData())).charAt(0);
- System.out.println(" > " + serverMove);
- exit = 1;
- break;
- case 'f':
- tosend = new DatagramPacket((move + "").getBytes(),1,srv_addr,12345);
- s.send(tosend);
- s.receive(pkt);
- serverMove = (new String(pkt.getData())).charAt(0);
- System.out.println(" > " + serverMove);
- if(serverMove == 's')
- res++;
- else if(serverMove == 'c')
- res--;
- break;
- case 's':
- tosend = new DatagramPacket((move + "").getBytes(),1,srv_addr,12345);
- s.send(tosend);
- s.receive(pkt);
- serverMove = (new String(pkt.getData())).charAt(0);
- System.out.println(" > " + serverMove);
- if(serverMove == 'f')
- res--;
- else if(serverMove == 'c')
- res++;
- break;
- case 'c':
- tosend = new DatagramPacket((move + "").getBytes(),1,srv_addr,12345);
- s.send(tosend);
- s.receive(pkt);
- serverMove = (new String(pkt.getData())).charAt(0);
- System.out.println(" > " + serverMove);
- if(serverMove == 'f')
- res++;
- else if(serverMove == 's')
- res--;
- break;
- }
- }
- }
- s.close();
- }
- catch(Exception e) {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement