public void Receive() { try { while (true) { if (connectionList.clientList.Count == 0) { continue; } for (int i = 0; i < connectionList.clientList.Count; i++) { if (connectionList.clientList[i].user.GetStream().DataAvailable) { string message = connectionList.clientList[i].stream.Read(); LogManager.AddToLog(connectionList.clientList[i].name, message); if (connectionList.clientList[i].stream.Type == UniversalStream.ClientType.Web) { message = connectionList.clientList[i].stream.Decode(); } commandManager.Dispatcher(message); } } Thread.Sleep(50); } } catch (Exception ex) { CrashManager.CrashReportToFile(ex.StackTrace + ex.Message, ex.InnerException?.ToString()); } }
public void SetCommand(string command) { try { command = command.Replace("\r\n", ""); string[] msg = command.Split(','); switch (msg[1]) { case "ask": if (AskRequest(msg[2], commandManager.connectionList.GetClient(msg[3]), commandManager.connectionList.GetClient(msg[4]), msg[5])) { switch (msg[5]) { case "XO": Random ran = new Random(); int variant = ran.Next(0, 2); if (variant == 1) { gameList.Add(new XO(commandManager.connectionList.GetClient(msg[3]), commandManager.connectionList.GetClient(msg[4]))); } else { gameList.Add(new XO(commandManager.connectionList.GetClient(msg[4]), commandManager.connectionList.GetClient(msg[3]))); } commandManager.connectionList.GetClient(msg[3]).status = "1"; commandManager.connectionList.GetClient(msg[4]).status = "1"; commandManager.Dispatcher("list"); break; } } break; case "gamexo": for (int i = 0; i < gameList.Count; i++) { if (gameList[i].ContainsPlayer(commandManager.connectionList.GetClient(msg[2]))) { if (gameList[i].Action(commandManager.connectionList.GetClient(msg[2]), msg[3])) { gameList.Remove(gameList[i]); } } } break; } } catch (Exception ex) { throw new Exception("METHOD: SetCommand" + ex.StackTrace + ex.Message, ex.InnerException); } }
public void Receive() { while (true) { if (connectionList.clientList.Count == 0) { continue; } for (int i = 0; i < connectionList.clientList.Count; i++) { if (connectionList.clientList[i].user.GetStream().DataAvailable) { string message = connectionList.clientList[i].Read(); commandManager.Dispatcher(message); } } } }
public void SetCommand(string command) { string[] msg = command.Split(','); switch (msg[1]) { case "ask": if (AskRequest(msg[2], commandManager.connectionList.GetClient(msg[3]), commandManager.connectionList.GetClient(msg[4]), msg[5])) { switch (msg[5]) { case "XO": Random ran = new Random(); int variant = ran.Next(0, 2); if (variant == 1) { gameList.Add(new XO(commandManager.connectionList.GetClient(msg[3]), commandManager.connectionList.GetClient(msg[4]))); } else { gameList.Add(new XO(commandManager.connectionList.GetClient(msg[4]), commandManager.connectionList.GetClient(msg[3]))); } commandManager.connectionList.GetClient(msg[3]).status = "1"; commandManager.connectionList.GetClient(msg[4]).status = "1"; commandManager.Dispatcher("list"); break; } } break; case "gamexo": for (int i = 0; i < gameList.Count; i++) { if (gameList[i].ContainsPlayer(commandManager.connectionList.GetClient(msg[2]))) { if (gameList[i].Action(commandManager.connectionList.GetClient(msg[2]), msg[3])) { gameList.Remove(gameList[i]); } } } break; } }