Esempio n. 1
0
        private void Btn_figth_apply_ability_Click(object sender, RoutedEventArgs e)
        {
            string log = "";

            if (cb_figth_abilities.SelectedIndex == 0)
            {
                int x = main_hero.attack(enemy, 1);
                enemy.HP = enemy.HP - x;
                pb_fight_enemy_hp.Value = enemy.HP;
                if (main_hero.Gender == "Мужчина")
                {
                    log = main_hero.Name + " атаковал " + enemy.Name + " и нанес " + x.ToString() + " урона";
                }
                else if (main_hero.Gender == "Женщина")
                {
                    log = main_hero.Name + " атаковала " + enemy.Name + " и нанес " + x.ToString() + " урона";
                }
                else
                {
                    log = main_hero.Name + " атаковало " + enemy.Name + " и нанес " + x.ToString() + " урона";
                }
            }
            else if (cb_figth_abilities.SelectedIndex == 1)
            {
                int x = main_hero.attack(enemy, 3);
                enemy.HP = enemy.HP - x;
                pb_fight_enemy_hp.Value = enemy.HP;
                if (main_hero.Gender == "Мужчина")
                {
                    log = main_hero.Name + " атаковал " + enemy.Name + " и нанес " + x.ToString() + " урона";
                }
                else if (main_hero.Gender == "Женщина")
                {
                    log = main_hero.Name + " атаковала " + enemy.Name + " и нанес " + x.ToString() + " урона";
                }
                else
                {
                    log = main_hero.Name + " атаковало " + enemy.Name + " и нанес " + x.ToString() + " урона";
                }
            }
            lb_fight_log.Items.Insert(0, log);
            int y = enemy.attack(main_hero, rnd.Next(1, 2));

            main_hero.HP           = main_hero.HP - y;
            pb_fight_hero_hp.Value = main_hero.HP;
            if (enemy.Gender == "Мужчина")
            {
                log = enemy.Name + " атаковал " + main_hero.Name + " и нанес " + y.ToString() + " урона";
            }
            else if (enemy.Gender == "Женщина")
            {
                log = enemy.Name + " атаковала " + main_hero.Name + " и нанес " + y.ToString() + " урона";
            }
            else
            {
                log = enemy.Name + " атаковало " + main_hero.Name + " и нанес " + y.ToString() + " урона";
            }
            lb_fight_log.Items.Insert(0, log);
            if ((main_hero.HP <= 0) || (enemy.HP <= 0))
            {
                if ((main_hero.HP <= 0) && (enemy.HP <= 0))
                {
                    MessageBox.Show("Ничья!", "Конец сражения", MessageBoxButton.OK, MessageBoxImage.Information);
                    main_hero.HP = 100 + main_hero.Stamina * 20;
                    enemy.HP     = 100 + enemy.Stamina * 20;
                    tab_control.SelectedIndex = 0;
                }
                else
                {
                    if (main_hero.HP <= 0)
                    {
                        MessageBox.Show("Вы проиграли!", "Конец сражения", MessageBoxButton.OK, MessageBoxImage.Information);
                        main_hero.HP = 100 + main_hero.Stamina * 20;
                        enemy.HP     = 100 + enemy.Stamina * 20;
                        tab_control.SelectedIndex = 0;
                    }
                    else
                    {
                        int x = rnd.Next(main_hero.Level + main_hero.Luck);
                        MessageBox.Show("Вы выиграли и получили " + x.ToString() + " очков опыта!", "Конец сражения", MessageBoxButton.OK, MessageBoxImage.Information);
                        main_hero.HP           = 100 + main_hero.Stamina * 20;
                        main_hero.Skillpoints += x;
                        enemy.HP = 100 + enemy.Stamina * 20;
                        tab_control.SelectedIndex = 0;
                        if (main_hero.Skillpoints > main_hero.Level * 2)
                        {
                            MessageBox.Show("Вы получили новый уровень!", "Новый уровень", MessageBoxButton.OK, MessageBoxImage.Information);
                            main_hero.Level += main_hero.Skillpoints / 5;
                        }
                        Hero_refresh();
                    }
                }
                enable = !enable;
            }
            cb_figth_abilities.SelectedIndex = -1;
        }