diff --git a/Assets/Scripts/Device_Control_9001.cs b/Assets/Scripts/Device_Control_9001.cs
index 602b80b..b186172 100644
--- a/Assets/Scripts/Device_Control_9001.cs
+++ b/Assets/Scripts/Device_Control_9001.cs
@@ -11,6 +11,8 @@ using UnityEngine;
///
public class Device_Control_9001 : Device_Control
{
+ public static Device_Control_9001 instance;
+
///
/// 当前机柜中安装的三相四线电能表
///
@@ -88,7 +90,7 @@ public class Device_Control_9001 : Device_Control
ewmOK = false;
isSMOK = false;
-
+ instance = this;
//设置控制脚本
StepStateControl.instance?.SetDeviceControl(9001,this);
diff --git a/Assets/Scripts/StepState_9001.cs b/Assets/Scripts/StepState_9001.cs
index da62160..8e769f7 100644
--- a/Assets/Scripts/StepState_9001.cs
+++ b/Assets/Scripts/StepState_9001.cs
@@ -43,7 +43,8 @@ public class StepState_9001 : StepState
//办公室场景首个步骤
//查看任务单
//OfficeManager.Instance.mobileController.downIndex = 0;
- PacksackBagMgr.Instance.ClearAllData();
+ TooRoomMannger.Instance.CreateTool();
+ PacksackBagMgr.Instance.ClearAllToolAndDiveceAndMaterial();
TooRoomMannger.Instance.CheckWearByWearDic();
//MobileAttach10007_7002.index = 0;
Score_9001.cdzIndex = 0;
diff --git a/Assets/Template/Scripts/CXX/Tools/Tool_EWM.cs b/Assets/Template/Scripts/CXX/Tools/Tool_EWM.cs
index 18e39df..3fc1604 100644
--- a/Assets/Template/Scripts/CXX/Tools/Tool_EWM.cs
+++ b/Assets/Template/Scripts/CXX/Tools/Tool_EWM.cs
@@ -14,8 +14,9 @@ public class Tool_EWM : Tool_Base
if (Physics.Raycast(tmpray, out RaycastHit hit))
{
Door ts = hit.transform.GetComponent();
- if (ts != null)
+ if (ts != null && !Device_Control_9001.instance.ewmh.activeInHierarchy)
{
+ Device_Control_9001.EWM_OBJ = Device_Control_9001.instance.ewm;
Device_Control_9001.EWM_OBJ.SetActive(true);
Device_Control_9001.ewmOK = true;
}
diff --git a/Assets/Template/Scripts/Project/Manager/TooRoomMannger.cs b/Assets/Template/Scripts/Project/Manager/TooRoomMannger.cs
index a354ec8..d5adb37 100644
--- a/Assets/Template/Scripts/Project/Manager/TooRoomMannger.cs
+++ b/Assets/Template/Scripts/Project/Manager/TooRoomMannger.cs
@@ -179,6 +179,31 @@ public class TooRoomMannger : SingletonMono
// GameManager.EventMgr.RemoveEventListener(Enum_EventType.PlayerCanMove, SwitchFirstPersonControllerMove);
//}
+ public void CreateTool()
+ {
+ var bagDatas = GameManager.PacksackBagMgr.GetCurrentBagData();
+ var wearDate = GameManager.PacksackBagMgr.wearDic;
+ foreach (var item in bagDatas.Keys)
+ {
+ List temp = bagDatas[item];
+ for (int j = 0; j < temp.Count; j++)
+ {
+ int indexJ = j;
+ if (temp[indexJ].selfPosInToolRoom != Vector3.zero)
+ {
+ GameObject obj = Instantiate(temp[indexJ].objPrefab, toolParent);
+ obj.name = temp[indexJ].toolName;
+ obj.transform.position = temp[indexJ].selfPosInToolRoom;
+ obj.transform.eulerAngles = temp[indexJ].selfAngleInToolRoom;
+ obj.GetComponent().itemInfo = temp[indexJ];
+ obj.GetComponent().GetInfo();
+ }
+ }
+ }
+ allTMDs.Clear();
+ allTMDs = toolParent.GetComponentsInChildren(true).ToList();
+ }
+
}
///
diff --git a/Assets/Template/Scripts/Project/Objects/ToolAndMaterial/BaseToolOrDevice.cs b/Assets/Template/Scripts/Project/Objects/ToolAndMaterial/BaseToolOrDevice.cs
index 18b11c7..0e62a80 100644
--- a/Assets/Template/Scripts/Project/Objects/ToolAndMaterial/BaseToolOrDevice.cs
+++ b/Assets/Template/Scripts/Project/Objects/ToolAndMaterial/BaseToolOrDevice.cs
@@ -18,6 +18,8 @@ public class ItemInfo
public E_ToolOrDeviceOrMaterials toolOrDeviceOrMaterial;
public GameObject objPrefab;
public Vector3 selfPosInToolRoom;
+ public Vector3 selfAngleInToolRoom;
+ public int index;
}
///
/// 宸ュ叿鎴栬呮潗鏂欏熀绫伙紝姝よ剼鏈繀椤绘寕鍦ㄥ伐鍏锋垨鑰呮潗鏂欎笂
@@ -30,6 +32,13 @@ public abstract class BaseToolOrDevice : MonoBehaviour
public Tween tween;
private void Awake()
{
+ //姝よ剼鏈粎宸ュ叿闂存湁鐢
+ if (GameManager.RunModelMgr.SceneType != E_SceneType.ToolRoom)
+ {
+ Destroy(this);
+ return;
+ }
+
if (GetComponent())
{
_highlight = GetComponent();
@@ -72,13 +81,13 @@ public abstract class BaseToolOrDevice : MonoBehaviour
itemInfo.toolOrDeviceOrMaterial = (E_ToolOrDeviceOrMaterials)dTMD.type;
gameObject.SetActive(true);
itemInfo.objPrefab = Resources.Load("Prefabs/Objects/Tools/" + gameObject.name);
- Debug.Log("鐢熸垚");
itemInfo.selfPosInToolRoom = transform.position;
+ itemInfo.selfAngleInToolRoom = transform.eulerAngles;
}
- else
- {
- gameObject.SetActive(false);
- }
+ //else
+ //{
+ // gameObject.SetActive(false);
+ //}
}