public PersonalityEngine( MonsterEntry existing )
     : this()
 {
     OriginalTrainer = existing.Shiny ? (uint?) existing.OriginalTrainerId : null;
     Nature = existing.Nature;
     Ability = existing.Ability;
     Evolution = existing.Evolution;
     Gender = new GenderDecision( existing.Gender, existing.TypeInformation );
 }
        public void GivenTypeCanDecideGenderFemale( int type )
        {
            var gd = new GenderDecision( MonsterGender.F, (uint) type );

            var p = new PersonalityEngine { Gender = gd };
            var g = p.Generate();

            var t = MonsterList.Get( (uint) type );

            Assert.IsTrue( ( g & 0xff ) < t.Gender );
        }
        public void GivenTypeMOnlyDecisionIsIgnored()
        {
            var gd = new GenderDecision( MonsterGender.F, 32 );

            var p = new PersonalityEngine { Gender = gd };
            var g = p.Generate();
        }