Example #1
0
    public void GettingPossess()
    {
        SoulVisionEffect.SetActive(false);

        if (PossessTime < 0.2)//鏡頭回到正常的位置
        {
            PossessTime       += Time.deltaTime;
            VectorMoveDistance = NormalPosition - transform.position;
            Move = VectorMoveDistance * Time.deltaTime * 5;
            transform.position += Move;
        }
        else if (PossessTime >= 0.2 && PossessTime < 0.8)
        {
            PossessTime += Time.deltaTime;

            if (PossessTime >= 0.6 && PossessTime < 0.8)
            {
                PossessEffect.SetActive(true);
                VectorMoveDistance = PossessTarget.transform.position - NormalPosition;//距離為終點減正常位置
                Move = VectorMoveDistance * Time.deltaTime * 3;
                transform.position += Move;
                CameraNowPosition   = transform.position;
            }
        }
        else if (PossessTime >= 0.8)
        {
            PossessEffect.SetActive(false);
            PossessedSystem.InToPossess();
            LoadCharacterPosition();//讀取動物鏡頭位置
            CameraState = "NormalState";
        }
    }
Example #2
0
    public bool IsPossessing = false; //附身中為true直到附身結束切回正常狀態才會被重置為false


    // Use this for initialization
    void Start()
    {
        PossessedSystem = GameObject.Find("Pine").GetComponent <PossessedSystem>();
        SoulPower       = GameObject.Find("SoulPower");
        playerManager   = GameObject.Find("PlayerManager").GetComponent <PlayerManager>();
        SoulVisionEffect.SetActive(false);                 //開始時靈視關閉
        PossessEffect.SetActive(false);                    //開始時附身鏡頭關閉
        SoulPower.SetActive(false);                        //開始時靈視特效關閉
        Crosshairs.SetActive(false);                       //開始時準心關閉
        CameraState          = "NormalState";              //初始狀態為正常狀態
        AttachedBodyChildren = new Transform[3];           //只抓前四個物件(包含本身)
        PlayerView           = GameObject.Find("FirstPersonCamPoint");
        MoveEnd      = GameObject.Find("CamMoveEndPoint"); //一開始取正確腳色位置
        NowCharacter = GameObject.Find("Pine");
    }