Exemple #1
0
        protected override bool TargetAllow(SimDescription target)
        {
            if (!Romances.Allow(this, Sim, target))
            {
                return(false);
            }
            if (MarriageBaseScenario.TestForChildBlock(Sim, target))
            {
                IncStat("Child Are Married");
                return(false);
            }
            else
            {
                SimData targetData = GetData(target);

                if (targetData.HasAnyValue <ArrangedMarriageCasteOption, CasteOptions>())
                {
                    if (!targetData.Contains <ArrangedMarriageCasteOption>(GetData(Sim).Castes))
                    {
                        IncStat("Target Caste Fail");
                        return(false);
                    }
                }
            }

            return(base.TargetAllow(target));
        }
Exemple #2
0
        protected override ICollection <SimDescription> GetTargets(SimDescription sim)
        {
            SimData simData = GetData(sim);

            List <SimDescription> results = new List <SimDescription>();

            foreach (SimDescription target in Sims.TeensAndAdults)
            {
                if (simData.Contains <ArrangedMarriageCasteOption>(GetData(target).Castes))
                {
                    results.Add(target);
                }
            }

            return(results);
        }