Exemple #1
0
        public static XElement toXmlStat(SoldierClassStat stat)
        {
            XElement xmlStat = new XElement(Constants.XML_STAT);

            addBaseChild(xmlStat, Constants.XML_STAT_TYPE, ((int?)stat.stat).ToString());
            addBaseChild(xmlStat, Constants.XML_STAT_VALUE, stat.value.ToString());
            addBaseChild(xmlStat, Constants.XML_STAT_RANK, ((int?)stat.rank).ToString());

            return(xmlStat);
        }
        private SoldierClassStat buildSoldierStatFromControl(TextBox control, SoldierRank rank, Stat stat)
        {
            SoldierClassStat soldierStat = new SoldierClassStat();

            soldierStat.rank  = rank;
            soldierStat.stat  = stat;
            soldierStat.value = Utils.parseStringToInt(control.Text);

            return(soldierStat);
        }
Exemple #3
0
        public void convertStat()
        {
            SoldierClassStat stat = new SoldierClassStat();

            stat.stat  = Stat.Strength;
            stat.value = 2;
            stat.rank  = SoldierRank.Sergeant;

            XElement actual = XcomPerkManager.Conversion.Convert.toXmlStat(stat);

            XElement expected = new XElement(Constants.XML_STAT);

            expected.Add(new XElement(Constants.XML_STAT_TYPE, "2"));
            expected.Add(new XElement(Constants.XML_STAT_VALUE, "2"));
            expected.Add(new XElement(Constants.XML_STAT_RANK, "3"));

            Assert.IsTrue(XNode.DeepEquals(expected, actual));
        }
Exemple #4
0
        public void convertStat()
        {
            XElement xmlStat = new XElement(Constants.XML_STAT);

            xmlStat.Add(new XElement(Constants.XML_STAT_TYPE, "2"));
            xmlStat.Add(new XElement(Constants.XML_STAT_VALUE, "2"));
            xmlStat.Add(new XElement(Constants.XML_STAT_RANK, "3"));

            SoldierClassStat actual = XcomPerkManager.Conversion.Convert.toDriverStat(xmlStat);

            SoldierClassStat expected = new SoldierClassStat();

            expected.stat  = Stat.Strength;
            expected.value = 2;
            expected.rank  = SoldierRank.Sergeant;

            Assert.AreEqual(expected, actual, "Expected: " + expected.ToString() + "\nActual: " + actual.ToString());
        }
Exemple #5
0
        public static SoldierClassStat toDriverStat(XElement xmlStat)
        {
            SoldierClassStat stat = new SoldierClassStat();

            stat.stat = (Stat)int.Parse(xmlStat.Element(Constants.XML_STAT_TYPE).Value);
            string statValueString = xmlStat.Element(Constants.XML_STAT_VALUE).Value;

            if (String.IsNullOrEmpty(statValueString))
            {
                stat.value = null;
            }
            else
            {
                stat.value = int.Parse(statValueString);
            }

            stat.rank = (SoldierRank)int.Parse(xmlStat.Element(Constants.XML_STAT_RANK).Value);

            return(stat);
        }
Exemple #6
0
        public void convertStats()
        {
            List <SoldierClassStat> stats = new List <SoldierClassStat>();

            SoldierClassStat statA = new SoldierClassStat();

            statA.stat  = Stat.Strength;
            statA.value = 2;
            statA.rank  = SoldierRank.Sergeant;
            stats.Add(statA);

            SoldierClassStat statB = new SoldierClassStat();

            statB.stat  = Stat.Aim;
            statB.value = 0;
            statB.rank  = SoldierRank.Squaddie;
            stats.Add(statB);

            XElement actual = XcomPerkManager.Conversion.Convert.toXmlStats(stats);

            XElement expected = new XElement(Constants.XML_STATS);

            XElement expectedStatA = new XElement(Constants.XML_STAT);

            expectedStatA.Add(new XElement(Constants.XML_STAT_TYPE, "2"));
            expectedStatA.Add(new XElement(Constants.XML_STAT_VALUE, "2"));
            expectedStatA.Add(new XElement(Constants.XML_STAT_RANK, "3"));
            expected.Add(expectedStatA);

            XElement expectedStatB = new XElement(Constants.XML_STAT);

            expectedStatB.Add(new XElement(Constants.XML_STAT_TYPE, "1"));
            expectedStatB.Add(new XElement(Constants.XML_STAT_VALUE, "0"));
            expectedStatB.Add(new XElement(Constants.XML_STAT_RANK, "1"));
            expected.Add(expectedStatB);

            Assert.IsTrue(XNode.DeepEquals(expected, actual), "Expected: " + expected.ToString() + "\nActual: " + actual.ToString());
        }
