Example #1
0
 private void AddBaseIndicesToAllTargets()
 {
     AllTargets.Add(new CharacterAccount("All Targets", 1, DamageType.None));
     AllTargets.Add(new CharacterAccount("Hero Targets", 1, DamageType.None));
     AllTargets.Add(new CharacterAccount("NonHero Targets", 1, DamageType.None));
     AllTargets.Add(new CharacterAccount("Environment Targets", 1, DamageType.None));
     AllTargets.Add(new CharacterAccount("Villain Targets", 1, DamageType.None));
 }
Example #2
0
        private void DamageSubmit_ButtonClick(object sender, RoutedEventArgs e)
        {
            if (selectedCharacter.Incapped == false)
            {
                bool isNumeric = int.TryParse(tbDmgAmount.Text, out int amount);
                if (String.IsNullOrWhiteSpace(tbDmgAmount.Text) || !isNumeric)
                {
                    tb_SubmitErrorMessageDamage.Text = "Please make sure that all entered values are valid";
                }
                else
                {
                    tb_SubmitErrorMessageDamage.Text = "";
                    switch (cbDamageAllTargetList.SelectedIndex)
                    {
                    case AllTargetsIndex:
                        foreach (CharacterAccount target in NonHeroTargets)
                        {
                            DealDamage(amount, target);
                        }
                        foreach (CharacterAccount target in HeroTargets)
                        {
                            DealDamage(amount, target);
                        }
                        break;

                    case HeroTargetsIndex:
                        foreach (CharacterAccount target in HeroTargets)
                        {
                            DealDamage(amount, target);
                        }
                        break;

                    case NonHeroTargetsIndex:
                        foreach (CharacterAccount target in NonHeroTargets)
                        {
                            DealDamage(amount, target);
                        }
                        break;

                    case EnvironmentTargetsIndex:
                        foreach (CharacterAccount target in EnvironmentTargets)
                        {
                            DealDamage(amount, target);
                        }
                        break;

                    case VillainTargetsIndex:
                        foreach (CharacterAccount target in VillainTargets)
                        {
                            DealDamage(amount, target);
                        }
                        break;

                    default:
                        CharacterAccount to = (CharacterAccount)cbDamageAllTargetList.SelectedItem;
                        DealDamage(amount, to);
                        break;
                    }

                    reloading = true;
                    AllTargets.Clear();
                    AddBaseIndicesToAllTargets();
                    cbDamageAllTargetList.SelectedIndex = 0;
                    cbHealAllTargetList.SelectedIndex   = 0;
                    NonHeroTargets.Clear();
                    HeroTargets.Clear();
                    VillainTargets.Clear();
                    EnvironmentTargets.Clear();

                    foreach (CharacterAccount characterAccount in GameContainer.ActiveGame.HeroPlayers)
                    {
                        HeroTargets.Add(characterAccount);
                    }

                    foreach (CharacterAccount characterAccount in GameContainer.ActiveGame.HeroTargets)
                    {
                        if (!HeroTargets.Contains(characterAccount))
                        {
                            HeroTargets.Add(characterAccount);
                        }
                        AllTargets.Add(characterAccount);
                    }

                    foreach (CharacterAccount characterAccount in GameContainer.ActiveGame.VillainTargets)
                    {
                        AllTargets.Add(characterAccount);
                        NonHeroTargets.Add(characterAccount);
                        VillainTargets.Add(characterAccount);
                    }

                    foreach (CharacterAccount characterAccount in GameContainer.ActiveGame.EnvCharacters)
                    {
                        AllTargets.Add(characterAccount);
                        NonHeroTargets.Add(characterAccount);
                        EnvironmentTargets.Add(characterAccount);
                    }

                    reloading = false;
                }
            }
        }