//Create the node in the grid. private void AddNode() { UMLNode temp = addingScriptOverlay.CreateNode(); //adding the node to collection nodes.Add(nodes.Count, temp); //whipe variables on the screen addingScriptOverlay.ClearVariables(); //toggle menu addingScriptOverlay.ClearVariableToggle = !addingScriptOverlay.ClearVariableToggle; }
/// <summary> /// Use for editing values /// </summary> public void EditInformation(UMLNode umlNode, Vector2 screenDimensions) { umlNode.ClassName = className; for (int i = 0; i < umlNode.Functions.Count; i++) { information.Functions.Add(umlNode.Functions[i]); } for (int i = 0; i < umlNode.Variables.Count; i++) { information.Variables.Add(umlNode.Variables[i]); } initializeClass = true; OnGUI(screenDimensions); }
/// <summary> /// Generating the Script /// </summary> public void GenerateNode(UMLNode node) { Debug.Log(node.Functions.Count); string directoryPath = Environment.CurrentDirectory; using (StreamWriter sw = new StreamWriter(Path.Combine(directoryPath + "/Assets", node.ClassName + ".cs"))) { //adding library's sw.WriteLine("using UnityEngine;"); sw.WriteLine("using System.Collections;"); sw.WriteLine("using System.Collections.Generic;"); sw.WriteLine(""); //white space if (node.Parent != string.Empty) { sw.WriteLine("public class " + node.ClassName + " : " + node.Parent); } else { sw.WriteLine("public class" + node.ClassName); } sw.WriteLine("{"); //adding variables foreach (string variable in node.Variables) { sw.WriteLine(variable + ";"); } sw.WriteLine(""); //whitespace //adding functions foreach (string function in node.Functions) { if (function.EndsWith("()")) { sw.WriteLine(function + "{ }"); } else { sw.WriteLine(function + "() { }"); } } sw.WriteLine("}"); } AssetDatabase.Refresh(ImportAssetOptions.ForceUpdate); }