Beispiel #1
0
        protected override bool Allow(Household house)
        {
            if (SimTypes.IsSpecial(house))
            {
                IncStat("Special");
                return(false);
            }
            else if (house == Household.ActiveHousehold)
            {
                IncStat("Active");
                return(false);
            }
            else if (house.LotHome == null)
            {
                IncStat("Homeless");
                return(false);
            }
            else if (!Households.Allow(this, house, GetValue <ManagerHousehold.MinTimeBetweenMovesOption, int>()))
            {
                IncStat("Cooldown");
                return(false);
            }
            else if (GetValue <IsAncestralOption, bool>(house))
            {
                IncStat("Ancestral");
                return(false);
            }
            else if (Lots.AllowCastes(this, house.LotHome, HouseholdsEx.All(house)))
            {
                IncStat("Unnecessary");
                return(false);
            }

            return(base.Allow(house));
        }
Beispiel #2
0
        protected override bool Allow(SimDescription sim)
        {
            if (!Households.Allow(this, sim))
            {
                IncStat("User Denied");
                return(false);
            }
            else if (sim.Household == null)
            {
                return(false);
            }
            else if (SimTypes.IsSpecial(sim))
            {
                IncStat("Special");
                return(false);
            }
            else if (sim.LotHome == null)
            {
                IncStat("Homeless");
                return(false);
            }
            else if (SimTypes.HeadOfFamily(sim.Household) == sim)
            {
                IncStat("Head");
                return(false);
            }
            else if (!Households.AllowSoloMove(sim))
            {
                IncStat("Too Young");
                return(false);
            }
            else if (Lots.AllowCastes(this, sim.LotHome, sim))
            {
                IncStat("Unnecessary");
                return(false);
            }

            return(base.Allow(sim));
        }