コード例 #1
0
        private void LootButton_Click(object sender, RoutedEventArgs e)
        {
            RootObject loot = new RootObject();

            loot.loot.weapons.Add(new RootObject.Weapon {
                id = 1, count = 1
            });
            loot.loot.items.Add(new RootObject.Item {
                id = 2, count = 1
            });
            loot.loot.armors.Add(new RootObject.Armor {
                id = 1
            });
            ClientClass   client   = new ClientClass();
            IRestResponse response = client.Loot(UserInfo.UserLogin, UserInfo.UserSession, UserInfo.UserGame, loot);

            if (response.IsSuccessful)
            {
                MessageBox.Show(response.Content);
            }
            else
            {
                MessageBox.Show(response.Content);
            }
        }
コード例 #2
0
        private void GameConnectingButton_Click(object sender, RoutedEventArgs e)
        {
            UserInfo.UserGame = GameKey.Text;

            User user = new User();

            user.Login   = UserInfo.UserLogin;
            user.Session = UserInfo.UserSession;
            user.Game    = UserInfo.UserGame;

            ClientClass   client          = new ClientClass(); // Посылаем запрос connect
            IRestResponse responseConnect = client.Connect(user, UserInfo.UserHero);

            if (responseConnect.IsSuccessful)
            {
                ServerResponse serverResponse = JsonConvert.DeserializeObject <ServerResponse>(responseConnect.Content);
                HeroCard       hero           = new HeroCard();
                hero = serverResponse.hero;
                MainMenu mainMenu = new MainMenu(hero);
                Close();
                mainMenu.ShowDialog();
            }
            else
            {
                MessageBox.Show(responseConnect.Content);
            }
        }
コード例 #3
0
        public GmMainMenu()
        {
            InitializeComponent();

            GameKeyTextBlock.Text = UserInfo.UserGame;

            ClientClass   client   = new ClientClass();
            IRestResponse response = client.OthersPlayers(UserInfo.UserLogin, UserInfo.UserSession, UserInfo.UserGame);

            if (response.IsSuccessful)
            {
                ServerResponse serverResponse = JsonConvert.DeserializeObject <ServerResponse>(response.Content);
                serverResponse.OtherPlayers.RemoveAt(0);
                if (serverResponse.OtherPlayers != null)
                {
                    foreach (OtherPlayers player in serverResponse.OtherPlayers)
                    {
                        ListBoxItem item = new ListBoxItem();
                        item.Content = player.hero.heroInfo.name + " (" + player.login + ")";
                        PlayerList.Items.Add(item);
                    }
                }
            }
            else
            {
                MessageBox.Show(response.Content);
            }
        }
コード例 #4
0
        private void RegistrationButton_Click(object sender, RoutedEventArgs e)
        {
            string login = loginText.Text;
            string pass  = passText.Password;
            string token = "";

            if (GMRadio.IsChecked.Value)
            {
                token = "lol";  //Выяснить про токен
            }

            ClientClass   client   = new ClientClass();
            IRestResponse response = client.Registration(login, pass, token);

            if (response.IsSuccessful)
            {
                Close();
                if (PlayerRadio.IsChecked.Value)
                {
                    MessageBox.Show("Регистрация игрока прошла успешно");
                }
                else
                {
                    MessageBox.Show("Регистрация гейм мастера прошла успешно");
                }
            }
            else
            {
                MessageBox.Show(response.Content);
            }
        }
