public void CreateSubStory(StoryGraph graph, UVNFManager manager, UVNFCanvas canvas)
        {
            if (_subgraphHandler == null)
            {
                _afterSubgraphElement = _currentElement.Next;

                _subgraphHandler  = new UVNFStoryManager(graph, manager, canvas, HandleSubgraphFinish);
                _handlingSubgraph = true;
            }
            else
            {
                _subgraphHandler.CreateSubStory(graph, manager, canvas);
            }
        }
        /// <summary>
        /// Creates a StoryManager that automatically starts at the start of the provided Graph
        /// </summary>
        /// <param name="graph"></param>
        /// <param name="manager"></param>
        /// <param name="canvas"></param>
        /// <param name="afterStoryHandler"></param>
        public UVNFStoryManager(StoryGraph graph, UVNFManager manager, UVNFCanvas canvas, Action afterStoryHandler)
        {
            _storyGraph = graph;

            _manager = manager;
            _canvas  = canvas;

            if (_storyGraph != null)
            {
                StartStory();
            }

            _afterSubgraphHandler += afterStoryHandler;
        }