private IEntityInfo GenerateEntityInfo(EntityRace race, EntityOccupation occupation)
        {
            if (occupation == EntityOccupation.None)
            {
                occupation = GetRandomOccupation();
            }
            if (race == EntityRace.None)
            {
                race = GetRandomRace();
            }

            string firstName = "";
            string lastName  = "";

            if (race.HasFlag(EntityRace.Male))
            {
                int nameIndex = GameGlobal.RandomInt(0, Names[EntityRace.Human | EntityRace.Male].Length);
                firstName = Names[EntityRace.Human | EntityRace.Male][nameIndex];
                nameIndex = GameGlobal.RandomInt(0, Names[EntityRace.Human | EntityRace.Family].Length);
                lastName  = Names[EntityRace.Human | EntityRace.Family][nameIndex];
            }
            else if (race.HasFlag(EntityRace.Female))
            {
                int nameIndex = GameGlobal.RandomInt(0, Names[EntityRace.Human | EntityRace.Female].Length);
                firstName = Names[EntityRace.Human | EntityRace.Male][nameIndex];
                nameIndex = GameGlobal.RandomInt(0, Names[EntityRace.Human | EntityRace.Family].Length);
                lastName  = Names[EntityRace.Human | EntityRace.Family][nameIndex];
            }
            return(new EntityInfo(race, occupation, 25 * 365, firstName, lastName));
        }
        public EntityRace GetRandomRace()
        {
            int randomGender = GameGlobal.RandomInt(1, 2);
            int randomRace   = (int)EntityRace.Human; // only do human for now

            //int randomRace = GameGlobal.RandomInt(GameGlobal.MinRaceCode, GameGlobal.MaxRaceCode);
            return((EntityRace)(randomGender | randomRace));
        }
 public EntityOccupation GetRandomOccupation()
 {
     return((EntityOccupation)GameGlobal.RandomInt(1, Globals.OccupationTypeCount));
 }