Пример #1
0
        public static ListenerAction OnObjectChanged(Event evt)
        {
            if (evt.TargetObject is CarUFO)
            {
                AbductSimAEx.AddInteraction(evt.TargetObject as CarUFO);

                return(ListenerAction.Keep);
            }

            if (evt.TargetObject is RabbitHole)
            {
                if ((evt.TargetObject as RabbitHole).Guid == RabbitHoleType.Hospital)
                {
                    HaveAlienBabyHospital.AddInteraction(evt.TargetObject as RabbitHole);
                }

                return(ListenerAction.Keep);
            }

            if (evt.TargetObject is Lot)
            {
                DebugTriggerAbduction.AddInteraction(evt.TargetObject as Lot);
                HaveAlienBabyHome.AddInteraction(evt.TargetObject as Lot);

                return(ListenerAction.Keep);
            }

            return(ListenerAction.Keep);
        }
Пример #2
0
            public override void Init(AlienAbductionSituationEx parent)
            {
                CarUFO ufo = parent.Alien.Inventory.Find <CarUFO>();

                if (ufo == null)
                {
                    parent.CleanupAbduction();
                    return;
                }

                AbductSimAEx abductSim = ForceSituationSpecificInteraction(ufo, parent.Alien, AbductSimAEx.Singleton, null, new Callback(OnCompletion),
                                                                           new Callback(OnFailure), new InteractionPriority(InteractionPriorityLevel.CriticalNPCBehavior)) as AbductSimAEx;

                abductSim.SimToAbduct = parent.Abductee;
            }