Beispiel #1
0
    void RunAway()
    {
        // 탈출 포인트 가져오기
        Transform leavePoint = follower.GetChild(1);

        // 타겟과의 거리가 일정 거리 이상이면 접근하고, 일정 거리 미만이면 비활성화하기
        float distance = Vector3.Distance(leavePoint.position, rpc.transform.position);

        if (distance >= 2f)
        {
            rpc.transform.position = Vector3.Lerp(rpc.transform.position, leavePoint.position, approachSpeed * Time.deltaTime);
        }
        else
        {
            Prefab_Float rpcPF = rpc.GetComponentInChildren <Prefab_Float>();
            rpcPF.EndFloating();
            rpc.transform.SetParent(null);
            rpc.SetActive(false);

            // 그만 접근하기
            rpc_A = rpc_State.None;
            GSManager.currentScene = GameSceneManager.Scenes.FindMatch;
        }
    }
Beispiel #2
0
    //======================================================================================
    #endregion

    #region 매칭 상대 찾기
    //======================================================================================

    // [Escape] << 버튼
    public void OnEscapeClicked()
    {
        #region  레이어 설정
        // 플레이어 초기화
        Prefab_Float playerPF = player.GetComponent <Prefab_Float>();
        if (playerPF)
        {
            playerPF.EndFloating();
        }
        ResetPlayer();

        // 플레이어 비활성화
        player.SetActive(false);

        #endregion

        #region UI 화면 설정
        // UI 화면들 비활성화
        preference_UI.SetActive(false);
        jointhePool_UI.SetActive(false);
        // 앨범 화면 비활성화
        lookattheAlbum_UI.SetActive(false);
        // 시작화면 활성화
        startGame_UI.SetActive(false);
        // 메인메뉴 비활성화
        mainMenu_UI.SetActive(false);
        #endregion

        #region 카메라 위치 리셋 및 viewport 리셋
        // 카메라 사용 안함!
        useCamera = false;

        // 카메라 위치 리셋
        playerCam.SetParent(null);
        playerCam.transform.position         = camHolderPos;
        playerCam.transform.localEulerAngles = camHolderRot;

        // 카메라 시점
        camView = Camera.main.orthographic ? Camera.main.orthographicSize : Camera.main.fieldOfView;
        // 카메라 시야
        viewArray = Camera.main.orthographic ? sizeArray : fovArray;
        // 스크롤 디폴트로 바꾸기
        scroll = 1;
        // 값 바꿔주기
        camView = viewArray[scroll];

        // 바꾼 값 적용하기
        if (Camera.main.orthographic)
        {
            Camera.main.orthographicSize = camView;
        }
        else
        {
            Camera.main.fieldOfView = camView;
        }
        #endregion

        // 만약 rpc가 있었다면, 없앤다!
        if (RPCManager.Instance.currentPlayer > 0)
        {
            RPCManager.Instance.currentPlayer--;
        }

        ScreenShot.Instance.recentPhoto.Clear();

        // 이거 아래에 있는 주마등 함수에서 대신 해줌 (시작화면으로 초기화 => 서버 나가기)
        //currentScene = Scenes.MainMenu;

        // 주마등
        FBM.playFlashBack = true;
    }