コード例 #1
0
 void Awake()
 {
     m_AttackInputWait = new WaitForSeconds(k_AttackInputDuration);
     s_Instance        = this;
     m_entity          = GetComponent <NetworkEntity>();
     m_controller      = GetComponent <PlayerController>();
 }
コード例 #2
0
        protected IEnumerator Transition(GameObject transitioningGameObject, bool releaseControl, Vector3 destinationPosition, bool fade)
        {
            m_Transitioning = true;

            if (releaseControl)
            {
                if (m_PlayerInput == null)
                {
                    m_PlayerInput = FindObjectOfType <PlayerMyController>();
                }
                m_PlayerInput.ReleaseControl();
            }

            if (fade)
            {
                yield return(StartCoroutine(ScreenFader.FadeSceneOut()));
            }

            transitioningGameObject.transform.position = destinationPosition;

            if (fade)
            {
                yield return(StartCoroutine(ScreenFader.FadeSceneIn()));
            }

            if (releaseControl)
            {
                m_PlayerInput.GainControl();
            }

            m_Transitioning = false;
        }
コード例 #3
0
ファイル: SceneController.cs プロジェクト: mengtest/MMORPG-3
        void Awake()
        {
            if (Instance != this)
            {
                Destroy(gameObject);
                return;
            }

            DontDestroyOnLoad(gameObject);

            m_PlayerInput = FindObjectOfType <PlayerMyController>();

            if (initialSceneTransitionDestination != null)
            {
                SetEnteringGameObjectLocation(initialSceneTransitionDestination);
                ScreenFader.SetAlpha(1f);
                StartCoroutine(ScreenFader.FadeSceneIn());
                initialSceneTransitionDestination.OnReachDestination.Invoke();
            }
            else
            {
                m_CurrentZoneScene          = SceneManager.GetActiveScene();
                m_ZoneRestartDestinationTag = SceneTransitionDestination.DestinationTag.A;
            }
        }
コード例 #4
0
        protected virtual void ExecuteOnEnter(Collider other)
        {
            PlayerMyController sender = other.GetComponent <PlayerMyController>();

            if (sender == null)
            {
                return;
            }
            sender.PlayerTakeWeapon(weapon);
            OnEnter.Invoke();
        }
コード例 #5
0
 void Awake()
 {
     m_AttackInputWait = new WaitForSeconds(k_AttackInputDuration);
     s_Instance        = this;
     m_entity          = GetComponent <NetworkEntity>();
     m_controller      = GetComponent <PlayerController>();
     var pos = FrontEnd.World.Instance.fPlayer.pos;
     var rot = FrontEnd.World.Instance.fPlayer.rot;
     //this.transform.position = new Vector3(pos.x, pos.y, pos.z);
     //this.transform.rotation = new Quaternion(rot.x, rot.y, rot.z, rot.w);
 }
コード例 #6
0
        void Awake()
        {
            if (Instance != this)
            {
                Destroy(gameObject);
                return;
            }

            DontDestroyOnLoad(gameObject);

            m_PlayerInput = FindObjectOfType <PlayerMyController>();
        }
コード例 #7
0
        public void InitMine()
        {
            m_mine = true;

            cameraSettings = FindObjectOfType <CameraSettings>();

            if (cameraSettings != null)
            {
                cameraSettings.follow = transform;
                cameraSettings.lookAt = transform.Find("HeadTarget");
            }
            m_myController = GetComponent <PlayerMyController>();

            s_Instance = this;
        }
コード例 #8
0
        public void InitMine()
        {
            m_mine          = true;
            gameObject.name = "FPLAYER";
            cameraSettings  = FindObjectOfType <CameraSettings>();
            FrontEnd.World.Instance.fPlayer.refreshAttr();
            if (cameraSettings != null)
            {
                cameraSettings.follow = transform;
                cameraSettings.lookAt = transform.Find("HeadTarget");
            }
            m_myController = GetComponent <PlayerMyController>();

            s_Instance = this;
        }
コード例 #9
0
ファイル: SceneController.cs プロジェクト: mengtest/MMORPG-3
        protected IEnumerator Transition(string newSceneName, SceneTransitionDestination.DestinationTag destinationTag, TransitionPoint.TransitionType transitionType = TransitionPoint.TransitionType.DifferentZone)
        {
            m_Transitioning = true;
            PersistentDataManager.SaveAllData();

            if (m_PlayerInput == null)
            {
                m_PlayerInput = FindObjectOfType <PlayerMyController>();
            }
            if (m_PlayerInput)
            {
                m_PlayerInput.ReleaseControl();
            }
            yield return(StartCoroutine(ScreenFader.FadeSceneOut(ScreenFader.FadeType.Loading)));

            PersistentDataManager.ClearPersisters();
            yield return(SceneManager.LoadSceneAsync(newSceneName));

            m_PlayerInput = FindObjectOfType <PlayerMyController>();
            if (m_PlayerInput)
            {
                m_PlayerInput.ReleaseControl();
            }
            PersistentDataManager.LoadAllData();
            SceneTransitionDestination entrance = GetDestination(destinationTag);

            SetEnteringGameObjectLocation(entrance);
            SetupNewScene(transitionType, entrance);
            if (entrance != null)
            {
                entrance.OnReachDestination.Invoke();
            }
            yield return(StartCoroutine(ScreenFader.FadeSceneIn()));

            if (m_PlayerInput)
            {
                m_PlayerInput.GainControl();
            }

            m_Transitioning = false;
        }