Quantcast
Channel: Latest Questions on Unity Answers
Viewing all articles
Browse latest Browse all 171066

Deactivate all objects in a layer

$
0
0
Hi - when my player hits the first collider, I want all the objects in one layer to be activated. But when the player hits a second collider I want all the objects in this same layer to be destroyed (or deactivated if this is easier). But I won't need to access them after this point. The script to activate the objects in the layer is working, but I can't work out what I'm doing wrong in the script to destroy the objects in layer 8. This is the script DestroyObjectsInLayer8 (JavaScript): var layer : int = 8; var layerObjects : GameObject[]; function OnTriggerEnter (other : Collider) { if(other.gameObject.tag == "Player") { Destroy(layerObjects); } } function FindGameObjectsWithLayer (layer : int) : GameObject[] { var goArray = FindObjectsOfType(GameObject); var goList = new System.Collections.Generic.List.(); for (var i = 0; i < goArray.Length; i++) { if (goArray[i].layer == layer) { goList.Add(goArray[i]); } } if (goList.Count == 0) { return null; } return goList.ToArray(); } This is the script InstantiateObjectsInLayer8: var layer : int = 8; var LayerObjects : GameObject[]; function Start () { LayerObjects = FindGameObjectsWithLayer(layer); ActivateGameObjects(LayerObjects, false); } function OnTriggerEnter (other : Collider) { if(other.gameObject.tag == "Player") { ActivateGameObjects(LayerObjects, true); } } function FindGameObjectsWithLayer (layer : int) : GameObject[] { var goArray = FindObjectsOfType(GameObject); var goList = new System.Collections.Generic.List.(); for (var i = 0; i < goArray.Length; i++) { if (goArray[i].layer == layer) { goList.Add(goArray[i]); } } if (goList.Count == 0) { return null; } return goList.ToArray(); } function ActivateGameObjects (Objects : GameObject[], activate : boolean){ for(var go : GameObject in Objects){ go.active = activate; } } Thanks, (sorry for the newbie question) Laurien

Viewing all articles
Browse latest Browse all 171066

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>