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

193 lines
8.7 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class OSH : MonoBehaviour
{
public Camera MainCamera;
public Camera CamOSH;
public GameObject OSHProz;
public GameObject KronshteinROSHProz;
public GameObject ROSHUprDvigProz;
public GameObject RPOSHProz;
public GameObject KronshteinOSHProz;
public void LayerOff()
{
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("FuzCompLayer"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("FuzCompLayer"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Ostanov"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("Ostanov"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Maslosistema"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("Maslosistema"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("UpravlenieDvig"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("UpravlenieDvig"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("POS"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("POS"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Transmission"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("Transmission"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Pozhar"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("Pozhar"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Toplivo"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("Toplivo"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("TormozNV"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("TormozNV"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Gidro"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("Gidro"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("ZapuskDvig"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("ZapuskDvig"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("DrenazhDvig"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("DrenazhDvig"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("TV117V"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("TV117V"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("TA14"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("TA14"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("UPRStab"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("UPRStab"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("SKV"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("SKV"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Putev"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("Putev"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Prodol"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("Prodol"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("OhlAgr"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("OhlAgr"));
MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("Kislorod"));
CamOSH.cullingMask &= ~(1 << LayerMask.NameToLayer("Kislorod"));
GameObject[] KronshteinROSHmassiv = GameObject.FindGameObjectsWithTag("KronshteinROSH"); // ìàññèâå äèíàìè÷åñêè ìåíÿåò ñëîé ó îáúåêòà
foreach (GameObject Kron in KronshteinROSHmassiv)
{
Kron.layer = LayerMask.NameToLayer("OSH");
}
GameObject[] ROSHUprDvigmassiv = GameObject.FindGameObjectsWithTag("ROSHUprDvig"); // ìàññèâå äèíàìè÷åñêè ìåíÿåò ñëîé ó îáúåêòà (ðîäèòåëÿ) è åãî äî÷åê
foreach (GameObject ROSH in ROSHUprDvigmassiv)
{
ROSH.layer = LayerMask.NameToLayer("OSH");
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("OSH");
}
}
GameObject[] RPOSHmassiv = GameObject.FindGameObjectsWithTag("RPOSH"); // ìàññèâå äèíàìè÷åñêè ìåíÿåò ñëîé ó îáúåêòà
foreach (GameObject RPOSH in RPOSHmassiv)
{
RPOSH.layer = LayerMask.NameToLayer("OSH");
}
GameObject[] KronshteinOSHmassiv = GameObject.FindGameObjectsWithTag("KronshteinOSH"); // ìàññèâå äèíàìè÷åñêè ìåíÿåò ñëîé ó îáúåêòà
foreach (GameObject Kron in KronshteinOSHmassiv)
{
Kron.layer = LayerMask.NameToLayer("OSH");
}
OSHProz.SetActive(false);
KronshteinROSHProz.SetActive(false);
ROSHUprDvigProz.SetActive(false);
RPOSHProz.SetActive(false);
KronshteinOSHProz.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)
{
if (ROSHchild.gameObject.name.StartsWith("Cylinder028"))
{
continue;
}
if (ROSHchild.gameObject.name.StartsWith("Cylinder033"))
{
continue;
}
ROSHchild.gameObject.layer = LayerMask.NameToLayer("FuzCompLayer");
}
}
GameObject[] RPOSHmassiv = GameObject.FindGameObjectsWithTag("RPOSH"); // ìàññèâå äèíàìè÷åñêè ìåíÿåò ñëîé ó îáúåêòà
foreach (GameObject RPOSH in RPOSHmassiv)
{
RPOSH.layer = LayerMask.NameToLayer("FuzCompLayer");
}
GameObject[] KronshteinOSHmassiv = GameObject.FindGameObjectsWithTag("KronshteinOSH"); // ìàññèâå äèíàìè÷åñêè ìåíÿåò ñëîé ó îáúåêòà
foreach (GameObject Kron in KronshteinOSHmassiv)
{
Kron.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("UpravlenieDvig");
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("OhlAgr");
MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("Kislorod");
OSHProz.SetActive(true);
KronshteinROSHProz.SetActive(true);
ROSHUprDvigProz.SetActive(true);
RPOSHProz.SetActive(true);
KronshteinOSHProz.SetActive(true);
}
}