public ClientOfServer Close(string name, ClientOfServer player) { MultiPlayerInfo mp = multiPlayerOnline[name]; multiPlayerOnline.Remove(name); return(mp.GetTheOtherPlayer(player)); }
/// <summary> /// Starts the specified of maze. /// </summary> /// <param name="name">The name of maze.</param> /// <param name="rows">The rows of maze.</param> /// <param name="cols">The cols of maze.</param> /// <param name="host">The host of maze.</param> public void Start(string name, int rows, int cols, ClientOfServer host) { Maze maze = Generate(name, rows, cols); MultiPlayerInfo mp = new MultiPlayerInfo() { Host = host, Maze = maze }; multiPlayerWaiting.Add(name, mp); }
/// <summary> /// Plays the specified move. /// </summary> /// <param name="move">The move.</param> /// <param name="player">The player.</param> /// <returns>map of TcpClient, PlayerDirection </returns> public Tuple <ClientOfServer, PlayerDirection> Play(string move, ClientOfServer player) { MultiPlayerInfo mp = FindMPInfo(player); ClientOfServer otherPlayer = mp.GetTheOtherPlayer(player); PlayerDirection pd = new PlayerDirection() { GameName = mp.Maze.Name, Move = move }; return(new Tuple <ClientOfServer, PlayerDirection>(otherPlayer, pd)); }
/// <summary> /// Joins the specified name. /// </summary> /// <param name="name">The name of maze.</param> /// <param name="guest">The guest client.</param> /// <returns the maze></returns> /// <exception cref="System.Exception">This maze does not exist - " + name</exception> public Maze Join(string name, ClientOfServer guest) { if (!multiPlayerWaiting.ContainsKey(name)) { throw new Exception("This maze does not exist - " + name); } MultiPlayerInfo mp = multiPlayerWaiting[name]; mp.Guest = guest; multiPlayerOnline[name] = mp; multiPlayerWaiting.Remove(name); return(mp.Maze); }