当前位置: 首页>>代码示例>>C#>>正文


C# Household.Contains方法代码示例

本文整理汇总了C#中Household.Contains方法的典型用法代码示例。如果您正苦于以下问题:C# Household.Contains方法的具体用法?C# Household.Contains怎么用?C# Household.Contains使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Household的用法示例。


在下文中一共展示了Household.Contains方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: GhostToPlayableGhost

        // Lacks the "greater than eight" restriction
        public static bool GhostToPlayableGhost(Urnstone ths, Household newHousehold, Vector3 ghostPosition)
        {
            SimDescription simDescription = ths.DeadSimsDescription;

            if (!simDescription.IsValidDescription)
            {
                simDescription.Fixup();
            }

            if (simDescription.Household != null)
            {
                simDescription.Household.Remove(simDescription, !simDescription.Household.IsSpecialHousehold);
            }

            if (!newHousehold.Contains(simDescription))
            {
                newHousehold.Add(simDescription);
            }

            Sim ghost = Instantiation.Perform(simDescription, ghostPosition, null, null);
            if (ghost == null) return false;

            ths.GhostSetup(ghost, true);

            ths.RemoveMourningRelatedBuffs(ghost);

            simDescription.ShowSocialsOnSim = true;
            simDescription.IsNeverSelectable = false;
            simDescription.Marryable = true;
            simDescription.Contactable = true;

            if (!simDescription.IsEP11Bot)
            {
                simDescription.AgingEnabled = true;
                simDescription.AgingState.ResetAndExtendAgingStage(0f);
                simDescription.PushAgingEnabledToAgingManager();
            }

            string failureReason;
            if (!Inventories.TryToMove(ths, ghost.Inventory, true, out failureReason))
            {
                Common.DebugNotify(failureReason);
            }
            //Inventories.TryToMove(ths, ghost);

            if (simDescription.Child || simDescription.Teen)
            {
                simDescription.AssignSchool();
            }

            if (ghost.IsSelectable)
            {
                ghost.OnBecameSelectable();
            }

            return true;
        }
开发者ID:Robobeurre,项目名称:NRaas,代码行数:58,代码来源:Urnstones.cs

示例2: PostTransfer

        private void PostTransfer(Household newHouse, Household oldHouse, Lot oldLot, List<SimDescription> previousSims, List<Sim> movingSims, List<Sim> newSims)
        {
            foreach (Sim sim in Households.AllSims(newHouse))
            {
                if ((sim == mMarryingSimSelectable) || !previousSims.Contains(sim.SimDescription))
                {
                    foreach (SimDescription previousSimDesc in previousSims)
                    {
                        Sim previousSim = previousSimDesc.CreatedSim;
                        if (previousSim == null) continue;

                        if (sim != previousSim)
                        {
                            EventTracker.SendEvent(EventTypeId.kMovedInTogether, sim, previousSim);
                            EventTracker.SendEvent(EventTypeId.kMovedInTogether, previousSim, sim);
                        }
                    }

                    if ((sim.LotCurrent != newHouse.LotHome) && ShouldMove(sim, oldLot))
                    {
                        if ((!(sim.CurrentInteraction is ICountsAsWorking)) && (sim.GetSituationOfType<HostedSituation>() == null))
                        {
                            movingSims.Add(sim);
                        }
                    }

                    if (sim != mMarryingSimSelectable)
                    {
                        newSims.Add(sim);
                    }
                }
                else if ((oldHouse.AllActors.Count == 0x0) && (sim.LotCurrent == oldLot))
                {
                    if ((!(sim.CurrentInteraction is ICountsAsWorking)) && (sim.GetSituationOfType<HostedSituation>() == null))
                    {
                        Sim.MakeSimGoHome(sim, false, new InteractionPriority(InteractionPriorityLevel.UserDirected));
                    }
                }
            }

            if (newHouse.NumMembers == 0)
            {
                EventTracker.SendEvent(new HouseholdUpdateEvent(EventTypeId.kHouseholdMerged, newHouse));
            }
            else
            {
                bool split = false;
                foreach (ISimDescription iSim in previousSims)
                {
                    SimDescription simDesc = iSim as SimDescription;
                    if (simDesc == null) continue;

                    if (!newHouse.Contains(simDesc))
                    {
                        split = true;
                        break;
                    }
                }

                if (split)
                {
                    EventTracker.SendEvent(new HouseholdUpdateEvent(EventTypeId.kHouseholdSplit, newHouse));
                }
            }
        }
