Ejemplo n.º 1
0
        public override void OnInspectorGUI()
        {
            ScenarioManager scenarioManager = (ScenarioManager)target;

            serializedObject.Update();

            // Simulation fields
            EditorGUILayout.Space();
            EditorGUILayout.LabelField("Simulation Configuration", EditorStyles.boldLabel);
            EditorGUILayout.PropertyField(this.m_NumberOfExecutionNodes, new GUIContent("Execution Nodes"));
            if (GUILayout.Button("Create App Params"))
            {
                scenarioManager.GenerateAppParamsFiles();
            }
            EditorGUILayout.TextArea("", GUI.skin.horizontalSlider);

            // Scenario Configuration fields
            EditorGUILayout.Space();
            EditorGUILayout.LabelField("Scenario Configuration", EditorStyles.boldLabel);
            EditorGUILayout.PropertyField(this.m_MaxScenarioLength, new GUIContent("Max Scenario Frames"));
            EditorGUILayout.PropertyField(this.m_UseScheduler, new GUIContent("Use Scheduler"));
            EditorGUILayout.PropertyField(this.m_TerminateOnCompletion, new GUIContent("Terminate On Completion"));
            if (m_UseScheduler.boolValue)
            {
                EditorGUILayout.PropertyField(this.m_SchedulingSource, new GUIContent("Scheduling Source"));
                if (m_SchedulingSource.enumValueIndex == (int)SchedulingSource.SimulationScheduler)
                {
                    EditorGUILayout.PropertyField(this.m_LocalAppParamsFile, new GUIContent("App Params File"));
                }
            }
            EditorGUILayout.PropertyField(this.m_ExecutionMultiplier, new GUIContent("Simulation Speed Multiplier"));

            EditorGUILayout.PropertyField(serializedObject.FindProperty("scenarioAssets"), new GUIContent("Scenarios"));

            serializedObject.ApplyModifiedProperties();
        }