コード例 #1
0
ファイル: DayTwoMorning.cs プロジェクト: callumlawson/Sellout
        public static void Start(List <Entity> matchingEntities)
        {
            Analytics.CustomEvent("Day Two Started");

            var mcGraw = EntityQueries.GetEntityWithName(matchingEntities, NPCS.McGraw.Name);
            var player = EntityQueries.GetEntityWithName(matchingEntities, NPCName.You);

            var loveStoryActions = LoveStory.DayTwoMorning();

            foreach (var actionPair in loveStoryActions)
            {
                var entity = actionPair.GetEntity();
                var action = actionPair.GetGameAction();
                ActionManagerSystem.Instance.QueueAction(entity, action);
            }

            //McGraw
            var mcGrawSequence = new ActionSequence("McGraw Day Two Morning");

            mcGrawSequence.Add(new CallbackAction(() =>
            {
                EventSystem.EndDrinkMakingEvent.Invoke();
                ActionManagerSystem.Instance.AddActionToFrontOfQueueForEntity(player,
                                                                              new TeleportAction(Locations.CenterOfBar()));
            }));                                       //This is kind of dirty - but demo!
            mcGrawSequence.Add(new PauseAction(2.0f)); //WORKAROUND FOR SYNC ACTION BUG
            mcGrawSequence.Add(DrugStory.InspectorQuestions(mcGraw));
            ActionManagerSystem.Instance.QueueAction(mcGraw, mcGrawSequence);
        }
コード例 #2
0
        public static void Start(List <Entity> matchingEntities)
        {
            var loveStoryActions = LoveStory.DayTwoNight();

            foreach (var actionPair in loveStoryActions)
            {
                var entity = actionPair.GetEntity();
                var action = actionPair.GetGameAction();
                ActionManagerSystem.Instance.QueueAction(entity, action);
            }

            var mcGraw = EntityQueries.GetEntityWithName(matchingEntities, NPCS.McGraw.Name);
            var jannet = EntityQueries.GetEntityWithName(matchingEntities, NPCS.Jannet.Name);
            var q      = EntityQueries.GetEntityWithName(matchingEntities, NPCS.Q.Name);
            var player = EntityQueries.GetEntityWithName(matchingEntities, NPCName.You);

            //Jannet
            var jannetSequence = new ActionSequence("Jannet night");

            jannetSequence.Add(new CallbackAction(() =>
            {
                EventSystem.EndDrinkMakingEvent.Invoke();
                ActionManagerSystem.Instance.AddActionToFrontOfQueueForEntity(player,
                                                                              new TeleportAction(Locations.CenterOfBar()));
            }));                                       //This is kind of dirty - but demo!
            jannetSequence.Add(new PauseAction(0.1f)); //WORKAROUND FOR SYNC ACTION BUG
            jannetSequence.Add(new TeleportAction(Locations.SitDownPoint1()));
            jannetSequence.Add(new SetReactiveConversationAction(new JannetNightTwo(), jannet));
            jannetSequence.Add(CommonActions.SitDownLoop());
            ActionManagerSystem.Instance.QueueAction(jannet, jannetSequence);

            //McGraw and Q
            DrugStory.DrugPusherInspectorShowdown(mcGraw, q, Locations.SitDownPoint2());
        }
コード例 #3
0
        private void DayPhaseChangedTo(DayPhase phase)
        {
            if (phase == DayPhase.Open)
            {
                inUseCharacters.Clear();
                specialCharacters.Clear();
                specialCharacterActions.Clear();

                if (time.GameTime.GetDay() == 1)
                {
                    var dayOneStart = DrugStory.DayOneStart();
                    foreach (var pair in dayOneStart)
                    {
                        specialCharacters.AddLast(pair.GetEntity());
                        specialCharacterActions.Add(pair.GetEntity(), pair.GetGameAction());
                    }
                }
                else if (time.GameTime.GetDay() == 2)
                {
                    var dayTwoStart = DrugStory.DayTwoState();
                    foreach (var pair in dayTwoStart)
                    {
                        specialCharacters.AddLast(pair.GetEntity());
                        specialCharacterActions.Add(pair.GetEntity(), pair.GetGameAction());
                    }
                }
            }
        }