Hello, I’m doing camera swap so when Player press “C” current camera will be disabled and next camera from the array will be enabled. I know that i can’t use that number to pick array element but I don’t know how to do it other way. I’m not really good with arrays so I’m asking for advice. Here is part of the code:
GameObject[] availableSpecCameras;
int number;
GameObject mainPlayerCamera;
GameObject nextCamera;
GameObject lastCamera;
void Start() {
mainPlayerCamera = GameObject.FindGameObjectWithTag("MainCamera");
availableSpecCameras = GameObject.FindGameObjectsWithTag("SpecCamera");
number = availableSpecCameras.Lenght;
}
void Update () {
if (Input.GetKeyDown (KeyCode.C)) {
if (mainPlayerCamera.gameObject.activeInHierarchy) {
nextCamera = availableSpecCameras [number];
nextCamera.gameObject.SetActive (true);
mainPlayerCamera.gameObject.SetActive (false);
number--;
} else if (number != 0) {
nextCamera = availableSpecCameras [number];
nextCamera.gameObject.SetActive (true);
lastCamera = availableSpecCameras [number + 1];
lastCamera.gameObject.SetActive (false);
number--;
} else {
mainPlayerCamera.gameObject.SetActive (true);
lastCamera = availableSpecCameras [number];
lastCamera.gameObject.SetActive (false);
availableSpecCameras = GameObject.FindGameObjectsWithTag("SpecCamera");
number = availableSpecCameras.Lenght;
}
}
}