Files
2022-07-04 13:15:35 +03:00

155 lines
7.3 KiB
C#

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<Transform>();
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<Transform>();
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);
}
}