예제 #1
0
 public Game()
 {
     AppDomain.CurrentDomain.ProcessExit += ProcessExit;
     try
     {
         serverActions = new ServerActions();
         if (!serverActions.TestClientVersion())
         {
             MessageBox.Show("У вас устаревшая версия приложения! Скачайте новую");
             Environment.Exit(0);
         }
         Tables = new TablesList();
         CurrentTable = null;
         Player = null;
         Players = new PlayersList();
         Place = -1;
         Status = TableStatus.NONE;
         Player1Order = null;
         Player2Order = null;
         Player3Order = null;
         Player4Order = null;
         IsMakingMove = false;
         guestForm = new MainGuestForm(this);
         guestForm.Show();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
         Environment.Exit(0);
     }
 }
예제 #2
0
 //**********************************************************************************************************************************************************************************
 //                      Конструкторы
 //**********************************************************************************************************************************************************************************
 public ClientInformation()
 {
     try
     {
         serverActions = new ServerActions();
         tablesList = new TablesList();
         playersList = new PlayersList();
         place = -1;
         Status = GameStatus.NON_GAME;
     }
     catch (Exception Ex)
     {
         throw new BeloteClientException("Невозможно начать взаимодействие с сервером", Ex);
     }
 }
예제 #3
0
 // Добавление информации о всех доступных столах и игроках с них в соответствующие списки
 public void UpdatePossibleTables()
 {
     Tables = serverActions.GetAllPossibleTables();
     if (Tables == null)
         Tables = new TablesList();
     UpdatePlayers();
 }
예제 #4
0
 // Выборка всех столов, для этого должны быть созданы обработчики событий
 public TablesList GetAllPossibleTables()
 {
     string resultTables = ServerConnection.ExecuteMessageGetMessage(new Message(Messages.MESSAGE_TABLE_SELECT_ALL, "")).Msg;
     if (resultTables == "")
     {
         return null;
     }
     TablesList tablesList = new TablesList();
     try
     {
         string[] tables = resultTables.Split('|');
         foreach (string s in tables)
         {
             tablesList.AddTable(new Table(new MessageResult(new Message("", s))));
         }
         return tablesList;
     }
     catch
     {
         return null;
     }
 }
예제 #5
0
 //**********************************************************************************************************************************************************************************
 //                      Методы работы со столами: обновление списка столов, создание, посадка на стол, выход со стола
 //**********************************************************************************************************************************************************************************
 // Добавление информации о всех доступных столах и игроках с них в соответствующие списки
 public void UpdatePossibleTables()
 {
     tablesList = serverActions.Tables.GetAllPossibleTables();
     if (tablesList == null)
         tablesList = new TablesList();
     UpdatePlayers();
 }