public static void NewDialogue() { var container = CreateInstance <DialogueContainer>(); string path = EditorUtility.SaveFilePanel( "New Dialogue Container", "Assets/", "New Dialogue Container.asset", "asset" ); if (path.Length == 0) { return; } if (dialogueGraphDataUtility == null) { dialogueGraphDataUtility = new DialogueGraphDataUtility(); } dialogueGraphDataUtility.SaveGraph(path, container); bool openDialogueEditor = EditorUtility.DisplayDialog( "Open Dialogue Editor Now?", "Would you like to open the Dialogue Editor and edit this conversation now?", "Yes", "No" ); if (openDialogueEditor) { ShowWindow(container); } }
/// <summary> /// Prepares the window elements. /// </summary> private void InitializeGraphView() { // Set the root elements flex direction rootVisualElement.style.flexDirection = FlexDirection.Column; // Create the window elements rootVisualElement.Add(GenerateToolbar()); _graphView = GenerateGraphView(); rootVisualElement.Add(_graphView); _miniMap = GenerateMiniMap(); _graphView.Add(_miniMap); blackboardProvider = new BlackboardProvider(_graphView); _graphView.Add(blackboardProvider.Blackboard); // Get the data utility so we can save and load. dialogueGraphDataUtility = new DialogueGraphDataUtility(_graphView); if (dialogueContainer != null) { dialogueGraphDataUtility.LoadGraph(dialogueContainer, blackboardProvider); } }