Esempio n. 1
0
        public static void GiveVisitingBuffs(Sim actor, RabbitHole target, RabbitHole.VisitRabbitHoleTuningClass visitTuning, Origin visitBuffOrigin)
        {
            Career occupationAsCareer = actor.OccupationAsCareer;

            if ((occupationAsCareer != null) && (occupationAsCareer.CareerLoc.Owner == target))
            {
                actor.BuffManager.AddElement(BuffNames.Bored, visitBuffOrigin);
                return;
            }

            float visitBoredomChanceAdult = visitTuning.VisitBoredomChanceAdult;

            if (actor.SimDescription.Teen)
            {
                visitBoredomChanceAdult = visitTuning.VisitBoredomChanceTeen;
            }
            else if (actor.SimDescription.Child)
            {
                visitBoredomChanceAdult = visitTuning.VisitBoredomChanceChild;
            }

            if (RandomUtil.RandomChance(visitBoredomChanceAdult))
            {
                actor.BuffManager.AddElement(BuffNames.Bored, visitBuffOrigin);
                return;
            }

            BuffNames[] namesArray = new BuffNames[] { BuffNames.Excited, BuffNames.Fascinated, BuffNames.Intrigued, BuffNames.Impressed, BuffNames.Educated };
            actor.BuffManager.AddElement(namesArray[RandomUtil.GetInt(0x4)], visitBuffOrigin);
        }
Esempio n. 2
0
 public InteractionParameters(string prefix, string visitName, RabbitHole.VisitRabbitHoleTuningClass tuning, Origin origin)
 {
     mPrefix    = prefix;
     mVisitName = visitName;
     mTuning    = tuning;
     mOrigin    = origin;
 }
Esempio n. 3
0
 public StairsDefinition(string interactionName, RabbitHole.VisitRabbitHoleTuningClass visitTuning, Origin visitBuffOrigin) : base(interactionName, visitTuning, visitBuffOrigin)
 {
 }
Esempio n. 4
0
 public override InteractionDefinition GetInteractionDefinition(string interactionName, RabbitHole.VisitRabbitHoleTuningClass visitTuning, Origin visitBuffOrigin)
 {
     VisitRabbitHoleEx.Definition definition = new VisitRabbitHoleEx.Definition(interactionName, visitTuning, visitBuffOrigin);
     definition.IsGroupAddition = true;
     return(definition);
 }
Esempio n. 5
0
 protected BaseDefinition(VisitRabbitHoleEx.InteractionParameters parameters)
 {
     mPrefix         = parameters.mPrefix;
     VisitBuffOrigin = parameters.mOrigin;
     VisitTuning     = parameters.mTuning;
 }
Esempio n. 6
0
        public static void GettingItOnInRabbitHole(InteractionInstance instance, Sim wooHooer, Sim wooHooee, RabbitHoleRomanticType romanticType, RabbitHole.VisitRabbitHoleTuningClass visitTuning, CommonWoohoo.WoohooStyle style, CommonWoohoo.WoohooLocation location, bool impregnate)
        {
            RabbitHole target = instance.Target as RabbitHole;

            if (instance.InstanceActor == wooHooer)
            {
                switch (romanticType)
                {
                case RabbitHoleRomanticType.TryForBaby:
                case RabbitHoleRomanticType.WooHoo:
                    CommonWoohoo.RunPostWoohoo(wooHooer, wooHooee, target, style, location, true);
                    break;
                }

                Relationship relationship = Relationship.Get(wooHooer, wooHooee, true);
                if (relationship != null)
                {
                    relationship.UpdateSTCFromOutsideConversation(wooHooer, wooHooee, visitTuning.WooHooingCommodity, visitTuning.WooHooingSTCIncrement);
                }
            }

            if ((impregnate) && (CommonPregnancy.IsSuccess(wooHooer, wooHooee, instance.Autonomous, style)))
            {
                CommonPregnancy.Impregnate(wooHooer, wooHooee, instance.Autonomous, style);
            }

            target.RabbitHoleProxy.TurnOffWooHooEffect();
        }
Esempio n. 7
0
 public override InteractionDefinition GetInteractionDefinition(string interactionName, RabbitHole.VisitRabbitHoleTuningClass visitTuning, Origin visitBuffOrigin)
 {
     if (base.InteractionDefinition is TakeElevatorToTopWithEx.ElevatorDefinition)
     {
         TakeElevatorToTopEx.ElevatorDefinition elevatorDef = new TakeElevatorToTopEx.ElevatorDefinition(interactionName, visitTuning, visitBuffOrigin);
         elevatorDef.IsGroupAddition = true;
         return(elevatorDef);
     }
     TakeElevatorToTopEx.StairsDefinition definition = new TakeElevatorToTopEx.StairsDefinition(interactionName, visitTuning, visitBuffOrigin);
     definition.IsGroupAddition = true;
     return(definition);
 }
Esempio n. 8
0
 public StairsDefinition(string displayName, string[][] paths, bool isGroupAddition, string interactionName, RabbitHole.VisitRabbitHoleTuningClass visitTuning, Origin visitBuffOrigin) : base(displayName, paths, isGroupAddition, interactionName, visitTuning, visitBuffOrigin)
 {
 }
Esempio n. 9
0
 public ElevatorDefinition(string displayName, string[][] paths, bool isGroupAddition, string interactionName, RabbitHole.VisitRabbitHoleTuningClass visitTuning, Origin visitBuffOrigin) : base(interactionName, visitTuning, visitBuffOrigin)
 {
     mDisplayName    = displayName;
     mPaths          = paths;
     IsGroupAddition = isGroupAddition;
 }
Esempio n. 10
0
 public override InteractionDefinition GetInteractionDefinition(string interactionName, RabbitHole.VisitRabbitHoleTuningClass visitTuning, Origin visitBuffOrigin)
 {
     if (InteractionDefinition is StairsDefinition)
     {
         return(new TakeElevatorToTopEx.StairsDefinition(GetInteractionName(), null, true, interactionName, visitTuning, visitBuffOrigin));
     }
     return(new TakeElevatorToTopEx.ElevatorDefinition(GetInteractionName(), null, true, interactionName, visitTuning, visitBuffOrigin));
 }