// Token: 0x060002C3 RID: 707 RVA: 0x0001BA68 File Offset: 0x00019C68
        private static void ShowPropertyMappingMenu(BehaviorSource behaviorSource, SharedVariable sharedVariable)
        {
            VariableInspector.mPropertyMappingVariable       = sharedVariable;
            VariableInspector.mPropertyMappingBehaviorSource = behaviorSource;
            VariableInspector.mPropertyMappingMenu           = new GenericMenu();
            List <string>     list  = new List <string>();
            List <GameObject> list2 = new List <GameObject>();

            list.Add("None");
            list2.Add(null);
            int num = 0;

            if (behaviorSource.Owner.GetObject() is Behavior)
            {
                GameObject gameObject = (behaviorSource.Owner.GetObject() as Behavior).gameObject;
                int        num2;
                if ((num2 = VariableInspector.AddPropertyName(sharedVariable, gameObject, ref list, ref list2, true)) != -1)
                {
                    num = num2;
                }
                GameObject[] array;
                if (AssetDatabase.GetAssetPath(gameObject).Length == 0)
                {
                    array = Object.FindObjectsOfType <GameObject>();
                }
                else
                {
                    Transform[] componentsInChildren = gameObject.GetComponentsInChildren <Transform>();
                    array = new GameObject[componentsInChildren.Length];
                    for (int i = 0; i < componentsInChildren.Length; i++)
                    {
                        array[i] = componentsInChildren[i].gameObject;
                    }
                }
                for (int j = 0; j < array.Length; j++)
                {
                    if (!array[j].Equals(gameObject) && (num2 = VariableInspector.AddPropertyName(sharedVariable, array[j], ref list, ref list2, false)) != -1)
                    {
                        num = num2;
                    }
                }
            }
            for (int k = 0; k < list.Count; k++)
            {
                string[] array2 = list[k].Split(new char[]
                {
                    '.'
                });
                if (list2[k] != null)
                {
                    array2[array2.Length - 1] = VariableInspector.GetFullPath(list2[k].transform) + "/" + array2[array2.Length - 1];
                }
                VariableInspector.mPropertyMappingMenu.AddItem(new GUIContent(array2[array2.Length - 1]), k == num, new GenericMenu.MenuFunction2(VariableInspector.PropertySelected), new VariableInspector.SelectedPropertyMapping(list[k], list2[k]));
            }
            VariableInspector.mPropertyMappingMenu.ShowAsContext();
        }
        private static void ShowPropertyMappingMenu(BehaviorSource behaviorSource, SharedVariable sharedVariable)
        {
            VariableInspector.mPropertyMappingVariable       = sharedVariable;
            VariableInspector.mPropertyMappingBehaviorSource = behaviorSource;
            VariableInspector.mPropertyMappingMenu           = new GenericMenu();
            List <string>     list  = new List <string>();
            List <GameObject> list2 = new List <GameObject>();

            list.Add("None");
            list2.Add(null);
            int num = 0;

            if (behaviorSource.Owner.GetObject() is Behavior)
            {
                GameObject gameObject = (behaviorSource.Owner.GetObject() as Behavior).gameObject;
                int        num2;
                if ((num2 = VariableInspector.AddPropertyName(sharedVariable, gameObject, ref list, ref list2, true)) != -1)
                {
                    num = num2;
                }
                GameObject[] array = UnityEngine.Object.FindObjectsOfType <GameObject>();
                for (int i = 0; i < array.Length; i++)
                {
                    if (!array[i].Equals(gameObject) && (num2 = VariableInspector.AddPropertyName(sharedVariable, array[i], ref list, ref list2, false)) != -1)
                    {
                        num = num2;
                    }
                }
            }
            for (int j = 0; j < list.Count; j++)
            {
                string[] array2 = list[j].Split(new char[]
                {
                    '.'
                });
                if (list2[j] != null)
                {
                    array2[array2.Length - 1] = VariableInspector.GetFullPath(list2[j].transform) + "/" + array2[array2.Length - 1];
                }
                VariableInspector.mPropertyMappingMenu.AddItem(new GUIContent(array2[array2.Length - 1]), j == num, new GenericMenu.MenuFunction2(VariableInspector.PropertySelected), new VariableInspector.SelectedPropertyMapping(list[j], list2[j]));
            }
            VariableInspector.mPropertyMappingMenu.ShowAsContext();
        }