diff --git a/Assets/ArtRes/Models/Device/计量柜/空开.fbx b/Assets/ArtRes/Models/Device/计量柜/空开.fbx
index d2026e0..d7f0fc2 100644
Binary files a/Assets/ArtRes/Models/Device/计量柜/空开.fbx and b/Assets/ArtRes/Models/Device/计量柜/空开.fbx differ
diff --git a/Assets/Scripts/CXX/Devices/Device_Base.cs b/Assets/Scripts/CXX/Devices/Device_Base.cs
index cad582a..9c47c4c 100644
--- a/Assets/Scripts/CXX/Devices/Device_Base.cs
+++ b/Assets/Scripts/CXX/Devices/Device_Base.cs
@@ -12,7 +12,7 @@ public class Device_Base : PermanentTriggerBase
///
/// trigger¼
///
- private Action triggerAction;
+ public Func triggerAction;
protected override void OnStart()
{
@@ -39,7 +39,7 @@ public class Device_Base : PermanentTriggerBase
}
}
- public void AddTriggerAction(Action action)
+ public void AddTriggerAction(Func action)
{
this.triggerAction = action;
}
diff --git a/Assets/Scripts/CXX/Devices/直接接入式电能计量装置/Device_3Phase4WireMeter.cs b/Assets/Scripts/CXX/Devices/直接接入式电能计量装置/Device_3Phase4WireMeter.cs
index 8ce4c5b..c723383 100644
--- a/Assets/Scripts/CXX/Devices/直接接入式电能计量装置/Device_3Phase4WireMeter.cs
+++ b/Assets/Scripts/CXX/Devices/直接接入式电能计量装置/Device_3Phase4WireMeter.cs
@@ -35,16 +35,6 @@ public class Device_3Phase4WireMeter : Device_Base
private BoxCollider boxCollider;
- //protected override void OnAwake()
- //{
- // base.OnAwake();
- // boxCollider = GetComponent();
- // if(UnityEngine.SceneManagement.SceneManager.GetActiveScene().name== "05_LiveScene")
- // {
- // boxCollider.enabled = false;
- // }
- //}
-
///
/// ʼܱ״̬Ĭװõ״̬ã
@@ -55,69 +45,104 @@ public class Device_3Phase4WireMeter : Device_Base
if(isIntsalledState)
{
Debug.Log("ܱΪʼ״̬");
- //Ӹ
- cover.isOpen = false;
- cover.transform.localPosition = new Vector3(0.0001220703f, 0.01112366f, -0.09854126f);
- //˿š
- cover.cover_screw_Left.isInstall = true;
- cover.cover_screw_Left.transform.localPosition = new Vector3(cover.cover_screw_Left.transform.localPosition.x, cover.cover_screw_Left.initPostionY, cover.cover_screw_Left.transform.localPosition.z);
- //˿š
- cover.cover_screw_Right.isInstall = true;
- cover.cover_screw_Right.transform.localPosition = new Vector3(cover.cover_screw_Right.transform.localPosition.x, cover.cover_screw_Right.initPostionY, cover.cover_screw_Right.transform.localPosition.z);
- //ӡװ
- cover.cover_seal_Left.isCut = false;
- cover.cover_seal_Left.gameObject.SetActive(true);
- //ҷӡװ
- cover.cover_seal_Right.isCut = false;
- cover.cover_seal_Right.gameObject.SetActive(true);
- //̶˿š
- fix_screw_left.isInstall = true;
- fix_screw_left.transform.localPosition = new Vector3(fix_screw_left.transform.localPosition.x, fix_screw_left.initPostionY , fix_screw_left.transform.localPosition.z);
- //ҹ̶˿š
- fix_screw_right.isInstall = true;
- fix_screw_right.transform.localPosition = new Vector3(fix_screw_right.transform.localPosition.x, fix_screw_right.initPostionY , fix_screw_right.transform.localPosition.z);
- //˿ȫš
- jieXian_screws.ForEach(a =>
- {
- a.isInstall = true;
- a.transform.localPosition = new Vector3(a.transform.localPosition.x, a.initPostionY, a.transform.localPosition.z);
- });
+ //װϵ״̬
+ CoverInstallState();
+ //˿ȫš״̬
+ JieXianScrewInstallState();
//
namePlate.isChecked = false;
}
else
{
Debug.Log("ܱΪ״̬");
- //Ӳ
- cover.isOpen = true;
- cover.transform.localPosition = new Vector3(0.0001220703f, -0.1388763f, -0.2485413f);
- //˿š
- cover.cover_screw_Left.isInstall = false;
- cover.cover_screw_Left.transform.localPosition = new Vector3(cover.cover_screw_Left.transform.localPosition.x, cover.cover_screw_Left.initPostionY-0.03f, cover.cover_screw_Left.transform.localPosition.z);
- //˿š
- cover.cover_screw_Right.isInstall = false;
- cover.cover_screw_Right.transform.localPosition = new Vector3(cover.cover_screw_Right.transform.localPosition.x, cover.cover_screw_Right.initPostionY-0.03f, cover.cover_screw_Right.transform.localPosition.z);
- //ӡ
- cover.cover_seal_Left.isCut = true;
- cover.cover_seal_Left.gameObject.SetActive(false);
- //ҷӡ
- cover.cover_seal_Right.isCut = true;
- cover.cover_seal_Right.gameObject.SetActive(false);
- //̶˿š
- fix_screw_left.isInstall = false;
- fix_screw_left.transform.localPosition = new Vector3(fix_screw_left.transform.localPosition.x, fix_screw_left.initPostionY-0.03f, fix_screw_left.transform.localPosition.z);
- //ҹ̶˿š
- fix_screw_right.isInstall = false;
- fix_screw_right.transform.localPosition = new Vector3(fix_screw_right.transform.localPosition.x, fix_screw_right.initPostionY-0.03f, fix_screw_right.transform.localPosition.z);
- //˿ȫš
- jieXian_screws.ForEach(a =>
- {
- a.isInstall = false;
- a.transform.localPosition = new Vector3(a.transform.localPosition.x, a.initPostionY-0.03f, a.transform.localPosition.z);
- });
+ //Ӳ״̬
+ CoverUnstallState();
+ //˿š״̬
+ JieXianScrewUninstallState();
}
}
+ ///
+ /// ȡµ״̬
+ ///
+ public void CoverUnstallState()
+ {
+ //Ӳ
+ cover.isOpen = true;
+ cover.transform.localPosition = new Vector3(0.0001220703f, -0.1388763f, -0.2485413f);
+ //˿š
+ cover.cover_screw_Left.isInstall = false;
+ cover.cover_screw_Left.transform.localPosition = new Vector3(cover.cover_screw_Left.transform.localPosition.x, cover.cover_screw_Left.initPostionY - 0.03f, cover.cover_screw_Left.transform.localPosition.z);
+ //˿š
+ cover.cover_screw_Right.isInstall = false;
+ cover.cover_screw_Right.transform.localPosition = new Vector3(cover.cover_screw_Right.transform.localPosition.x, cover.cover_screw_Right.initPostionY - 0.03f, cover.cover_screw_Right.transform.localPosition.z);
+ //ӡ
+ cover.cover_seal_Left.isCut = true;
+ cover.cover_seal_Left.gameObject.SetActive(false);
+ //ҷӡ
+ cover.cover_seal_Right.isCut = true;
+ cover.cover_seal_Right.gameObject.SetActive(false);
+ //̶˿š
+ fix_screw_left.isInstall = false;
+ fix_screw_left.transform.localPosition = new Vector3(fix_screw_left.transform.localPosition.x, fix_screw_left.initPostionY - 0.03f, fix_screw_left.transform.localPosition.z);
+ //ҹ̶˿š
+ fix_screw_right.isInstall = false;
+ fix_screw_right.transform.localPosition = new Vector3(fix_screw_right.transform.localPosition.x, fix_screw_right.initPostionY - 0.03f, fix_screw_right.transform.localPosition.z);
+ //˿ȫš
+
+ }
+ ///
+ /// װϵ״̬
+ ///
+ public void CoverInstallState()
+ {
+ //Ӹ
+ cover.isOpen = false;
+ cover.transform.localPosition = new Vector3(0.0001220703f, 0.01112366f, -0.09854126f);
+ //˿š
+ cover.cover_screw_Left.isInstall = true;
+ cover.cover_screw_Left.transform.localPosition = new Vector3(cover.cover_screw_Left.transform.localPosition.x, cover.cover_screw_Left.initPostionY, cover.cover_screw_Left.transform.localPosition.z);
+ //˿š
+ cover.cover_screw_Right.isInstall = true;
+ cover.cover_screw_Right.transform.localPosition = new Vector3(cover.cover_screw_Right.transform.localPosition.x, cover.cover_screw_Right.initPostionY, cover.cover_screw_Right.transform.localPosition.z);
+ //ӡװ
+ cover.cover_seal_Left.isCut = false;
+ cover.cover_seal_Left.gameObject.SetActive(true);
+ //ҷӡװ
+ cover.cover_seal_Right.isCut = false;
+ cover.cover_seal_Right.gameObject.SetActive(true);
+ //̶˿š
+ fix_screw_left.isInstall = true;
+ fix_screw_left.transform.localPosition = new Vector3(fix_screw_left.transform.localPosition.x, fix_screw_left.initPostionY, fix_screw_left.transform.localPosition.z);
+ //ҹ̶˿š
+ fix_screw_right.isInstall = true;
+ fix_screw_right.transform.localPosition = new Vector3(fix_screw_right.transform.localPosition.x, fix_screw_right.initPostionY, fix_screw_right.transform.localPosition.z);
+
+ }
+ ///
+ /// ˿š״̬
+ ///
+ public void JieXianScrewInstallState()
+ {
+ //˿ȫš
+ jieXian_screws.ForEach(a =>
+ {
+ a.isInstall = true;
+ a.transform.localPosition = new Vector3(a.transform.localPosition.x, a.initPostionY, a.transform.localPosition.z);
+ });
+ }
+ ///
+ /// ˿š״̬
+ ///
+ public void JieXianScrewUninstallState()
+ {
+ jieXian_screws.ForEach(a =>
+ {
+ a.isInstall = false;
+ a.transform.localPosition = new Vector3(a.transform.localPosition.x, a.initPostionY - 0.03f, a.transform.localPosition.z);
+ });
+ }
+
///
/// µܱ
///
diff --git a/Assets/Scripts/CXX/Devices/直接接入式电能计量装置/Device_Switch.cs b/Assets/Scripts/CXX/Devices/直接接入式电能计量装置/Device_Switch.cs
index 6234461..1899476 100644
--- a/Assets/Scripts/CXX/Devices/直接接入式电能计量装置/Device_Switch.cs
+++ b/Assets/Scripts/CXX/Devices/直接接入式电能计量装置/Device_Switch.cs
@@ -40,4 +40,24 @@ public class Device_Switch : Device_Base
actionBack.Invoke(isOpen);
}
}
+
+ ///
+ /// ش״̬
+ ///
+ public void OpenState()
+ {
+ isOpen = true;
+ transform.localEulerAngles = new Vector3(0, 0, 0);
+ }
+
+ ///
+ /// عر״̬
+ ///
+ public void CloseState()
+ {
+ isOpen = false;
+ transform.localEulerAngles = new Vector3(45, 0, 0);
+ }
+
+
}
diff --git a/Assets/Scripts/CXX/Devices/计量柜/Device_CabinetDoor.cs b/Assets/Scripts/CXX/Devices/计量柜/Device_CabinetDoor.cs
index 46ea357..47f291c 100644
--- a/Assets/Scripts/CXX/Devices/计量柜/Device_CabinetDoor.cs
+++ b/Assets/Scripts/CXX/Devices/计量柜/Device_CabinetDoor.cs
@@ -50,6 +50,7 @@ public class Device_CabinetDoor : Device_Base
{
if (LiveSceneManager.Instance.currentTool != null && LiveSceneManager.Instance.currentTool.name == "")
return;
+
if (GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(triggerName, true) == 0)
{
base.OnMDown();
diff --git a/Assets/Scripts/CXX/Devices/计量柜/Device_MeasuringCabinet.cs b/Assets/Scripts/CXX/Devices/计量柜/Device_MeasuringCabinet.cs
index 197ca03..0b64c06 100644
--- a/Assets/Scripts/CXX/Devices/计量柜/Device_MeasuringCabinet.cs
+++ b/Assets/Scripts/CXX/Devices/计量柜/Device_MeasuringCabinet.cs
@@ -114,7 +114,7 @@ public class Device_MeasuringCabinet : Device_Base
///
/// ˢµܱ˿״̬
///
- private void CheckHasElectricity()
+ public void CheckHasElectricity()
{
Debug.Log("״̬ˢ");
//˿Ƿ
diff --git a/Assets/Scripts/CXX/StepState/1002/StepState_1002.cs b/Assets/Scripts/CXX/StepState/1002/StepState_1002.cs
index 9e30c51..16185f2 100644
--- a/Assets/Scripts/CXX/StepState/1002/StepState_1002.cs
+++ b/Assets/Scripts/CXX/StepState/1002/StepState_1002.cs
@@ -122,22 +122,57 @@ public class StepState_1002 : StepState
else if(num == 3010)
{
//ϿԴ
+
+ //ſ
+ SiteManager.instance.measuringCabinet.cabinetDoor.isOpen = true;
+ SiteManager.instance.measuringCabinet.cabinetDoor.transform.localEulerAngles = new Vector3(0,0,180);
+ SiteManager.instance.measuringCabinet.cabinetDoor.transform.Find("2/3").localEulerAngles =new Vector3(-45f,0,0);
+ //Ӳ
+ SiteManager.instance.measuringCabinet.meteringDevice.CoverUnstallState();
+
}
else if (num == 3011)
{
//˶Ժͳ¼豸Ϣ
+
+ //ԴϿ
+ SiteManager.instance.measuringCabinet.inSwitch.CloseState();
}
else if(num== 3012)
{
//ܼװ
+ //Ѷȡ
+ SiteManager.instance.measuringCabinet.meteringDevice.namePlate.isChecked = true;
}
else if( num == 3013)
{
//װܱ
+
+ //˿š
+ SiteManager.instance.measuringCabinet.meteringDevice.JieXianScrewUninstallState();
+ //ܱȡ
+ SiteManager.instance.measuringCabinet.jieXian_screws.ForEach(screw =>
+ {
+ screw.isConnected = false;
+ screw.transform.localPosition = new Vector3(screw.transform.localPosition.x, screw.InstallPosY-2, screw.transform.localPosition.z);
+ });
+ //ˢ´״̬
+ SiteManager.instance.measuringCabinet.CheckHasElectricity();
}
else if (num == 3014)
{
//װ
+
+ //ܱ
+ SiteManager.instance.measuringCabinet.jieXian_screws.ForEach(screw =>
+ {
+ screw.isConnected = true;
+ screw.transform.localPosition = new Vector3(screw.transform.localPosition.x, screw.InstallPosY, screw.transform.localPosition.z);
+ });
+ //˿š
+ SiteManager.instance.measuringCabinet.meteringDevice.JieXianScrewInstallState();
+ //ˢ´״̬
+ SiteManager.instance.measuringCabinet.CheckHasElectricity();
}
else if(num== 3015)
{
@@ -146,10 +181,17 @@ public class StepState_1002 : StepState
else if(num== 3016)
{
//ʵʩӡ
+
+ //ش
+ SiteManager.instance.measuringCabinet.inSwitch.OpenState();
+ //Ӹ
+ SiteManager.instance.measuringCabinet.meteringDevice.CoverInstallState();
}
else if(num== 3017)
{
//д֪
+ SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Left.Install();
+ SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Right.Install();
}
else if(num== 3018)
{
diff --git a/Assets/Scripts/CXX/Tools/Tool_Base.cs b/Assets/Scripts/CXX/Tools/Tool_Base.cs
index 15ecfa5..3bffc75 100644
--- a/Assets/Scripts/CXX/Tools/Tool_Base.cs
+++ b/Assets/Scripts/CXX/Tools/Tool_Base.cs
@@ -16,7 +16,7 @@ public class Tool_Base : PermanentTriggerBase
///
/// trigger¼
///
- private Action triggerAction;
+ public Func triggerAction;
protected override void OnStart()
{
@@ -43,7 +43,7 @@ public class Tool_Base : PermanentTriggerBase
}
}
- public void AddTriggerAction(Action action)
+ public void AddTriggerAction(Func action)
{
this.triggerAction = action;
}