Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using UnityEngine;
- using System.Collections;
- public class CameraScript : MonoBehaviour
- {
- private Transform[] playerTransform;
- public float yOffset;
- public float minDist;
- private float xMin, yMin, xMax, yMax;
- void Start()
- {
- GameObject[] players = GameObject.FindGameObjectsWithTag("Player");
- playerTransform = new Transform[players.Length];
- for (int i = 0; i < players.Length; i++)
- {
- playerTransform[i] = players[i].transform;
- }
- }
- void LateUpdate()
- {
- if (playerTransform.Length == 0)
- {
- Debug.Log("No Player");
- return;
- }
- xMin = xMax = playerTransform[0].position.x;
- yMin = yMax = playerTransform[0].position.x;
- for (int i = 0; i < playerTransform.Length; i++)
- {
- if (playerTransform[i].position.x < xMin)
- xMin = playerTransform[i].position.x;
- if (playerTransform[i].position.x > xMax)
- xMax = playerTransform[i].position.x;
- if (playerTransform[i].position.y < yMin)
- yMin = playerTransform[i].position.y;
- if (playerTransform[i].position.x > yMax)
- yMax = playerTransform[i].position.y;
- }
- float xMid = (xMin + xMax) / 2;
- float yMid = (yMin + yMax) / 2;
- float dist = xMax - xMin;
- float maxDist = xMax + xMin;
- if(dist < minDist)
- {
- dist = minDist;
- }
- Vector3 tempPos = new Vector3(xMid, (yMid + yOffset), -dist);
- transform.position = tempPos;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement