Esempio n. 1
0
            public void SetComponent(Component component, GameObjectRef.eSourceType gameObjectType)
            {
                GameObject gameObject = component != null ? component.gameObject : null;

                switch (gameObjectType)
                {
                case GameObjectRef.eSourceType.Scene:
                    _gameObject.SetSceneGameObject(gameObject);
                    break;

                case GameObjectRef.eSourceType.Prefab:
                    _gameObject.SetPrefabGameObject(gameObject);
                    break;

                case GameObjectRef.eSourceType.Loaded:
                    _gameObject.SetLoadedGameObject(gameObject);
                    break;
                }

                _editorComponent = component;
                _componentIndex  = 0;

                if (component != null)
                {
                    Component[] components = gameObject.GetComponents <Component>();
                    int         index      = 0;
                    for (int i = 0; i < components.Length; i++)
                    {
                        if (components[i] is T)
                        {
                            if (components[i] == component)
                            {
                                _componentIndex = index;
                                break;
                            }

                            index++;
                        }
                    }
                }
            }