Example #1
0
 private void WoundEvent(object sender, CombatEventArgs e)
 {
     if (e.actor.Name != "Противник")
     {
         label_PlayerHP.Text      = e.actor.HP.ToString();
         progressBar_Player.Value = e.actor.HP;
     }
     else
     {
         label_OpponentHP.Text      = e.actor.HP.ToString();
         progressBar_Opponent.Value = e.actor.HP;
     }
     richTextBox_FightLog.Text += e.actor.Name + " решил защитить " + GetBodyPartString(e.actor.Blocked) + " вместо " + GetBodyPartString(e.attackedPart) + ", поэтому теперь у него " + e.currentHP + " здоровья\n";
 }
Example #2
0
        private void Attack(Actor attacker, Actor defender)
        {
            if (isFullRound == isPlayerTurn)
            {
                roundCount++;
                label_Round.Text = "Раунд " + roundCount;
            }
            BodyComponents attackedPart = BodyComponents.NONE;
            Array          bodyParts    = Enum.GetValues(typeof(BodyComponents));

            if (attacker.Name == "Противник")
            {
                attackedPart = (BodyComponents)bodyParts.GetValue(randomGenerator.Next(1, 3));
                if (radioButton_Head.Checked)
                {
                    defender.SetBlock(BodyComponents.HEAD);
                }
                if (radioButton_Body.Checked)
                {
                    defender.SetBlock(BodyComponents.BODY);
                }
                if (radioButton_Legs.Checked)
                {
                    defender.SetBlock(BodyComponents.LEGS);
                }
            }
            else
            {
                if (radioButton_Head.Checked)
                {
                    attackedPart = BodyComponents.HEAD;
                }
                if (radioButton_Body.Checked)
                {
                    attackedPart = BodyComponents.BODY;
                }
                if (radioButton_Legs.Checked)
                {
                    attackedPart = BodyComponents.LEGS;
                }
                defender.SetBlock((BodyComponents)bodyParts.GetValue(randomGenerator.Next(1, 3)));
            }
            isPlayerTurn = !isPlayerTurn;

            CombatEventArgs e = new CombatEventArgs(defender, attackedPart, 0, randomGenerator);

            defender.TryBlock(attackedPart, e);
        }
Example #3
0
 private void DeathEvent(object sender, CombatEventArgs e)
 {
     richTextBox_FightLog.Text += e.actor.Name + " не выдержал удара и упал навзничь\n";
     FinishGame();
 }
Example #4
0
 private void BlockEvent(object sender, CombatEventArgs e)
 {
     richTextBox_FightLog.Text += e.actor.Name + " успешно отбил атаку\n";
 }