public void Subscribe(QuestElement element) { questElement = element; }
private void OnGUI() { toolbarInt = GUILayout.Toolbar(toolbarInt, toolbarStrings); switch (toolbarInt) { //case 0: // GUILayout.Label("Creer une Step"); // GUILayout.Label("Nom"); // stepName = GUILayout.TextField(stepName, 15, "textfield"); // GUILayout.Label("Description"); // stepDescription = GUILayout.TextField(stepDescription, 300, EditorStyles.textArea); // GUILayout.BeginHorizontal(); // if (GUILayout.Button("Creer un Gameobject Etape")) // { // if (Selection.activeGameObject.GetComponent<QuestElement>() == null) // { // QuestElement questElement = Selection.activeGameObject.AddComponent<QuestElement>(); // questElement.quest = QuestManager.CreateSCriptableObject(stepName, stepDescription); // } // } // GUILayout.EndHorizontal(); // break; case 1: EditorGUILayout.BeginHorizontal(); previousElement = EditorGUILayout.ObjectField(previousElement, typeof(QuestElement), true, GUILayout.MinHeight(50)) as QuestElement; EditorGUILayout.LabelField("==>"); actualElement = EditorGUILayout.ObjectField(actualElement, typeof(QuestElement), true, GUILayout.MinHeight(50)) as QuestElement; EditorGUILayout.EndHorizontal(); if (GUILayout.Button("Lier les deux étapes", GUILayout.MinHeight(50))) { previousElement.quest.nextStep = actualElement.quest; } break; case 2: //#region creer une etape //if (GUILayout.Button("Creer un Gameobject Etape")) //{ // #region init // GameObject go = new GameObject(); // if (go == null) return; // go.name = "Quest Element"; // #endregion // if (Selection.activeGameObject != null) // go.transform.position = Selection.activeGameObject.transform.position; // Selection.activeGameObject = go; // QuestElement questElement = Selection.activeGameObject.AddComponent<QuestElement>(); // questElement.quest = CreateSCriptableObject(); //} //#endregion //#region Lier deux etapes //foldoutOpen = EditorGUILayout.Foldout(foldoutOpen, "Lier deux etapes"); //if (foldoutOpen) //{ // EditorGUILayout.LabelField("Etape précédente"); // previousElement = EditorGUILayout.ObjectField(previousElement, typeof(QuestElement), true) as QuestElement; // if (GUILayout.Button("Lier deux etapes")) // { // QuestElement element = Selection.activeGameObject.GetComponent<QuestElement>(); // //if (element) // // element.SetPreviousQuestElement(previousElement); // previousElement.SetNextQuestElement(element); // EditorGUILayout.Space(); // } //} //#endregion //#region Add Step //if (GUILayout.Button("Ajouter une ScriptableObj etape")) //{ // QuestElement element = Selection.activeGameObject.GetComponent<QuestElement>(); // if (element) // { // if (element.quest == null) // element.quest = CreateSCriptableObject(); // } // EditorGUILayout.Space(); //} //#endregion break; } }