Exemplo n.º 1
0
    public void MoveTo(Vector3 destination)
    {
        // don't change the z position of the camera, only move on x and y axis
        moveDestination = new Vector3(destination.x, destination.y, transform.position.z);
        moveInitial     = transform.position;

        // calculate duration in function of the distance to cover, we also apply a maximum duration
        float distanceToCover = GameSystem.EuclideanDistance(moveInitial, moveDestination);
        float divider         = 10f;
        float maxDuration     = 0.4f;

        moveDuration = distanceToCover > maxDuration / divider ? maxDuration : distanceToCover / divider;

        StartCoroutine("MoveToRoutine");
    }