public Flags.Choices GetFlag(Constants.Choice Choice)
 {
     if (IsChoice() && Choice == Constants.Choice.A)
     {
         return(CurrentConversation.CurrentNode.gameObject.GetComponent <Choice>().FlagA);
     }
     else if (IsChoice() && Choice == Constants.Choice.B)
     {
         return(CurrentConversation.CurrentNode.gameObject.GetComponent <Choice>().FlagB);
     }
     else
     {
         return(Flags.Choices.None);
     }
 }
Beispiel #2
0
    public void NextChoice(Constants.Choice Choice)
    {
        if (InConversation && SubtitleManager.Instance.IsWaiting() == false && CameraRig.Instance.Main.enabled)
        {
            if (ConversationManager.Instance.GetFlag(Choice) != Flags.Choices.None)
            {
                System.Tuple <Constants.Faction, Constants.Modifier> result = ReputationManager.Instance.AddChoiceFlag(ConversationManager.Instance.GetFlag(Choice));

                ConversationManager.Instance.CurrentConversation.FinalFaction  = result.Item1;
                ConversationManager.Instance.CurrentConversation.FinalModifier = result.Item2;
                ConversationManager.Instance.CurrentConversation.FinalFlag     = ConversationManager.Instance.GetFlag(Choice);
            }

            ConversationManager.Instance.Next(Choice);
        }
    }
    private void NextChoice(Constants.Choice Choice)
    {
        if (IsChoice())
        {
            if (Choice == Constants.Choice.B)
            {
                CurrentConversation.CurrentNode = CurrentConversation.CurrentNode.gameObject.GetComponent <Choice>().Alternate;
            }
            else if (Choice == Constants.Choice.A)
            {
                CurrentConversation.CurrentNode = CurrentConversation.CurrentNode.Next;
            }

            ResolveUI();
        }
    }
 public void Next(Constants.Choice Choice)
 {
     if (CurrentConversation.CurrentNode.Next == null && AreConversationsAvailable())
     {
         GameState.Instance.ConversationFinished();
     }
     else if (CurrentConversation.CurrentNode.Next == null && !AreConversationsAvailable())
     {
         GameState.Instance.AllConversationsFinished();
     }
     else
     {
         if (Choice == Constants.Choice.None)
         {
             NextLine();
         }
         else
         {
             NextChoice(Choice);
         }
     }
 }