Esempio n. 1
0
        public List <SimDescription> FindAnyFor(IScoringGenerator stats, SimDescription sim, bool allowAffair, bool force, ICollection <SimDescription> pool)
        {
            if ((sim == null) || (sim.Household == null))
            {
                stats.IncStat("Invalid Sim");
                return(new List <SimDescription>());
            }

            stats.AddStat("Pool", pool.Count);

            SimScoringList scoring = new SimScoringList("NewFlirt");

            foreach (SimDescription potential in pool)
            {
                stats.IncStat("FindAnyFor " + potential.FullName, Common.DebugLevel.Logging);

                if (IsValidLover(stats, sim, potential, allowAffair, force))
                {
                    scoring.Add(stats, "Single", potential, sim);
                }

                Main.Sleep("ManagerFlirt:FindAnyFor");
            }

            if (force)
            {
                return(scoring.GetBestByPercent(50f));
            }
            else
            {
                return(scoring.GetBestByMinScore(0));
            }
        }
Esempio n. 2
0
        protected override bool TargetSort(SimDescription sim, ref List <SimDescription> targets)
        {
            SimScoringList scoring = new SimScoringList("NewFlirt");

            foreach (SimDescription target in targets)
            {
                scoring.Add(this, "NewFlirt", target, sim);
            }

            targets = scoring.GetBestByPercent(100);
            return(true);
        }
 protected override bool TargetSort(SimDescription sim, ref List<SimDescription> targets)
 {
     targets = new SimScoringList(Manager, "Friendship", targets, true, sim).GetBestByMinScore(1);
     return true;
 }
Esempio n. 4
0
 protected override bool TargetSort(SimDescription sim, ref List <SimDescription> targets)
 {
     targets = new SimScoringList(Manager, "Enemy", targets, true, sim).GetBestByMinScore(1);
     return(true);
 }