Example #1
0
    bool IsProfessionChecked(Human.ProfessionType prof)
    {
        switch (prof)
        {
        case Human.ProfessionType.Agent: return(AgentsFilter.isOn);

        case Human.ProfessionType.Operative: return(OperativesFilter.isOn);

        case Human.ProfessionType.Scientist: return(ScientistsFilter.isOn);

        case Human.ProfessionType.D_Personnel: return(DPersonnelFilter.isOn);
        }
        return(false);
    }
Example #2
0
    public Human GetNewHuman(Human.SexType Sex, Human.ProfessionType Profession, float SpecialChance)
    {
        if (Sex == Human.SexType.NoMatter)
        {
            Sex = Random.Range(0, 2) == 0 ? Human.SexType.Male : Human.SexType.Female;
        }
        HashSet <int> FreeSpecial;

        if (Sex == Human.SexType.Male)
        {
            FreeSpecial = FreePregeneratedMen;
        }
        else
        {
            FreeSpecial = FreePregeneratedWomen;
        }
        if (Random.value <= SpecialChance && FreeSpecial.Count > 0)
        {
            var Enum    = FreeSpecial.GetEnumerator();
            int elemPos = Random.Range(0, FreeSpecial.Count);
            for (int i = 0; i < elemPos; i++)
            {
                Enum.MoveNext();
            }
            FreeSpecial.Add(Enum.Current);
            if (Sex == Human.SexType.Male)
            {
                return(GameData.Data.HumanGenerator.PreGeneratedMen[Enum.Current]);
            }
            else
            {
                return(GameData.Data.HumanGenerator.PreGeneratedWomen[Enum.Current]);
            }
        }
        else
        {
            return(GameData.Data.HumanGenerator.GenerateHuman(Sex));
        }
    }