public void DoStuff()
 {
     guid.Value = g.guid.ToString();
     drawGizmos.Value = g.drawGizmos;
     infoScreenOpen.Value = g.infoScreenOpen;
     initialPenalty.Value = (int)g.initialPenalty;
     name.Value = g.name;
     FsmNodes tempNodes = new FsmNodes();
     tempNodes.Value = NodeArrayToList(g.nodes);
     nodes.Value = tempNodes;  // everywhere else it's saved as a generic list, only here it is an array, so it needs extra conversion
     open.Value = g.open;
 }
        public void DoStuff()
        {
            var doo = InputPath.Value as FsmPath;

            if(doo.Value == null)
            {
                Finish();
                return;
            }

            //floats
            Length.Value = doo.Value.GetTotalLength();
            duration.Value = doo.Value.duration;
            heuristicScale.Value = doo.Value.heuristicScale;

            //ints
            enabledTags.Value = doo.Value.enabledTags;
            radius.Value = doo.Value.radius;
            pathID.Value = doo.Value.pathID;
            searchedNodes.Value = doo.Value.searchedNodes;
            searchIterations.Value = doo.Value.searchIterations;
            speed.Value = doo.Value.speed;
            turnRadius.Value = doo.Value.turnRadius;

            //bools
            IsDone.Value = doo.Value.IsDone ();
            recycled.Value = doo.Value.recycled;

            //NNConstraints
            var noo = new FsmNNConstraint();
            noo.Value = doo.Value.nnConstraint;
            nnConstraint.Value = noo;

            //Nodes[]
            var coo = new FsmNodes();
            coo.Value = doo.Value.path;
            nodes.Value = coo;

            //NodeRunData
            var roo = new FsmNodeRunData();
            roo.Value = doo.Value.runData;
            runData.Value = roo;
        }
 public FsmNodes SetNodes(List<Node> go)
 {
     FsmNodes doo = new FsmNodes();
     doo.Value = go;
     return doo;
 }