コード例 #5
0
        public GameConnectingWindow()
        {
            InitializeComponent();

            GreetingLabel.Content = "Добро пожаловать, " + UserInfo.UserLogin;
            ClientClass   client   = new ClientClass();
            IRestResponse response = client.heroList(UserInfo.UserLogin, UserInfo.UserSession);

            if (response.IsSuccessful)
            {
                heroesResponse = JsonConvert.DeserializeObject <ServerResponse>(response.Content);
                if (heroesResponse.heroes != null)
                {
                    bool firstItem = true;
                    foreach (Heroes hero in heroesResponse.heroes)
                    {
                        ListBoxItem item = new ListBoxItem();
                        item.Content = hero.name;
                        if (firstItem)
                        {
                            item.IsSelected = true;
                        }
                        heroID.Items.Add(item);
                        firstItem = false;
                    }
                }
            }
            else
            {
                MessageBox.Show(response.Content);
            }

            client = new ClientClass();
            IRestResponse responseGames = client.Games(UserInfo.UserLogin, UserInfo.UserSession);

            if (responseGames.IsSuccessful)
            {
                gamesResponse = JsonConvert.DeserializeObject <ServerResponse>(responseGames.Content);
                if (gamesResponse.games != null)
                {
                    foreach (var game in gamesResponse.games)
                    {
                        ComboBoxItem item = new ComboBoxItem();
                        item.Content = game.Key;
                        AllGames.Items.Add(item);
                    }
                }
            }
            else
            {
                MessageBox.Show(responseGames.Content);
            }
        }
コード例 #6
0
        private void DeleteLootButton_Click(object sender, RoutedEventArgs e)
        {
            ClientClass   client   = new ClientClass();
            IRestResponse response = client.DelLoot(UserInfo.UserLogin, UserInfo.UserSession, UserInfo.UserGame);

            if (response.IsSuccessful)
            {
                MessageBox.Show(response.Content);
            }
            else
            {
                MessageBox.Show(response.Content);
            }
        }
コード例 #7
0
        private void CloseGmMenuButton_Click(object sender, RoutedEventArgs e)
        {
            ClientClass   client   = new ClientClass();
            IRestResponse response = client.delGame(UserInfo.UserLogin, UserInfo.UserSession);

            if (response.IsSuccessful)
            {
                Application.Current.Shutdown();
            }
            else
            {
                MessageBox.Show(response.Content);
            }
        }
コード例 #8
0
        private void Create_Click(object sender, RoutedEventArgs e)
        {
            ClientClass   client   = new ClientClass();
            IRestResponse response = client.newHero(UserInfo.UserLogin, UserInfo.UserSession, Hero);

            if (response.IsSuccessful)
            {
                MessageBox.Show(response.Content);
                GameConnectingWindow connWin = new GameConnectingWindow();
                Close();
                connWin.Show();
            }
            else
            {
                MessageBox.Show(response.Content);
            }
        }
コード例 #9
0
        private void ExitButton_Click(object sender, RoutedEventArgs e)
        {
            ClientClass   client   = new ClientClass();
            IRestResponse response = client.DelConnect(UserInfo.UserLogin, UserInfo.UserSession);

            if (response.IsSuccessful)
            {
                //FPS.Abort();
                Application.Current.Shutdown();
            }
            else
            {
                //FPS.Abort();
                MessageBox.Show(response.Content);
                Application.Current.Shutdown();
            }
        }
コード例 #10
0
        private void DisconnectButton_Click(object sender, RoutedEventArgs e)
        {
            ClientClass   client   = new ClientClass();
            IRestResponse response = client.DelConnect(UserInfo.UserLogin, UserInfo.UserSession);

            if (response.IsSuccessful)
            {
                UserInfo.UserGame = "";
                GameConnectingWindow connWin = new GameConnectingWindow();
                Close();
                connWin.ShowDialog();
            }
            else
            {
                MessageBox.Show(response.Content);
            }
        }
コード例 #11
0
        private void CreateNewGameButton_Click(object sender, RoutedEventArgs e)
        {
            ClientClass   client   = new ClientClass();
            IRestResponse response = client.newGame(UserInfo.UserLogin, UserInfo.UserSession);

            if (response.IsSuccessful)
            {
                ServerResponse serverResponse = JsonConvert.DeserializeObject <ServerResponse>(response.Content);
                UserInfo.UserGame = serverResponse.game;
                GmMainMenu gmMainWin = new GmMainMenu();
                Close();
                gmMainWin.ShowDialog();
            }
            else
            {
                MessageBox.Show(response.Content);
            }
        }
