示例#1
0
        public static SoldierClassExperience toDriverExperience(XElement xmlExperience)
        {
            SoldierClassExperience experience = new SoldierClassExperience();

            experience.numberInForcedDeck = int.Parse(xmlExperience.Element(Constants.XML_EXPERIENCE_NUM_IN_FORCED_DECK).Value);
            experience.numberInDeck       = int.Parse(xmlExperience.Element(Constants.XML_EXPERIENCE_NUM_IN_DECK).Value);
            experience.killAssistsPerKill = int.Parse(xmlExperience.Element(Constants.XML_EXPERIENCE_KILL_ASSISTS_PER_KILL).Value);

            return(experience);
        }
示例#2
0
        public static XElement toXmlExperience(SoldierClassExperience experience)
        {
            XElement xmlExperience = new XElement(Constants.XML_EXPERIENCE);

            addBaseChild(xmlExperience, Constants.XML_EXPERIENCE_NUM_IN_FORCED_DECK, experience.numberInForcedDeck.ToString());
            addBaseChild(xmlExperience, Constants.XML_EXPERIENCE_NUM_IN_DECK, experience.numberInDeck.ToString());
            addBaseChild(xmlExperience, Constants.XML_EXPERIENCE_KILL_ASSISTS_PER_KILL, experience.killAssistsPerKill.ToString());

            return(xmlExperience);
        }
示例#3
0
        public void convertExperience()
        {
            SoldierClassExperience experience = new SoldierClassExperience();

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

            XElement actual = XcomPerkManager.Conversion.Convert.toXmlExperience(experience);

            XElement expected = new XElement(Constants.XML_EXPERIENCE);

            expected.Add(new XElement(Constants.XML_EXPERIENCE_NUM_IN_FORCED_DECK, "1"));
            expected.Add(new XElement(Constants.XML_EXPERIENCE_NUM_IN_DECK, "2"));
            expected.Add(new XElement(Constants.XML_EXPERIENCE_KILL_ASSISTS_PER_KILL, "3"));

            Assert.IsTrue(XNode.DeepEquals(expected, actual), "Expected: " + expected.ToString() + "\nActual: " + actual.ToString());
        }
示例#4
0
        public void convertExperience()
        {
            XElement xmlExperience = new XElement(Constants.XML_EXPERIENCE);

            xmlExperience.Add(new XElement(Constants.XML_EXPERIENCE_NUM_IN_FORCED_DECK, "1"));
            xmlExperience.Add(new XElement(Constants.XML_EXPERIENCE_NUM_IN_DECK, "2"));
            xmlExperience.Add(new XElement(Constants.XML_EXPERIENCE_KILL_ASSISTS_PER_KILL, "3"));

            SoldierClassExperience actual = XcomPerkManager.Conversion.Convert.toDriverExperience(xmlExperience);

            SoldierClassExperience expected = new SoldierClassExperience();

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

            Assert.AreEqual(expected, actual);
        }
示例#5
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);
        }