using System.Collections; using System.Collections.Generic; using UnityEngine; public class UpravDvig : MonoBehaviour { public Camera MainCamera; public Camera CamDvigSystem; public GameObject UpravDvigProz; public GameObject KronshteinROSHProz; public GameObject ROSHUprDvigProz; public void LayerOff() { MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("FuzCompLayer")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("FuzCompLayer")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Ostanov")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("Ostanov")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Maslosistema")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("Maslosistema")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("POS")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("POS")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Transmission")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("Transmission")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Pozhar")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("Pozhar")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Toplivo")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("Toplivo")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("TormozNV")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("TormozNV")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Gidro")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("Gidro")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("ZapuskDvig")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("ZapuskDvig")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("DrenazhDvig")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("DrenazhDvig")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("TV117V")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("TV117V")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("TA14")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("TA14")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("UPRStab")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("UPRStab")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("SKV")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("SKV")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Putev")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("Putev")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Prodol")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("Prodol")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("OSH")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("OSH")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("OhlAgr")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("OhlAgr")); MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Kislorod")); CamDvigSystem.cullingMask &= ~(1 << LayerMask.NameToLayer("Kislorod")); GameObject[] KronshteinROSHmassiv = GameObject.FindGameObjectsWithTag("KronshteinROSH"); //В массиве динамически меняет слой у объекта foreach (GameObject Kron in KronshteinROSHmassiv) { Kron.layer = LayerMask.NameToLayer("UpravlenieDvig"); } GameObject[] ROSHUprDvigmassiv = GameObject.FindGameObjectsWithTag("ROSHUprDvig"); //В массиве динамически меняет слой у объекта (родителя) и его дочек foreach (GameObject ROSH in ROSHUprDvigmassiv) { ROSH.layer = LayerMask.NameToLayer("UpravlenieDvig"); Transform[] childs = ROSH.GetComponentsInChildren(); foreach (Transform ROSHchild in childs) { if (ROSHchild.gameObject.name.StartsWith("Cylinder028")) { continue; } if (ROSHchild.gameObject.name.StartsWith("Cylinder033")) { continue; } ROSHchild.gameObject.layer = LayerMask.NameToLayer("UpravlenieDvig"); } } UpravDvigProz.SetActive(false); KronshteinROSHProz.SetActive(false); ROSHUprDvigProz.SetActive(false); //MainCamera.cullingMask = LayerMask.NameToLayer("Maslosistema"); //MainCamera.cullingMask = LayerMask.NameToLayer("Everything"); //MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("FuzCompLayer"); //GameObject.FindGameObjectWithTag("FuzComp").SetActive(false); } public void LayerOn() { GameObject[] KronshteinROSHmassiv = GameObject.FindGameObjectsWithTag("KronshteinROSH"); //В массиве динамически меняет слой у объекта foreach (GameObject Kron in KronshteinROSHmassiv) { Kron.layer = LayerMask.NameToLayer("FuzCompLayer"); } GameObject[] ROSHUprDvigmassiv = GameObject.FindGameObjectsWithTag("ROSHUprDvig"); //В массиве динамически меняет слой у объекта (родителя) и его дочек foreach (GameObject ROSH in ROSHUprDvigmassiv) { ROSH.layer = LayerMask.NameToLayer("FuzCompLayer"); Transform[] childs = ROSH.GetComponentsInChildren(); foreach (Transform ROSHchild in childs) { ROSHchild.gameObject.layer = LayerMask.NameToLayer("FuzCompLayer"); } } MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("FuzCompLayer"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Ostanov"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Maslosistema"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("POS"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Transmission"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Pozhar"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Toplivo"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("TormozNV"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Gidro"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("ZapuskDvig"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("DrenazhDvig"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("TV117V"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("TA14"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("UPRStab"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("SKV"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Putev"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Prodol"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("OSH"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("OhlAgr"); MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Kislorod"); UpravDvigProz.SetActive(true); KronshteinROSHProz.SetActive(true); ROSHUprDvigProz.SetActive(true); } }