Files
TowerCraneVisualization/Assets/ZMS/Script/3D/Configuration/QTZConf.cs

130 lines
4.1 KiB
C#

using Knife.HDRPOutline.Core;
using Sirenix.OdinInspector;
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using ZMS.UI;
namespace ZMS.Configura
{
public class QTZConf : SiteConfigura
{
public Transform liftingArm_Front;//臂根部分
public Transform liftingArm_Rear;//臂尖部分
public Transform focusTarg;//聚焦物体
public Transform focusTargBear;//吊钩聚焦物体
public Transform bear;//吊钩
public Transform cockpit;//驾驶舱视角
public Material material_Select;//选中材质
public Material material_NotSelect;//未选中材质
public Material material_SelectBOB;//选中材质
public Material material_NotSelectBOB;//未选中材质
public GameObject selectLoad;
public GameObject notSelectLoad;
//public List<MeshRenderer> meshRenderers;
//public List<MeshRenderer> meshRenderersBalanc;
public List<ConstructConf> constructConf = new List<ConstructConf>();
public List<OutlineObject> outlineObjects = new List<OutlineObject>();
public List<MaterialChange> materialList = new List<MaterialChange>();
public Action<float, float> actionValue;
public Action<Color> actionColor;
public override void Start()
{
for (int i = 0; i < outlineObjects.Count; i++)
{
actionValue += outlineObjects[i].SetMeaterValue;
actionColor += outlineObjects[i].SetMeaterColor;
}
}
[Button]
public void MaterialChange(bool b)
{
if (b)
{
selectLoad.SetActive(true);
notSelectLoad.SetActive(false);
}
else
{
selectLoad.SetActive(false);
notSelectLoad.SetActive(true);
}
return;
for (int i = 0; i < materialList.Count; i++)
{
materialList[i].SetMaterial(b);
}
}
//public void SetMaterialSelect(bool selsct)
//{
// for (int i = 0; i < meshRenderers.Count; i++)
// {
// if (selsct)
// {
// meshRenderers[i].materials[0].CopyPropertiesFromMaterial(material_Select);
// }
// else
// {
// meshRenderers[i].materials[0].CopyPropertiesFromMaterial(material_NotSelect);
// }
// }
// for (int i = 0; i < meshRenderersBalanc.Count; i++)
// {
// if (selsct)
// meshRenderersBalanc[i].materials[0].CopyPropertiesFromMaterial(material_SelectBOB);
// else
// meshRenderersBalanc[i].materials[0].CopyPropertiesFromMaterial(material_NotSelectBOB);
// }
//}
public void AddLinsen()
{
for (int i = 0; i < outlineObjects.Count; i++)
{
if (outlineObjects[i].gameObject.activeInHierarchy)
{
DownUI.higValueSet_Action += outlineObjects[i].SetMeaterValue;
DownUI.higColorSet_Action += outlineObjects[i].SetMeaterColor;
}
}
DownUI.higValueSet_Action?.Invoke(2, 1);
Debug.Log(DownUI.higValueSet_Action == null);
for (int i = 0; i < constructConf.Count; i++)
{
constructConf[i].Setmet(true);
}
MaterialChange(true);
}
public void ClearLinsen()
{
DownUI.higValueSet_Action?.Invoke(0, 0);
for (int i = 0; i < outlineObjects.Count; i++)
{
DownUI.higValueSet_Action -= outlineObjects[i].SetMeaterValue;
DownUI.higColorSet_Action -= outlineObjects[i].SetMeaterColor;
}
for (int i = 0; i < constructConf.Count; i++)
{
constructConf[i].Setmet(false);
}
MaterialChange(false);//修改塔机外观
}
}
}