Exemplo n.º 1
0
    public void SaveGraph(string filename)
    {
        var dialogueContainer = ScriptableObject.CreateInstance <DialogueContainer>();

        SaveNodeLinks(dialogueContainer);
        SaveDialogueNodes(dialogueContainer);
        SaveAnimationTriggerNodes(dialogueContainer);
        SaveGetFlagNodes(dialogueContainer);
        SaveSetFlagNodes(dialogueContainer);
        SaveBooleanGetFlagNodes(dialogueContainer);
        SaveBooleanSetFlagNodes(dialogueContainer);
        SaveMoveToPosNodes(dialogueContainer);
        //SaveExposedProperties(dialogueContainer);
        var initialNode = DialogueNodes.First(node => node.EntryPoint);

        dialogueContainer.StartingGUID = initialNode.GUID;
        //dialogueContainer.NodeLinks.First(link => link.BaseNodeGuid == initialNode.GUID).TargetNodeGuid;

        AssetDatabase.CreateAsset(dialogueContainer, $"Assets/DialogueEditor/Resources/{filename}.asset");
        AssetDatabase.SaveAssets();
    }