Example #1
0
        /// <summary>
        /// Initialize the default values.
        /// </summary>
        private void Start()
        {
            m_Inventory = m_GameObject.GetCachedComponent <Inventory.InventoryBase>();
            m_FirstPersonPerspective = m_CharacterLocomotion.FirstPersonPerspective;

            // The third person objects will be hidden with the invisible shadow caster while in first person view.
            var characterRenderers = m_GameObject.GetComponentsInChildren <Renderer>(true);

            if (characterRenderers != null)
            {
                for (int i = 0; i < characterRenderers.Length; ++i)
                {
                    var renderer = characterRenderers[i];
                    if (m_RegisteredRenderers.Contains(renderer))
                    {
                        continue;
                    }

                    CacheRendererMaterials(renderer);
                }
            }

#if ULTIMATE_CHARACTER_CONTROLLER_MULTIPLAYER
            var networkInfo = m_GameObject.GetCachedComponent <Networking.INetworkInfo>();
            if (networkInfo != null && !networkInfo.IsLocalPlayer())
            {
                // Remote players should always be in the third person view.
                m_FirstPersonPerspective = false;
                EventHandler.UnregisterEvent <bool>(m_GameObject, "OnCameraChangePerspectives", OnChangePerspectives);
            }
#endif
            OnChangePerspectives(m_FirstPersonPerspective);
        }
        /// <summary>
        /// Initialize the default values.
        /// </summary>
        private void Start()
        {
            m_Inventory = m_GameObject.GetCachedComponent <Inventory.InventoryBase>();
            m_FirstPersonPerspective = m_CharacterLocomotion.FirstPersonPerspective;

#if ULTIMATE_CHARACTER_CONTROLLER_MULTIPLAYER
            var networkInfo = m_GameObject.GetCachedComponent <Networking.INetworkInfo>();
            if (networkInfo != null && !networkInfo.IsLocalPlayer())
            {
                // Remote players should always be in the third person view.
                OnChangePerspectives(false);
                EventHandler.UnregisterEvent <bool>(m_GameObject, "OnCameraChangePerspectives", OnChangePerspectives);
            }
#endif
        }