Exemplo n.º 1
0
    public void rolling()
    {
        Vector3 nextPosition = player.position;

        nextPosition.z = transform.position.z;
        for (int i = 0; i < playerBounds.Length; i++)
        {
            if (SharedCameraFunctions.positionInBounds(playerBounds[i], player.position))
            {
                Vector2
                    min = adjustedBounds[i].min,
                    max = adjustedBounds[i].max;

                nextPosition = new Vector3(
                    nextPosition.x <min.x
                                    ?min.x : nextPosition.x> max.x
                        ? max.x : nextPosition.x,
                    nextPosition.y <min.y
                                    ?min.y : nextPosition.y> max.y
                            ? max.y : nextPosition.y,
                    transform.position.z
                    );
                transform.position = Vector3.SmoothDamp(transform.position, nextPosition, ref currentVelocity, smoothTime);
                break;
            }
        }
    }
Exemplo n.º 2
0
    private void initializeBounds()
    {
        playerBounds   = FindObjectOfType <CameraBound>().bounds.ToArray();
        adjustedBounds = new Bounds[playerBounds.Length];
        int index = 0;

        foreach (Bounds bounds in playerBounds)
        {
            adjustedBounds[index] = SharedCameraFunctions.adjustedBounds(bounds.min, bounds.max);
            index++;
        }
    }