Example #1
0
        public void ActivateTrigger(string triggerUid, bool save)
        {
            StoryTriggerVO vo      = Service.Get <IDataController>().Get <StoryTriggerVO>(triggerUid);
            IStoryTrigger  trigger = StoryTriggerFactory.GenerateStoryTrigger(vo, this);

            this.ActivateTrigger(trigger, save);
        }
Example #2
0
        public void KillTrigger(string uid)
        {
            IStoryTrigger storyTrigger = null;
            int           i            = 0;
            int           count        = this.activeTriggers.Count;

            while (i < count)
            {
                if (this.activeTriggers[i].VO.Uid == uid)
                {
                    storyTrigger = this.activeTriggers[i];
                    break;
                }
                i++;
            }
            if (storyTrigger == null)
            {
                List <IStoryTrigger> activeSaveTriggers = Service.Get <CurrentPlayer>().ActiveSaveTriggers;
                i     = 0;
                count = activeSaveTriggers.Count;
                while (i < count)
                {
                    if (activeSaveTriggers[i].VO.Uid == uid)
                    {
                        storyTrigger = activeSaveTriggers[i];
                        break;
                    }
                    i++;
                }
            }
            if (storyTrigger != null)
            {
                this.DestroyTrigger(storyTrigger);
            }
        }
Example #3
0
 public void SatisfyTrigger(IStoryTrigger trigger)
 {
     if (this.buffering)
     {
         this.triggerBuffer.Add(trigger);
         return;
     }
     Service.Get <QuestController>().SatisfyTrigger(trigger);
 }
Example #4
0
 public override void Destroy()
 {
     if (this.currentTrigger != null)
     {
         this.currentTrigger.Destroy();
         this.currentTrigger = null;
     }
     this.uids = null;
     base.Destroy();
 }
Example #5
0
 public void SatisfyTrigger(IStoryTrigger trigger)
 {
     if (this.buffering)
     {
         this.triggerBuffer.Add(trigger);
     }
     else
     {
         Service.QuestController.SatisfyTrigger(trigger);
     }
 }
Example #6
0
 public void DestroyTrigger(IStoryTrigger trigger)
 {
     if (this.activeTriggers.Contains(trigger))
     {
         this.activeTriggers.Remove(trigger);
     }
     else if (Service.Get <CurrentPlayer>().ActiveSaveTriggers.Contains(trigger))
     {
         Service.Get <CurrentPlayer>().ActiveSaveTriggers.Remove(trigger);
     }
     trigger.Destroy();
 }
Example #7
0
 private void ActivateNextChild()
 {
     this.childIndex++;
     if (this.childIndex < this.uids.Length)
     {
         StoryTriggerVO vo = this.sdc.Get <StoryTriggerVO>(this.uids[this.childIndex]);
         this.currentTrigger = StoryTriggerFactory.GenerateStoryTrigger(vo, this);
         this.currentTrigger.Activate();
         return;
     }
     this.parent.SatisfyTrigger(this);
 }
Example #8
0
        public void SatisfyTrigger(IStoryTrigger trigger)
        {
            string eventInfo = string.Format("Satisfied Story Trigger {0}", trigger.VO.Uid);

            Service.AssetManager.Profiler.RecordEvent(eventInfo);
            string reaction    = trigger.Reaction;
            bool   hasReaction = trigger.HasReaction;

            this.DestroyTrigger(trigger);
            if (hasReaction)
            {
                new ActionChain(reaction);
            }
        }
Example #9
0
 public void SatisfyTrigger(IStoryTrigger trigger)
 {
     this.children[trigger] = true;
     using (Dictionary <IStoryTrigger, bool> .ValueCollection.Enumerator enumerator = this.children.Values.GetEnumerator())
     {
         while (enumerator.MoveNext())
         {
             if (!enumerator.Current)
             {
                 return;
             }
         }
     }
     this.parent.SatisfyTrigger(this);
 }
Example #10
0
        public void ActivateTrigger(IStoryTrigger trigger, bool save)
        {
            if (save)
            {
                Service.CurrentPlayer.ActiveSaveTriggers.Add(trigger);
            }
            else
            {
                this.activeTriggers.Add(trigger);
            }
            string eventInfo = string.Format("Activating Story Trigger {0}-{1}", trigger.VO.Uid, trigger.VO.TriggerType);

            trigger.Activate();
            Service.AssetManager.Profiler.RecordEvent(eventInfo);
        }
Example #11
0
        public override void Activate()
        {
            StaticDataController staticDataController = Service.StaticDataController;

            this.children = new Dictionary <IStoryTrigger, bool>();
            string[] array = this.prepareArgs[0].Split(new char[]
            {
                ','
            });
            string[] array2 = array;
            for (int i = 0; i < array2.Length; i++)
            {
                string         uid          = array2[i];
                StoryTriggerVO vo           = staticDataController.Get <StoryTriggerVO>(uid);
                IStoryTrigger  storyTrigger = StoryTriggerFactory.GenerateStoryTrigger(vo, this);
                this.children.Add(storyTrigger, false);
                storyTrigger.Activate();
            }
        }
 public void SatisfyTrigger(IStoryTrigger trigger)
 {
     Service.Get <StaRTSLogger>().Debug("Test Story Trigger Satisfied!");
 }
Example #13
0
 public void SatisfyTrigger(IStoryTrigger trigger)
 {
     this.ActivateNextChild();
 }
Example #14
0
 public void SatisfyTrigger(IStoryTrigger trigger)
 {
     Service.Logger.Debug("Test Story Trigger Satisfied!");
 }