コード例 #12
0
        private void UpdateInf_Click(object sender, RoutedEventArgs e)
        {
            Hero.hero.heroInfo.exp         = Int32.Parse(ExpBox.Text);
            Hero.hero.heroInfo.AC          = Int32.Parse(ACBox.Text);
            Hero.hero.heroInfo.hp          = Int32.Parse(HpBox.Text);
            Hero.hero.heroInfo.hpmax       = Int32.Parse(HpMaxBox.Text);
            Hero.hero.heroInfo.HitBones    = Int32.Parse(HitBonesBox.Text);
            Hero.hero.heroInfo.HitBonesMax = Int32.Parse(HitBonesMaxBox.Text);
            Hero.hero.heroInfo.MasterBonus = Int32.Parse(MasterBonusBox.Text);
            Hero.hero.heroInfo.TemporaryHP = Int32.Parse(TemporaryHpBox.Text);

            ClientClass   client   = new ClientClass();
            IRestResponse response = client.saveHero(UserInfo.UserGame, UserInfo.UserLogin, UserInfo.UserSession, Hero);

            if (response.IsSuccessful)
            {
                MessageBox.Show(response.Content);
            }
            else
            {
                MessageBox.Show(response.Content);
            }
        }
コード例 #13
0
        private void Authorization_Button(object sender, RoutedEventArgs e)
        {
            string login = loginText.Text;
            string pass  = passText.Password;

            // Посылаем запрос auth
            ClientClass   client   = new ClientClass();
            IRestResponse response = client.Authorization(login, pass);

            if (response.IsSuccessful)
            {
                ClientClass   clientManual   = new ClientClass();
                IRestResponse responseManual = client.Manual();
                if (responseManual.IsSuccessful)
                {
                    ManualInf.manual = JsonConvert.DeserializeObject <Manual>(responseManual.Content);
                }
                else
                {
                    MessageBox.Show(responseManual.Content);
                }

                // Запоминаем инфу юзера
                ServerResponse serverResponse = JsonConvert.DeserializeObject <ServerResponse>(response.Content);
                UserInfo.UserLogin   = login;
                UserInfo.UserRole    = serverResponse.role;
                UserInfo.UserSession = serverResponse.session;

                User user = new User();
                user.Login   = login;
                user.Session = serverResponse.session;
                ClientClass   clientReconnect   = new ClientClass(); // Посылаем запрос connect
                IRestResponse responseReconnect = clientReconnect.Connect(user, 0);
                if (responseReconnect.IsSuccessful)                  // Проверка на реконнект
                {
                    ServerResponse serverResponseReconnect = JsonConvert.DeserializeObject <ServerResponse>(responseReconnect.Content);
                    switch (UserInfo.UserRole)
                    {
                    case 1:
                        UserInfo.UserGame = serverResponseReconnect.game;
                        GmConnect gmConnectWin = new GmConnect();
                        Close();
                        gmConnectWin.ShowDialog();
                        break;

                    case 2:
                        HeroCard hero = new HeroCard();
                        UserInfo.UserGame = serverResponseReconnect.game;
                        hero = serverResponseReconnect.hero;
                        MainMenu mainWin = new MainMenu(hero);
                        Close();
                        mainWin.ShowDialog();
                        break;
                    }
                }
                else // Игры не существует
                {
                    switch (UserInfo.UserRole)
                    {
                    case 1:
                        GmConnect gmConnectWin = new GmConnect();
                        Close();
                        gmConnectWin.ShowDialog();
                        break;

                    case 2:
                        GameConnectingWindow connectWin = new GameConnectingWindow();
                        Close();
                        connectWin.ShowDialog();
                        break;
                    }
                }
            }
            else // Ошибка авторизации
            {
                MessageBox.Show(response.Content);
            }
        }