private void restoreNPCHP_Click(object sender, RoutedEventArgs e)
        {
            List<UndoableCommand> commList = new List<UndoableCommand>();
            for (int i = 0; i < listi.Count; i++)
            {
                Combatant toBeRestoredCombatant = listi[i];

                if (toBeRestoredCombatant.IsNPC)
                {
                    float maxHP = toBeRestoredCombatant.MaxHP;
                    CommUpdateCombatant commUpdt = new CommUpdateCombatant(toBeRestoredCombatant, CombatantAttributes.hp, maxHP);
                    commList.Add(commUpdt);
                }

            }
            if (commList.Count > 0)
            {
                CommCommandPackStarter commPack = new CommCommandPackStarter(commList);
                commPack.Execute();
            }
        }
        private void rollNPCInit_Click(object sender, RoutedEventArgs e)
        {
            List<UndoableCommand> commList = new List<UndoableCommand>();
            Random random = new Random();
            for (int i = 0; i < listi.Count; i++)
            {
                Combatant rollInitCombatant = listi[i];
                if (rollInitCombatant.IsNPC)
                {
                    float initiative = rollInitCombatant.InitMod + random.Next(1, 21);
                    CommUpdateCombatant commUpdt = new CommUpdateCombatant(rollInitCombatant, CombatantAttributes.initiative, initiative);
                    commList.Add(commUpdt);
                }

            }
            if (commList.Count > 0)
            {
                CommCommandPackStarter commPack = new CommCommandPackStarter(commList);
                commPack.Execute();
            }
        }
        private void GiveXP_Click(object sender, RoutedEventArgs e)
        {
            List<UndoableCommand> commList = new List<UndoableCommand>();
            int numPCs = 0;
            for (int i = 0; i < listi.Count; i++)
            {
                if (!listi[i].IsNPC)
                {
                    numPCs++;
                }
            }
            Window2 inputGetter = new Window2("How much xp will be Awarded?");
            inputGetter.ShowDialog();
            float xpShare = App.getFloatFromString(inputGetter.InputValue) / (float)numPCs;
            for (int i = 0; i < listi.Count; i++)
            {
                if (!listi[i].IsNPC)
                {
                    float xp = listi[i].XP + xpShare;
                    CommUpdateCombatant commUpdt = new CommUpdateCombatant(listi[i], CombatantAttributes.xp, xp);
                    commList.Add(commUpdt);
                }

            }
            if (commList.Count > 0)
            {
                CommCommandPackStarter commPack = new CommCommandPackStarter(commList);
                commPack.Execute();
            }
        }