示例#1
0
    // Update is called once per frame
    void LateUpdate()
    {
        bool flag = false;

        // POI Check
        foreach (PointOfInterestHandler poi in pois)
        {
            if (poi.playerIsCloseEnough)
            {
                flag       = true;
                currentPOI = poi;
            }
        }
        usePOI = flag;

        // Movement and Zoom
        if (!frogCamOverride)
        {
            //if (!usePOI)
            //{
            //    mainCam.orthographicSize = Mathf.Lerp(mainCam.orthographicSize, standardSize, lerpSpeed * Time.deltaTime);
            //    targetPos = new Vector3((goblin.transform.position + (goblinVelocity * forwardOffset)).x, goblin.transform.position.y, -21);
            //    Vector2 forwardPos = Vector2.Lerp(transform.position, targetPos, lerpSpeed * Time.deltaTime); // new Vector2(Mathf.Lerp(transform.position.x, targetPos.x, lerpSpeed * Time.deltaTime), goblin.transform.position.y, -21);
            //    Vector2 currentPos = Vector2.Lerp(transform.position, goblin.transform.position, lerpSpeed * Time.deltaTime); // new Vector3(Mathf.Lerp(transform.position.x, goblin.transform.position.x, lerpSpeed * Time.deltaTime), goblin.transform.position.y, -21);
            //    transform.position = (Vector3)(goblin.canMove ? forwardPos : currentPos) + Vector3.back * 21;
            //}
            //else if (usePOI && currentPOI)
            //{
            //    mainCam.orthographicSize = Mathf.Lerp(mainCam.orthographicSize, currentPOI.camSize, lerpSpeed * Time.deltaTime);
            //    Vector2 poiPos = Vector2.Lerp(transform.position, currentPOI.useOffset ? currentPOI.offset : (Vector2)currentPOI.transform.position, lerpSpeed * Time.deltaTime);
            //    transform.position = (Vector3)poiPos + Vector3.back * 21;
            //}

            MovementStateMachine();
        }
        else
        {
            FrogScript frog = goblin.mount.GetComponent <FrogScript>();
            mainCam.orthographicSize = Mathf.Lerp(mainCam.orthographicSize, frog.jumpDistance * sizePerDistance, Time.deltaTime);
            transform.position       = Vector3.Lerp(transform.position, frog.arc.avgPosition + Vector3.back * 21, Time.deltaTime);
        }
    }
示例#2
0
 void Awake()
 {
     instance  = this;
     onLanded += CharacterLanded;
 }