public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.PropertyField(enabled_prop, true);

            if (enabled_prop.boolValue)
            {
                EditorGUILayout.PropertyField(enum_Status);
                GlobalVariable.CVariableType st = (GlobalVariable.CVariableType)enum_Status.enumValueIndex;

                switch (st)
                {
                case GlobalVariable.CVariableType.scoreVar:
                    EditorGUILayout.PropertyField(scoreVariables_prop, new GUIContent("ScoreVariables"));
                    if (scoreVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null/None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.timeVar:
                    EditorGUILayout.PropertyField(timeVariables_prop, new GUIContent("TimeVariables"));
                    if (timeVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null/None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingTime_prop, true);
                    EditorGUILayout.PropertyField(TimeFormat_prop, true);

                    break;

                case GlobalVariable.CVariableType.healthVar:
                    EditorGUILayout.PropertyField(healthVariables_prop, new GUIContent("HealthVariables"));
                    if (healthVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null/None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.manaVar:
                    EditorGUILayout.PropertyField(manaVariables_prop, new GUIContent("ManaVariables"));
                    if (manaVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null/None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.expVar:
                    EditorGUILayout.PropertyField(expVariables_prop, new GUIContent("ExpVariables"));
                    if (expVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null/None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.intVar:
                    EditorGUILayout.PropertyField(intVariables_prop, new GUIContent("IntVariables"));
                    if (intVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null/None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.floatVar:
                    EditorGUILayout.PropertyField(floatVariables_prop, new GUIContent("FloatVariables"));
                    if (floatVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null/None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.stringVar:
                    EditorGUILayout.PropertyField(stringVariables_prop, new GUIContent("StringVariables"));
                    if (stringVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null/None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.boolVar:
                    EditorGUILayout.PropertyField(boolVariables_prop, new GUIContent("BoolVariables"));
                    if (boolVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null/None", MessageType.Error);
                    }
                    break;
                }

                EditorGUILayout.PropertyField(CaptionText_prop, true);
                EditorGUILayout.PropertyField(PrefixText_prop, true);
                EditorGUILayout.PropertyField(PostfixText_prop, true);

                EditorGUILayout.PropertyField(usingDebug_prop, true);
                EditorGUILayout.PropertyField(DebugText_prop, true);
            }
            else
            {
                EditorGUILayout.HelpBox("Prefab Status: Disabled", MessageType.Error);
            }
            serializedObject.ApplyModifiedProperties();
        }
        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.PropertyField(enabled_prop, true);


            bool check = enabled_prop.boolValue;

            if (check)
            {
                EditorGUILayout.PropertyField(InvokeType, true);

                EditorGUILayout.PropertyField(enum_Status);


                GlobalVariable.CVariableType st = (GlobalVariable.CVariableType)enum_Status.enumValueIndex;

                switch (st)
                {
                case GlobalVariable.CVariableType.scoreVar:
                    EditorGUILayout.PropertyField(scoreVariables_prop, new GUIContent("Score Variables"));
                    if (scoreVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingEqualCondition, true);
                    if (usingEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(EqualConditionValue, true);
                        EditorGUILayout.PropertyField(EqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingGreaterCondition, true);
                    if (usingGreaterCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(GreaterConditionValue, true);
                        EditorGUILayout.PropertyField(GreaterConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingLessCondition, true);
                    if (usingLessCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(LessConditionValue, true);
                        EditorGUILayout.PropertyField(LessConditionEvent, true);
                    }

                    break;

                case GlobalVariable.CVariableType.timeVar:
                    EditorGUILayout.PropertyField(timeVariables_prop, new GUIContent("Time Variables"));
                    if (timeVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingEqualCondition, true);
                    if (usingEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(EqualConditionValue, true);
                        EditorGUILayout.PropertyField(EqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingGreaterCondition, true);
                    if (usingGreaterCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(GreaterConditionValue, true);
                        EditorGUILayout.PropertyField(GreaterConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingLessCondition, true);
                    if (usingLessCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(LessConditionValue, true);
                        EditorGUILayout.PropertyField(LessConditionEvent, true);
                    }

                    break;

                case GlobalVariable.CVariableType.healthVar:
                    EditorGUILayout.PropertyField(healthVariables_prop, new GUIContent("Health Variables"));
                    if (healthVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingEqualCondition, true);
                    if (usingEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(EqualConditionValue, true);
                        EditorGUILayout.PropertyField(EqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingGreaterCondition, true);
                    if (usingGreaterCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(GreaterConditionValue, true);
                        EditorGUILayout.PropertyField(GreaterConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingLessCondition, true);
                    if (usingLessCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(LessConditionValue, true);
                        EditorGUILayout.PropertyField(LessConditionEvent, true);
                    }

                    break;

                case GlobalVariable.CVariableType.manaVar:
                    EditorGUILayout.PropertyField(manaVariables_prop, new GUIContent("Mana Variables"));
                    if (manaVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingEqualCondition, true);
                    if (usingEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(EqualConditionValue, true);
                        EditorGUILayout.PropertyField(EqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingGreaterCondition, true);
                    if (usingGreaterCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(GreaterConditionValue, true);
                        EditorGUILayout.PropertyField(GreaterConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingLessCondition, true);
                    if (usingLessCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(LessConditionValue, true);
                        EditorGUILayout.PropertyField(LessConditionEvent, true);
                    }

                    break;

                case GlobalVariable.CVariableType.expVar:
                    EditorGUILayout.PropertyField(expVariables_prop, new GUIContent("Exp Variables"));
                    if (expVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingEqualCondition, true);
                    if (usingEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(EqualConditionValue, true);
                        EditorGUILayout.PropertyField(EqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingGreaterCondition, true);
                    if (usingGreaterCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(GreaterConditionValue, true);
                        EditorGUILayout.PropertyField(GreaterConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingLessCondition, true);
                    if (usingLessCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(LessConditionValue, true);
                        EditorGUILayout.PropertyField(LessConditionEvent, true);
                    }

                    break;

                case GlobalVariable.CVariableType.intVar:
                    EditorGUILayout.PropertyField(intVariables_prop, new GUIContent("Int Variables"));
                    if (intVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingEqualCondition, true);
                    if (usingEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(EqualConditionValue, true);
                        EditorGUILayout.PropertyField(EqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingGreaterCondition, true);
                    if (usingGreaterCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(GreaterConditionValue, true);
                        EditorGUILayout.PropertyField(GreaterConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingLessCondition, true);
                    if (usingLessCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(LessConditionValue, true);
                        EditorGUILayout.PropertyField(LessConditionEvent, true);
                    }

                    break;

                case GlobalVariable.CVariableType.floatVar:
                    EditorGUILayout.PropertyField(floatVariables_prop, new GUIContent("Float Variables"));
                    if (floatVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingEqualCondition, true);
                    if (usingEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(EqualConditionValue, true);
                        EditorGUILayout.PropertyField(EqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingGreaterCondition, true);
                    if (usingGreaterCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(GreaterConditionValue, true);
                        EditorGUILayout.PropertyField(GreaterConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingLessCondition, true);
                    if (usingLessCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(LessConditionValue, true);
                        EditorGUILayout.PropertyField(LessConditionEvent, true);
                    }

                    break;

                case GlobalVariable.CVariableType.stringVar:
                    EditorGUILayout.PropertyField(stringVariables_prop, new GUIContent("String Variables"));
                    if (stringVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingEqualCondition, true);
                    if (usingEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(EqualConditionValue, true);
                        EditorGUILayout.PropertyField(EqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingNotEqualCondition, true);
                    if (usingNotEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(NotEqualConditionValue, true);
                        EditorGUILayout.PropertyField(NotEqualConditionEvent, true);
                    }

                    break;

                case GlobalVariable.CVariableType.boolVar:
                    EditorGUILayout.PropertyField(boolVariables_prop, new GUIContent("Bool Variables"));
                    if (boolVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingTrueCondition, true);
                    if (usingTrueCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(TrueConditionValue, true);
                        EditorGUILayout.PropertyField(TrueConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingFalseCondition, true);
                    if (usingFalseCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(FalseConditionValue, true);
                        EditorGUILayout.PropertyField(FalseConditionEvent, true);
                    }

                    break;

                case GlobalVariable.CVariableType.objectVar:
                    EditorGUILayout.PropertyField(objectVariables_prop, new GUIContent("Object Variables"));
                    if (objectVariables_prop.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }

                    EditorGUILayout.PropertyField(usingTagEqualCondition, true);
                    if (usingTagEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(TagEqualConditionValue, true);
                        EditorGUILayout.PropertyField(TagEqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingNotTagEqualCondition, true);
                    if (usingNotTagEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(NotTagEqualConditionValue, true);
                        EditorGUILayout.PropertyField(NotTagEqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingNameEqualCondition, true);
                    if (usingNameEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(NameEqualConditionValue, true);
                        EditorGUILayout.PropertyField(NameEqualConditionEvent, true);
                    }

                    EditorGUILayout.PropertyField(usingNotNameEqualCondition, true);
                    if (usingNotNameEqualCondition.boolValue)
                    {
                        EditorGUILayout.PropertyField(NotNameEqualConditionValue, true);
                        EditorGUILayout.PropertyField(NotNameEqualConditionEvent, true);
                    }

                    break;
                }

                //--Invoke type (3)
                if ((GlobalVariable.CInvokeType)InvokeType.enumValueIndex == GlobalVariable.CInvokeType.OnDelay)
                {
                    EditorGUILayout.PropertyField(usingDelay, true);
                    if (usingDelay.boolValue)
                    {
                        EditorGUILayout.PropertyField(Delay, true);
                    }
                }
                if ((GlobalVariable.CInvokeType)InvokeType.enumValueIndex == GlobalVariable.CInvokeType.OnInterval)
                {
                    EditorGUILayout.PropertyField(RepeatChecking, true);

                    EditorGUILayout.PropertyField(usingInterval, true);
                    usingInterval.boolValue = true;
                    if (usingInterval.boolValue)
                    {
                        EditorGUILayout.PropertyField(Interval, true);
                        Interval.floatValue = 1;
                    }
                }
            }
            else
            {
                EditorGUILayout.HelpBox("Prefab Status: Disabled", MessageType.Error);
            }

            serializedObject.ApplyModifiedProperties();
        }
        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.PropertyField(enabled_prop, true);

            bool check = enabled_prop.boolValue;

            if (check)
            {
                EditorGUILayout.PropertyField(enum_Status);

                GlobalVariable.CVariableType st = (GlobalVariable.CVariableType)enum_Status.enumValueIndex;

                switch (st)
                {
                case GlobalVariable.CVariableType.timeVar:
                    EditorGUILayout.PropertyField(timeSender_prop, new GUIContent("TimeSender"));
                    EditorGUILayout.PropertyField(timeReceiver_prop, new GUIContent("TimeReceiver"));
                    break;

                case GlobalVariable.CVariableType.scoreVar:
                    EditorGUILayout.PropertyField(scoreSender_prop, new GUIContent("ScoreSender"));
                    EditorGUILayout.PropertyField(scoreReceiver_prop, new GUIContent("ScoreReceiver"));
                    break;

                case GlobalVariable.CVariableType.healthVar:
                    EditorGUILayout.PropertyField(healthSender_prop, new GUIContent("HealthSender"));
                    EditorGUILayout.PropertyField(healthReceiver_prop, new GUIContent("HealthReceiver"));
                    break;

                case GlobalVariable.CVariableType.manaVar:
                    EditorGUILayout.PropertyField(manaSender_prop, new GUIContent("ManaSender"));
                    EditorGUILayout.PropertyField(manaReceiver_prop, new GUIContent("ManaReceiver"));
                    break;

                case GlobalVariable.CVariableType.expVar:
                    EditorGUILayout.PropertyField(expSender_prop, new GUIContent("ExpSender"));
                    EditorGUILayout.PropertyField(expReceiver_prop, new GUIContent("ExpReceiver"));
                    break;

                case GlobalVariable.CVariableType.intVar:
                    EditorGUILayout.PropertyField(intSender_prop, new GUIContent("IntSender"));
                    EditorGUILayout.PropertyField(intReceiver_prop, new GUIContent("IntReceiver"));
                    break;

                case GlobalVariable.CVariableType.floatVar:
                    EditorGUILayout.PropertyField(floatSender_prop, new GUIContent("FloatSender"));
                    EditorGUILayout.PropertyField(floatReceiver_prop, new GUIContent("FloatReceiver"));
                    break;

                case GlobalVariable.CVariableType.stringVar:
                    EditorGUILayout.PropertyField(stringSender_prop, new GUIContent("StringSender"));
                    EditorGUILayout.PropertyField(stringReceiver_prop, new GUIContent("StringReceiver"));
                    break;

                case GlobalVariable.CVariableType.boolVar:
                    EditorGUILayout.PropertyField(boolSender_prop, new GUIContent("BoolSender"));
                    EditorGUILayout.PropertyField(boolReceiver_prop, new GUIContent("BoolReceiver"));
                    break;
                }

                EditorGUILayout.PropertyField(Increment_prop, true);
                EditorGUILayout.PropertyField(usingCAttributeSettings, true);
                EditorGUILayout.PropertyField(AttributeSettings, true);
            }
            else
            {
                EditorGUILayout.HelpBox("Prefab Status: Disabled", MessageType.Error);
            }

            serializedObject.ApplyModifiedProperties();
        }
Example #4
0
        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.PropertyField(isEnabled);
            bool check = isEnabled.boolValue;

            if (check)
            {
                EditorGUILayout.PropertyField(VariableName, true);
                EditorGUILayout.PropertyField(VariableType, true);

                GlobalVariable.CVariableType vartype = (GlobalVariable.CVariableType)VariableType.enumValueIndex;

                switch (vartype)
                {
                case GlobalVariable.CVariableType.timeVar:
                    EditorGUILayout.PropertyField(TimeVariables, true);
                    if (TimeVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.healthVar:
                    EditorGUILayout.PropertyField(HealthVariables, true);
                    if (HealthVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.manaVar:
                    EditorGUILayout.PropertyField(ManaVariables, true);
                    if (ManaVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.expVar:
                    EditorGUILayout.PropertyField(ExpVariables, true);
                    if (ExpVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.scoreVar:
                    EditorGUILayout.PropertyField(ScoreVariables, true);
                    if (ScoreVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.intVar:
                    EditorGUILayout.PropertyField(IntegerVariables, true);
                    if (IntegerVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.floatVar:
                    EditorGUILayout.PropertyField(FloatVariables, true);
                    if (FloatVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.stringVar:
                    EditorGUILayout.PropertyField(StringVariables, true);
                    if (StringVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.boolVar:
                    EditorGUILayout.PropertyField(BooleanVariables, true);
                    if (BooleanVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;

                case GlobalVariable.CVariableType.objectVar:
                    EditorGUILayout.PropertyField(ObjectVariables, true);
                    if (ObjectVariables.objectReferenceValue == null)
                    {
                        EditorGUILayout.HelpBox("Required Field(s) Null / None", MessageType.Error);
                    }
                    break;
                }
            }
            else
            {
                EditorGUILayout.HelpBox("Prefab Status: Disabled", MessageType.Error);
            }


            serializedObject.ApplyModifiedProperties();
        }