Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Net;
- using System.Net.Sockets;
- using System.Threading;
- using ServerData;
- using MessagesCommunication;
- namespace Client
- {
- class Client
- {
- public static Socket master;
- public static string name;
- public static string id;
- static void Main(string[] args)
- {
- Console.Title = "Player";
- Console.Write("Enter your name: ");
- name = Console.ReadLine();
- //UWAGA!! GOTO deklaracja!!
- A: Console.Clear();
- Console.WriteLine("Enter hostname: ");
- string ip = Console.ReadLine();
- master = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
- //IPEndPoint ipe = new IPEndPoint(IPAddress.Parse(ip), 4242);
- try
- {
- //master.Connect(ipe);
- master.Connect(ip, 4242);
- }
- catch
- {
- Console.WriteLine("Could not connect to the host!");
- Thread.Sleep(1000);
- goto A;
- }
- Thread t = new Thread(Data_IN);
- t.Start();
- for (;;)
- {
- Console.ForegroundColor = ConsoleColor.Cyan;
- Console.Write(name + "@Player:~$");
- TestFunction();
- //string input = Console.ReadLine();
- //Packet p = new Packet(input);
- //Packet p = new Packet(PacketType.Chat, id);
- //p.Gdata.Add(name);
- //p.Gdata.Add(input);
- //master.Send(p.ToBytes());
- }
- }
- static void Data_IN()
- {
- byte[] Buffer;
- int readBytes;
- for (;;)
- {
- try
- {
- Buffer = new byte[master.SendBufferSize];
- readBytes = master.Receive(Buffer);
- if (readBytes > 0)
- {
- string text = Messages.ChangeType.ToString(Buffer);
- DataManager(text);
- int i = 0;
- switch (i)
- {
- //RegisteredGames
- case 1:
- {
- break;
- }
- //ConfirmJoiningGame
- case 2:
- {
- break;
- }
- //Game
- case 3:
- {
- //Console.WriteLine("Discover");
- //Discover temp = new Discover();
- //temp.gameId = 1;
- //temp.playerGuid = Guid.NewGuid().ToString();
- //Discover(temp);
- break;
- }
- //data
- case 4:
- {
- //Console.WriteLine("Move");
- //Move temp = new Move();
- //temp.direction = MoveType.down;
- //temp.directionSpecified = true;
- //temp.gameId = 1;
- //temp.playerGuid = Guid.NewGuid().ToString();
- //Move(temp);
- break;
- }
- //PickUpPiece
- case 5:
- {
- //Console.WriteLine("PickUpPiece");
- //PickUpPiece temp = new PickUpPiece();
- //temp.gameId = 1;
- //temp.playerGuid = Guid.NewGuid().ToString();
- //PickUpPiece(temp);
- break;
- }
- //TestPiece
- case 6:
- {
- //Console.WriteLine("TestPiece");
- //TestPiece temp = new TestPiece();
- //temp.gameId = 1;
- //temp.playerGuid = Guid.NewGuid().ToString();
- //TestPiece(temp);
- break;
- }
- }
- }
- }
- catch (SocketException ex)
- {
- Console.WriteLine("The server disconnected!");
- Console.ReadLine();
- Environment.Exit(0);
- }
- }
- }
- static void DataManager(string text)
- {
- Console.ForegroundColor = ConsoleColor.Cyan;
- Console.WriteLine(text.Trim('\0'));
- //switch (p.packetType)
- //{
- // case PacketType.Registration:
- // //Console.WriteLine("Recieved a packet for reistration! Responding...");
- // id = p.Gdata[0];
- // break;
- // case PacketType.Chat:
- // Console.WriteLine(p.Gdata[0] + ": " + p.Gdata[1]);
- // Console.ForegroundColor = ConsoleColor.Cyan;
- // break;
- //}
- }
- private static void TestFunction()
- {
- int i;
- if (Int32.TryParse(System.Console.ReadLine(), out i))
- switch (i)
- {
- //get games
- case 1:
- {
- Console.WriteLine("Get games");
- GetGames();
- break;
- }
- //join game
- case 2:
- {
- string Team = string.Empty, Game = string.Empty, Role = string.Empty;
- while (Game != "first" && Game != "Second")
- {
- Console.WriteLine("Choose Game:");
- Game = (System.Console.ReadLine()).ToLower();
- }
- while (Team != "red" && Team != "blue")
- {
- Console.WriteLine("Choose preferred team:\n1.Red\n2.Blue");
- Team = (System.Console.ReadLine()).ToLower();
- }
- while (Role != "leader" && Role != "player")
- {
- Console.WriteLine("Choose preferred role:\n1.Leader\n2.Player");
- Role = (System.Console.ReadLine()).ToLower();
- }
- JoinGame(Game, Team, Role);
- break;
- }
- //discover
- case 3:
- {
- Console.WriteLine("Discover");
- Discover temp = new Discover();
- temp.gameId = 1;
- temp.playerGuid = Guid.NewGuid().ToString();
- Discover(temp);
- break;
- }
- //move
- case 4:
- {
- Console.WriteLine("Move");
- Move temp = new Move();
- temp.direction = MoveType.down;
- temp.directionSpecified = true;
- temp.gameId = 1;
- temp.playerGuid = Guid.NewGuid().ToString();
- Move(temp);
- break;
- }
- //PickUpPiece
- case 5:
- {
- Console.WriteLine("PickUpPiece");
- PickUpPiece temp = new PickUpPiece();
- temp.gameId = 1;
- temp.playerGuid = Guid.NewGuid().ToString();
- PickUpPiece(temp);
- break;
- }
- //TestPiece
- case 6:
- {
- Console.WriteLine("TestPiece");
- TestPiece temp = new TestPiece();
- temp.gameId = 1;
- temp.playerGuid = Guid.NewGuid().ToString();
- TestPiece(temp);
- break;
- }
- }
- }
- private static void Send(byte[] dataBuf)
- {
- //Packet p = new Packet();
- //p.PacketXml(dataBuf);
- master.Send(dataBuf);
- }
- private static void JoinGame(string gameName, string preferedTeam, string preferedRole)
- {
- MessagesCommunication.JoinGame jG = new MessagesCommunication.JoinGame();
- if (preferedTeam == "blue" && preferedRole == "player")
- {
- jG = Messages.CreateMessage.JoinGame(gameName, TeamColour.blue, PlayerType.player);
- }
- else if (preferedTeam == "red" && preferedRole == "player")
- {
- jG = Messages.CreateMessage.JoinGame(gameName, TeamColour.red, PlayerType.player);
- }
- else if (preferedTeam == "blue" && preferedRole == "leader")
- {
- jG = Messages.CreateMessage.JoinGame(gameName, TeamColour.blue, PlayerType.leader);
- }
- else if (preferedRole == "red" && preferedRole == "leader")
- {
- jG = Messages.CreateMessage.JoinGame(gameName, TeamColour.red, PlayerType.leader);
- }
- Send(Messages.ChangeType.ToByteArrayObject(jG));
- }
- private static void GetGames()
- {
- MessagesCommunication.GetGames gG = Messages.CreateMessage.GetGames();
- Send(Messages.ChangeType.ToByteArrayObject(gG));
- }
- private static void Discover(Discover discover)
- {
- Send(Messages.ChangeType.ToByteArrayObject(discover));
- }
- private static void Move(Move move)
- {
- Send(Messages.ChangeType.ToByteArrayObject(move));
- }
- private static void PickUpPiece(PickUpPiece pick)
- {
- Send(Messages.ChangeType.ToByteArrayObject(pick));
- }
- private static void TestPiece(TestPiece testPiece)
- {
- Send(Messages.ChangeType.ToByteArrayObject(testPiece));
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement