예제 #1
0
 void Instance_OnDialogueBranchTaken(DialogueNodeComponent currentNode, DialogueTransitionNodeComponent node)
 {
     if (enabled && gameObject.activeInHierarchy && node == _transitionNode)
     {
         TriggerEvent();
     }
 }
예제 #2
0
 void button_MouseClick(Control sender, MouseEventArgs args)
 {
     if (_allowProgression)
     {
         DialogueTransitionNodeComponent transition = sender.Tag as DialogueTransitionNodeComponent;
         Button buttonSender = sender as Button;
         if (OnDialogueBranchTaken != null)
         {
             OnDialogueBranchTaken(_currentNode, transition);
         }
     }
 }
예제 #3
0
    public static void CreateDialogueTransition(GameObject parent, string transitionText)
    {
        GameObject transitionObject = new GameObject();

        transitionObject.transform.parent = parent.transform;
        transitionObject.name             = "DialogueTransition_" + transitionText;

        DialogueTransitionNodeComponent transitionComponent = transitionObject.AddComponent <DialogueTransitionNodeComponent>();

        transitionComponent.DialogueTransitionData = new DialogueTransitionNodeData();
        transitionComponent.DialogueTransitionData.TransitionText = transitionText;
    }
예제 #4
0
    void _view_OnDialogueBranchTaken(DialogueNodeComponent currentNode, DialogueTransitionNodeComponent node)
    {
        if (OnDialogueNodeCompleted != null)
        {
            OnDialogueNodeCompleted(currentNode);
        }

        _view.Show(node.DialogueNodeComponent);

        if (OnDialogueBranchTaken != null)
        {
            OnDialogueBranchTaken(currentNode, node);
        }
        if (OnDialogueNodeReached != null)
        {
            OnDialogueNodeReached(node.DialogueNodeComponent);
        }
    }