Example #1
0
    public override void OnInspectorGUI()
    {
        EditorGUILayout.LabelField("CharacterName");
        script.userName = EditorGUILayout.TextField(script.userName);

        EditorGUILayout.LabelField("StateName");
        script.stateName = EditorGUILayout.TextField(script.stateName);

        EditorGUILayout.LabelField("SerializableNodeData");
        EditorGUILayout.PropertyField(serializedObject.FindProperty("serializableNodeData"));

        EditorGUILayout.LabelField("DataJson");
        script.dataJson = EditorGUILayout.TextField(script.dataJson);


        EditorGUILayout.LabelField("");
        EditorGUILayout.LabelField("");
        serializedObject.ApplyModifiedProperties();
        EditorUtility.SetDirty(script);

        if (GUILayout.Button("Compile Code"))
        {
            StateCompiler.CompileNodeScript(script);
            AssetDatabase.Refresh();
            //CompilationPipeline.RequestScriptCompilation();
        }

        if (GUILayout.Button("Hot Compile Code(VisualStudio User Use Only)"))
        {
            StateCompiler.CompileNodeScript(script);
        }
    }
Example #2
0
    public static void CompileNodeScript(NodeScript script)
    {
        StateCompiler compiler = new StateCompiler(script);

        compiler.CompileCode();
        DirectoryInfo di = new DirectoryInfo(Application.dataPath + "/Script/Action/" + script.userName);

        if (!di.Exists)
        {
            di.Create();
        }

        File.WriteAllText(Application.dataPath + "/Script/Action/" + script.userName + "/" + script.userName + script.stateName + "Action.cs",
                          compiler.classCode.ToCodeText());
    }
Example #3
0
    public override void OnInspectorGUI()
    {
        EditorGUILayout.LabelField("CharacterName");
        script.userName = EditorGUILayout.TextField(script.userName);

        EditorGUILayout.LabelField("StateName");
        script.stateName = EditorGUILayout.TextField(script.stateName);

        EditorGUILayout.LabelField("");
        EditorGUILayout.LabelField("");

        EditorUtility.SetDirty(script);

        if (GUILayout.Button("Compile Code"))
        {
            StateCompiler.CompileNodeScript(script);
            CompilationPipeline.RequestScriptCompilation();
        }

        if (GUILayout.Button("Hot Compile Code(VisualStudio User Use Only)"))
        {
            StateCompiler.CompileNodeScript(script);
        }
    }