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; }