开发者ID:Robobeurre,项目名称:NRaas,代码行数:65,代码来源:GameplayMovingModelEx.cs

示例3: TransferSims

        private void TransferSims(Household newHouse, Household oldHouse, bool willBeActive, bool mergeInventories, Dictionary<ISimDescription,bool> sims)
        {
            Common.StringBuilder msg = new Common.StringBuilder("TransferSims" + Common.NewLine);

            try
            {
                newHouse.AddGreetedLotToHousehold(newHouse.LotHome, ObjectGuid.InvalidObjectGuid);

                msg += "A";

                List<Sim> simsMovingToHousehold = new List<Sim>();
                WorldName currentWorld = GameUtils.GetCurrentWorld();

                foreach (ISimDescription iSim in sims.Keys)
                {
                    SimDescription simDesc = iSim as SimDescription;

                    msg += Common.NewLine + iSim.FullName + Common.NewLine;

                    try
                    {
                        if ((!willBeActive) && (simDesc.IsEnrolledInBoardingSchool()))
                        {
                            msg += "B";

                            Sim createdSim = simDesc.CreatedSim;
                            if (createdSim == null)
                            {
                                BoardingSchool.Remove(null, simDesc, BoardingSchool.RemovalReasons.Removed, false);
                            }
                            else
                            {
                                InteractionInstance currentInteraction = createdSim.CurrentInteraction;
                                if ((currentInteraction != null) && ((currentInteraction is BoardingSchoolPickUpSituation.GetInCar) || (currentInteraction is PoliceSituation.Wait)))
                                {
                                    createdSim.SetObjectToReset();
                                    SpeedTrap.Sleep();
                                    createdSim.AttemptToPutInSafeLocation(true);
                                }

                                if (simDesc.BoardingSchool != null)
                                {
                                    simDesc.BoardingSchool.OnRemovedFromSchool();
                                }

                                simDesc.AssignSchool();
                            }
                        }

                        if (!newHouse.Contains(simDesc))
                        {
                            msg += "C";

                            if (simDesc.CreatedSim == null)
                            {
                                msg += Common.NewLine + "C1 " + simDesc.FullName + Common.NewLine;

                                TryInstantiateSim(simDesc);
                            }

                            if (simDesc.CreatedSim != null)
                            {
                                if (simDesc.Household != newHouse)
                                {
                                    EventTracker.SendEvent(EventTypeId.kMovedHousehold, simDesc.CreatedSim);
                                }

                                simsMovingToHousehold.Add(simDesc.CreatedSim);
                                Household.AddServobotToHouseholdFixup(simDesc.CreatedSim);
                                EventTracker.SendEvent(EventTypeId.kMovedHouses, simDesc.CreatedSim);
                                MidlifeCrisisManager.OnMoved(simDesc);

                                MiniSimDescription miniSim = MiniSimDescription.Find(simDesc.SimDescriptionId);
                                if (miniSim != null)
                                {
                                    miniSim.Instantiated = true;
                                }

                                if (mSimsToReturnToForeignHousehold != null)
                                {
                                    mSimsToReturnToForeignHousehold.Remove(simDesc);
                                }

                                if (simDesc.HomeWorld != currentWorld)
                                {
                                    simDesc.BuildOutfitsOfType(sCategories, "movingin");
                                }
                            }
                        }

                        if ((newHouse.LotHome == null) &&
                            (simDesc != null) &&
                            (simDesc.Household != null) &&
                            (simDesc.CreatedSim != null) &&
                            (simDesc.CreatedSim.Inventory != null) &&
                            (simDesc.CreatedSim.Inventory.NumItemsStored > 0x0))
                        {
                            msg += "D";

                            Sim toGiveTo = null;
//.........这里部分代码省略.........
开发者ID:Robobeurre,项目名称:NRaas,代码行数:101,代码来源:GameplayMovingModelEx.cs


注:本文中的Household.Contains方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。