Exemple #7
0
        public void convertStats()
        {
            XElement xmlStats = new XElement(Constants.XML_STATS);

            XElement xmlStatA = new XElement(Constants.XML_ABILITY);

            xmlStatA.Add(new XElement(Constants.XML_STAT_TYPE, "2"));
            xmlStatA.Add(new XElement(Constants.XML_STAT_VALUE, "2"));
            xmlStatA.Add(new XElement(Constants.XML_STAT_RANK, "3"));
            xmlStats.Add(xmlStatA);

            XElement xmlStatB = new XElement(Constants.XML_ABILITY);

            xmlStatB.Add(new XElement(Constants.XML_STAT_TYPE, "1"));
            xmlStatB.Add(new XElement(Constants.XML_STAT_VALUE, "0"));
            xmlStatB.Add(new XElement(Constants.XML_STAT_RANK, "1"));
            xmlStats.Add(xmlStatB);

            List <SoldierClassStat> actual = XcomPerkManager.Conversion.Convert.toDriverStats(xmlStats);

            List <SoldierClassStat> expected = new List <SoldierClassStat>();

            SoldierClassStat expectedStatA = new SoldierClassStat();

            expectedStatA.stat  = Stat.Strength;
            expectedStatA.value = 2;
            expectedStatA.rank  = SoldierRank.Sergeant;
            expected.Add(expectedStatA);

            SoldierClassStat expectedStatB = new SoldierClassStat();

            expectedStatB.stat  = Stat.Aim;
            expectedStatB.value = 0;
            expectedStatB.rank  = SoldierRank.Squaddie;
            expected.Add(expectedStatB);

            Assert.IsTrue(expected.SequenceEqual(actual), "Expected: " + expected.ToString() + "\nActual: " + actual.ToString());
        }
Exemple #8
0
        public void convertSoldierClass()
        {
            SoldierClassMetadata metadata = new SoldierClassMetadata();

            metadata.internalName = "InternalTest";
            metadata.displayName  = "Internal Test";
            metadata.description  = "This is a test";
            metadata.iconString   = "Here.jpg";

            SoldierClassExperience experience = new SoldierClassExperience();

            experience.numberInForcedDeck = 1;
            experience.numberInDeck       = 2;
            experience.killAssistsPerKill = 3;

            SoldierClassEquipment equipment = new SoldierClassEquipment();

            equipment.squaddieLoadout = "Squaddie_TestClass";
            equipment.allowedArmors   = "squaddie";

            List <Weapon> weapons = new List <Weapon>();

            Weapon weaponA = new Weapon();

            weaponA.weaponName = "shotgun";
            weaponA.weaponSlot = WeaponSlot.Primary;
            weapons.Add(weaponA);

            Weapon weaponB = new Weapon();

            weaponB.weaponName = "sword";
            weaponB.weaponSlot = WeaponSlot.Secondary;
            weapons.Add(weaponB);

            equipment.weapons = weapons;

            List <SoldierClassAbility> abilities = new List <SoldierClassAbility>();

            SoldierClassAbility abilityA = new SoldierClassAbility();

            abilityA.internalName = "TestAbility";
            abilityA.displayName  = "Test Ability";
            abilityA.description  = "Hello";
            abilityA.requiredMod  = "My Mod";
            abilityA.rank         = SoldierRank.Corporal;
            abilityA.slot         = 3;
            abilityA.weaponSlot   = WeaponSlot.Primary;
            abilities.Add(abilityA);

            SoldierClassAbility abilityB = new SoldierClassAbility();

            abilityB.internalName = "TestAbility2";
            abilityB.displayName  = "Test Ability2";
            abilityB.description  = "Hello2";
            abilityB.requiredMod  = "My Mod2";
            abilityB.rank         = SoldierRank.Lieutenant;
            abilityB.slot         = 1;
            abilityB.weaponSlot   = WeaponSlot.Secondary;
            abilities.Add(abilityB);

            List <SoldierClassStat> stats = new List <SoldierClassStat>();

            SoldierClassStat statA = new SoldierClassStat();

            statA.stat  = Stat.Strength;
            statA.value = 2;
            statA.rank  = SoldierRank.Sergeant;
            stats.Add(statA);

            SoldierClassStat statB = new SoldierClassStat();

            statB.stat  = Stat.Aim;
            statB.value = 0;
            statB.rank  = SoldierRank.Squaddie;
            stats.Add(statB);

            SoldierClass soldierClass = new SoldierClass();

            soldierClass.metadata         = metadata;
            soldierClass.experience       = experience;
            soldierClass.equipment        = equipment;
            soldierClass.soldierAbilities = abilities;
            soldierClass.stats            = stats;

            XElement actual = XcomPerkManager.Conversion.Convert.toXmlSoldierClass(soldierClass);

            XElement expected = new XElement(Constants.XML_CLASS);
        }