This commit is contained in:
陈向学 2024-09-06 17:12:29 +08:00
commit 585bf2e774
13 changed files with 246 additions and 789 deletions

View File

@ -39,4 +39,19 @@ public class Device_Seal : Device_Base
isCut = false; isCut = false;
gameObject.SetActive(true); gameObject.SetActive(true);
} }
/// <summary>
/// ¶ÏÏßÖØÁ¬
/// </summary>
/// <param name="triggerInfo"></param>
/// <exception cref="NotImplementedException"></exception>
public override void LoadCurrentTriggerStat(string triggerInfo)
{
if (triggerInfo != "")
isCut = bool.Parse(triggerInfo);
}
public override string SaveCurrentTriggerStat()
{
return isCut.ToString();
}
} }

View File

@ -75,4 +75,22 @@ public class Check_JieXian : PermanentTriggerBase
base.CallScoreAction(true); base.CallScoreAction(true);
} }
} }
/// <summary>
/// ¶ÏÏßÖØÁ¬
/// </summary>
/// <returns></returns>
/// <exception cref="System.NotImplementedException"></exception>
public override string SaveCurrentTriggerStat()
{
return isChecked.ToString();
//throw new System.NotImplementedException();
}
public override void LoadCurrentTriggerStat(string triggerInfo)
{
if (triggerInfo != "")
isChecked = bool.Parse(triggerInfo);
//throw new System.NotImplementedException();
}
} }

View File

@ -78,4 +78,13 @@ public abstract class ScoreBase : MonoBehaviour
{ {
this.currentScore = _score; this.currentScore = _score;
} }
/// <summary>
/// 记录现场环境中scoreBase的各项List缓存
/// </summary>
public abstract string SaveSceneBufferList();
/// <summary>
/// 还原现场环境中scoreBase的各项List缓存
/// </summary>
public abstract void LoadSceneBufferList(string sceneInfo);
} }

View File

@ -3,6 +3,21 @@ using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using UnityEngine; using UnityEngine;
using LitJson;
/// <summary>
/// ????buffer
/// </summary>
public class BufferTemp_1002
{
public List<string> TestPen3list;
public List<string> InSwitchCloseYDList;
public List<string> InSwitchOpenYDList;
public List<string> currentunInstallJieXian;
public List<string> currentInstallJieXian;
public List<string> installCover;
public List<string> currentInstallTestJieXian;
}
public class Score_1002 : ScoreBase public class Score_1002 : ScoreBase
{ {
@ -445,4 +460,41 @@ public class Score_1002 : ScoreBase
return false; return false;
} }
/// <summary>
/// ?????List??,??????
/// </summary>
/// <exception cref="System.NotImplementedException"></exception>
public override string SaveSceneBufferList()
{
BufferTemp_1002 tmp = new BufferTemp_1002();
tmp.TestPen3list = TestPen3list;
tmp.InSwitchCloseYDList = InSwitchCloseYDList;
tmp.InSwitchOpenYDList = InSwitchOpenYDList;
tmp.currentunInstallJieXian = currentunInstallJieXian;
tmp.currentInstallJieXian = currentInstallJieXian;
tmp.installCover = installCover;
tmp.currentInstallTestJieXian = currentInstallTestJieXian;
string sceneInfo = JsonConvert.SerializeObject(tmp, Formatting.Indented);
Debug.Log("==????:" + sceneInfo);
return sceneInfo;
//throw new System.NotImplementedException();
}
/// <summary>
/// ??????
/// </summary>
public override void LoadSceneBufferList(string sceneInfo)
{
BufferTemp_1002 tmp = new BufferTemp_1002();
tmp = JsonMapper.ToObject<BufferTemp_1002>(sceneInfo);
TestPen3list = tmp.TestPen3list;
InSwitchCloseYDList = tmp.InSwitchCloseYDList;
InSwitchOpenYDList = tmp.InSwitchOpenYDList;
currentunInstallJieXian = tmp.currentunInstallJieXian;
currentInstallJieXian = tmp.currentInstallJieXian;
installCover = tmp.installCover;
currentInstallTestJieXian = tmp.currentInstallTestJieXian;
//throw new System.NotImplementedException();
}
} }

View File

@ -24,6 +24,7 @@ public class ReconnectTriggerInfo
public string triggerName; public string triggerName;
public Vector3 selfPosInScene; public Vector3 selfPosInScene;
public Vector3 selfRotInScene; public Vector3 selfRotInScene;
public string triggerInfo;
} }
@ -48,8 +49,13 @@ public class TB_UserExamStat
/// <summary> /// <summary>
/// 当前得分情况 /// 当前得分情况
/// </summary> /// </summary>
public float currentScore = 0; public float currentScore = 0;
public List<ReconnectSubScoreInfo> allSubScore = new List<ReconnectSubScoreInfo>(); public List<ReconnectSubScoreInfo> allSubScore = new List<ReconnectSubScoreInfo>();
/// <summary>
/// 用户经历过的场景
/// </summary>
//public List<string> experiencedScene = new List<string>();
/// <summary> /// <summary>
/// 背包中所有的工具和材料 /// 背包中所有的工具和材料
@ -75,4 +81,9 @@ public class TB_UserExamStat
/// 当前场景内的所有可触发物品 /// 当前场景内的所有可触发物品
/// </summary> /// </summary>
public List<ReconnectTriggerInfo> currentSceneTriggers = new List<ReconnectTriggerInfo>(); public List<ReconnectTriggerInfo> currentSceneTriggers = new List<ReconnectTriggerInfo>();
/// <summary>
/// 关卡内所有缓存信息,不定数据格式
/// </summary>
public string currentSceneOtherInfo = "";
} }

View File

@ -102,6 +102,11 @@ public class GameManager : SingletonAutoMono<GameManager>
/// 数据重连管理类 /// 数据重连管理类
/// </summary> /// </summary>
public static ReconnectMgr ReconnectMgr { get; private set; } public static ReconnectMgr ReconnectMgr { get; private set; }
/// <summary>
/// 工单管理类
/// </summary>
public static WorkorderMgr WorkorderMgr { get; private set; }
#endregion #endregion
@ -128,6 +133,7 @@ public class GameManager : SingletonAutoMono<GameManager>
ToolAndmaterialMgr = ToolAndmaterialMgr.Instance; ToolAndmaterialMgr = ToolAndmaterialMgr.Instance;
PacksackBagMgr = PacksackBagMgr.Instance; PacksackBagMgr = PacksackBagMgr.Instance;
ReconnectMgr = ReconnectMgr.Instance;//重连管理初始化 ReconnectMgr = ReconnectMgr.Instance;//重连管理初始化
WorkorderMgr = WorkorderMgr.Instance;//工单管理初始化
DataMgr.Init(); DataMgr.Init();
InitData(); InitData();

View File

@ -16,10 +16,12 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
[HideInInspector] [HideInInspector]
public string localStatFileName = "realtimeStat.json";//保存文件的文件名 public string localStatFileName = "realtimeStat.json";//保存文件的文件名
[HideInInspector] [HideInInspector]
public int countDown_AutoSave = 120;//自动保存的时间间隔 public int countDown_AutoSave = 600;//自动保存的时间间隔
private TB_UserExamStat UserExamStat = new TB_UserExamStat(); private TB_UserExamStat UserExamStat = new TB_UserExamStat();
private string localStatPath = ""; private string localStatPath = "";
private Coroutine coroutine;//自动保存倒计时 private Coroutine coroutine;//自动保存倒计时
//[HideInInspector]
//public List<string> experiencedScene = new List<string>();//用户经历过的场景
/// <summary> /// <summary>
/// 初始化函数,记录时间间隔 /// 初始化函数,记录时间间隔
@ -27,11 +29,22 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
public void Init( ) public void Init( )
{ {
localStatPath = Application.streamingAssetsPath + "/" + localStatFileName; localStatPath = Application.streamingAssetsPath + "/" + localStatFileName;
//if (File.Exists( localStatPath ))//启动后检查有没有之前的遗留 //UserExamStat.experiencedScene.Clear();//清空用户经历过的场景
//{ //experiencedScene.Clear();
// File.Delete( localStatPath );
//}
} }
/// <summary>
/// 用户每经历一个场景就需要保存一个场景的数据
/// </summary>
//public bool IntoNewScene(string sceneName)
//{
// if (UserExamStat.experiencedScene.Contains(sceneName))
// return false;
// else
// {
// UserExamStat.experiencedScene.Add(sceneName);
// return true;
// }
//}
ReconnectMgr()//构造函数 ReconnectMgr()//构造函数
{ {
@ -45,7 +58,6 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
{ {
//记录步骤相关各项信息 //记录步骤相关各项信息
UserExamStat.schemeID = ProcessManager.Instance.schemeID; UserExamStat.schemeID = ProcessManager.Instance.schemeID;
//记录得分情况 //记录得分情况
ScoreBase scoreBase = FindFirstObjectByType<ScoreBase>(); ScoreBase scoreBase = FindFirstObjectByType<ScoreBase>();
UserExamStat.systemID = scoreBase.systemId; UserExamStat.systemID = scoreBase.systemId;
@ -61,21 +73,26 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
sub.isDone = item.Value.isDone; sub.isDone = item.Value.isDone;
UserExamStat.allSubScore.Add( sub ); UserExamStat.allSubScore.Add( sub );
}; };
//保存场景内独有信息
UserExamStat.currentSceneOtherInfo = scoreBase.SaveSceneBufferList();
} }
/*UserExamStat.processId = ProcessManager.Instance.processId;
UserExamStat.subProcessId = ProcessManager.Instance.subProcessId;
UserExamStat.subProcessStepId = ProcessManager.Instance.subProcessStepId;*/
//记录装备材料信息 //记录装备材料信息
UserExamStat.allToolAndMaterial.Clear(); UserExamStat.allToolAndMaterial.Clear();
UserExamStat.currentSceneTools.Clear();
Dictionary<string, List<ItemInfo>> toolAndMaterialDic = PacksackBagMgr.Instance.GetCurrentBagData(); Dictionary<string, List<ItemInfo>> toolAndMaterialDic = PacksackBagMgr.Instance.GetCurrentBagData();
foreach (var item in toolAndMaterialDic) foreach (var item in toolAndMaterialDic)
{ {
foreach (var itemInfo in item.Value) foreach (var itemInfo in item.Value)
{ {
UserExamStat.allToolAndMaterial.Add(((ItemInfo)itemInfo).toolName); UserExamStat.allToolAndMaterial.Add(((ItemInfo)itemInfo).toolName);
ReconnectItemInfo rec = new ReconnectItemInfo();//获取场景内(工具间)所有可以装备材料的物品
rec.toolId = itemInfo.toolId;
rec.toolName = itemInfo.toolName;
rec.triggerID = itemInfo.triggerID;
//rec.toolOrDeviceOrMaterial = item.itemInfo.toolOrDeviceOrMaterial;
rec.selfPosInToolRoom = itemInfo.selfPosInToolRoom;
UserExamStat.currentSceneTools.Add(rec);
} }
} }
//记录已穿戴设备 //记录已穿戴设备
@ -89,21 +106,6 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
//获取当前所加载场景的名字 //获取当前所加载场景的名字
UserExamStat.sceneName = UnityEngine.SceneManagement.SceneManager.GetActiveScene().name; UserExamStat.sceneName = UnityEngine.SceneManagement.SceneManager.GetActiveScene().name;
//获取场景内(工具间)所有可以装备材料的物品
UserExamStat.currentSceneTools.Clear();
BaseToolOrDevice[] allThings = FindObjectsOfType<BaseToolOrDevice>();
foreach (BaseToolOrDevice item in allThings)
{
//Debug.Log(item.itemInfo.toolName);
ReconnectItemInfo rec = new ReconnectItemInfo();
rec.toolId = item.itemInfo.toolId;
rec.toolName = item.itemInfo.toolName;
rec.triggerID = item.itemInfo.triggerID;
//rec.toolOrDeviceOrMaterial = item.itemInfo.toolOrDeviceOrMaterial;
rec.selfPosInToolRoom = item.itemInfo.selfPosInToolRoom;
UserExamStat.currentSceneTools.Add(rec);
}
//获取场景内(现场)所有可以出发的装置 //获取场景内(现场)所有可以出发的装置
UserExamStat.currentSceneTriggers.Clear(); UserExamStat.currentSceneTriggers.Clear();
PermanentTriggerBase[] allPermanentTriggers = FindObjectsOfType<PermanentTriggerBase>(); PermanentTriggerBase[] allPermanentTriggers = FindObjectsOfType<PermanentTriggerBase>();
@ -114,6 +116,7 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
ret.triggerID = item.triggerID; ret.triggerID = item.triggerID;
ret.selfPosInScene = item.transform.localPosition; ret.selfPosInScene = item.transform.localPosition;
ret.selfRotInScene = item.transform.localEulerAngles; ret.selfRotInScene = item.transform.localEulerAngles;
ret.triggerInfo = item.SaveCurrentTriggerStat();
UserExamStat.currentSceneTriggers.Add(ret); UserExamStat.currentSceneTriggers.Add(ret);
} }
@ -157,35 +160,37 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
//先恢复场景 //先恢复场景
ScenesManager.Instance.LoadSceneAsyn(UserExamStat.sceneName, () => { ScenesManager.Instance.LoadSceneAsyn(UserExamStat.sceneName, () => {
//右侧工具栏切换 //右侧工具栏切换
GameManager.EventMgr.EventTrigger(Enum_EventType.SwitchScene, GameManager.RunModelMgr.SceneType); if (!GameManager.UIMgr.GetPanel<UI_MenuBar>())//office场景下,右侧工具栏可能会隐藏
//恢复场景中各项装备
BaseToolOrDevice[] allThings = FindObjectsOfType<BaseToolOrDevice>();
foreach (BaseToolOrDevice item in allThings)
{ {
item.gameObject.SetActive(false);//先全部隐藏 GameManager.UIMgr.ShowPanel<UI_MenuBar>(E_UI_Layer.Mid, (panel) =>
foreach (ReconnectItemInfo rec in UserExamStat.currentSceneTools)
{ {
if (item.itemInfo.toolName.Equals(rec.toolName) && item.itemInfo.toolId == rec.toolId) panel.Init();
{ GameManager.EventMgr.EventTrigger(Enum_EventType.SwitchScene, GameManager.RunModelMgr.SceneType);
if (item.itemInfo.selfPosInToolRoom.Equals(rec.selfPosInToolRoom)) });
{
item.gameObject.SetActive(true);
break;
}
}
}
} }
else
GameManager.EventMgr.EventTrigger(Enum_EventType.SwitchScene, GameManager.RunModelMgr.SceneType);
//恢复背包中的装备 //恢复背包中的装备
List<ItemInfo> itemInPack = ToolAndmaterialMgr.Instance.CreateItemInfoByName(UserExamStat.allToolAndMaterial); TooRoomMannger tooRoomMannger = FindAnyObjectByType<TooRoomMannger>();
List<ItemInfo> itemInPack = ToolAndmaterialMgr.Instance.CreateItemInfoByName(UserExamStat.allToolAndMaterial);
foreach (ItemInfo item in itemInPack) foreach (ItemInfo item in itemInPack)
{ {
for (int j = 0; j < UserExamStat.currentSceneTools.Count; j++)
{
if (item.toolName == UserExamStat.currentSceneTools[j].toolName)
{
item.selfPosInToolRoom = UserExamStat.currentSceneTools[j].selfPosInToolRoom;
UserExamStat.currentSceneTools.RemoveAt(j);
break;
}
}
PacksackBagMgr.Instance.AddOneToolOrMater(item); PacksackBagMgr.Instance.AddOneToolOrMater(item);
} }
if ( tooRoomMannger != null )tooRoomMannger.RemoveRepeat();
//恢复已穿戴的装备 //恢复已穿戴的装备
List<ItemInfo> itemWear = ToolAndmaterialMgr.Instance.CreateItemInfoByName(UserExamStat.allWear); List<ItemInfo> itemWear = ToolAndmaterialMgr.Instance.CreateItemInfoByName(UserExamStat.allWear);
TooRoomMannger tooRoomMannger = FindAnyObjectByType<TooRoomMannger>();
foreach (ItemInfo item in itemWear) foreach (ItemInfo item in itemWear)
{ {
PacksackBagMgr.Instance.WearItemState(item, true); PacksackBagMgr.Instance.WearItemState(item, true);
@ -206,8 +211,12 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
if (item.triggerName == ret.triggerName) if (item.triggerName == ret.triggerName)
{ {
item.gameObject.SetActive(true); item.gameObject.SetActive(true);
item.transform.localPosition = ret.selfPosInScene; if (item.gameObject.GetComponent<Tool_SelectComponent>() == null)//工具材料已经恢复过了
item.transform.localEulerAngles = ret.selfRotInScene; {
item.transform.localPosition = ret.selfPosInScene;
item.transform.localEulerAngles = ret.selfRotInScene;
item.LoadCurrentTriggerStat(ret.triggerInfo);
}
break; break;
} }
} }
@ -215,16 +224,20 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
//恢复记录的分数 //恢复记录的分数
ScoreBase scoreBase = FindFirstObjectByType<ScoreBase>(); ScoreBase scoreBase = FindFirstObjectByType<ScoreBase>();
Dictionary<int, ScoreSubjectStep> reconnectScore = scoreBase.GetStepScore(); if (scoreBase != null)
foreach (var item in UserExamStat.allSubScore)
{ {
if (reconnectScore.ContainsKey(item.index)) Dictionary<int, ScoreSubjectStep> reconnectScore = scoreBase.GetStepScore();
foreach (var item in UserExamStat.allSubScore)
{ {
reconnectScore[item.index].currentScore = item.currentScore; if (reconnectScore.ContainsKey(item.index))
reconnectScore[item.index].isDone = item.isDone; {
reconnectScore[item.index].currentScore = item.currentScore;
reconnectScore[item.index].isDone = item.isDone;
}
} }
scoreBase.setCurrentScore(UserExamStat.currentScore);
scoreBase.LoadSceneBufferList(UserExamStat.currentSceneOtherInfo);
} }
scoreBase.setCurrentScore(UserExamStat.currentScore);
}); });
} }
@ -271,10 +284,6 @@ public class ReconnectMgr : SingletonMono<ReconnectMgr>
{ {
RealtimeStatReader(); RealtimeStatReader();
RecoverScene(); RecoverScene();
/*ProcessManager.Instance.HandoverProcess(UserExamStat.processId, UserExamStat.subProcessId, UserExamStat.subProcessStepId);
StepStateControl.instance.InvokeInitStepState(GameManager.Instance.systemId, GameManager.ProcessMgr.d_Scheme.id, UserExamStat.subProcessId);
GameManager.EventMgr.EventTrigger<int>(Enum_EventType.SwitchSubProcess, UserExamStat.subProcessId);
GameManager.EventMgr.EventTrigger<string>(Enum_EventType.SwitchSubProcessStepTriggerID, ProcessManager.Instance.subProcessStepTriggerID);*/
} }
} }
} }

View File

@ -0,0 +1,23 @@
using DG.Tweening.Core.Easing;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 工单及工作票管理
/// </summary>
public class WorkorderMgr : BaseManager<WorkorderMgr>
{
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 4dc1eb05dbbcb814aa42d849d8c87bcd
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -3,6 +3,9 @@ using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using UnityEngine; using UnityEngine;
using UnityEngine.EventSystems; using UnityEngine.EventSystems;
using LitJson;
using Newtonsoft.Json;
using System.Reflection;
public class MobileController : PermanentTriggerBase public class MobileController : PermanentTriggerBase
{ {
@ -62,4 +65,23 @@ public class MobileController : PermanentTriggerBase
}); });
} }
} }
/// <summary>
/// 断线重连的状态保存与读取
/// </summary>
/// <param name="triggerInfo"></param>
public override void LoadCurrentTriggerStat(string triggerInfo)
{
if (triggerInfo != "")
{
this.downIndex = int.Parse(triggerInfo);
}
}
public override string SaveCurrentTriggerStat()
{
PropertyInfo[] properties = this.GetType().GetProperties();
return downIndex.ToString();
//throw new NotImplementedException();
}
} }

View File

@ -5,6 +5,7 @@ using HighlightPlus;
using UnityEngine.EventSystems; using UnityEngine.EventSystems;
using System; using System;
using Unity.VisualScripting; using Unity.VisualScripting;
using System.Reflection;
/// <summary> /// <summary>
/// ³£×¤½»»¥ /// ³£×¤½»»¥
@ -134,4 +135,16 @@ public class PermanentTriggerBase : MonoBehaviour
{ {
scoreAction?.Invoke(triggerName==null?this.triggerName:triggerName, para, systemcid, shchmeid); scoreAction?.Invoke(triggerName==null?this.triggerName:triggerName, para, systemcid, shchmeid);
} }
/// <summary>
/// 保存Trigger的自身具体信息,参考scoreBase
/// </summary>
public virtual string SaveCurrentTriggerStat() {
return "";
}
/// <summary>
/// 加载Trigger的自身具体信息,参考scoreBase
/// </summary>
public virtual void LoadCurrentTriggerStat(string triggerInfo) { }
} }

View File

@ -1,725 +0,0 @@
{
"systemID": 10002,
"schemeID": 1002,
"currentScore": 0.0,
"allSubScore": [
{
"index": 1,
"subProcessId": 1,
"currentScore": 0.0,
"isDone": false
},
{
"index": 2,
"subProcessId": 2,
"currentScore": 0.0,
"isDone": false
},
{
"index": 3,
"subProcessId": 3,
"currentScore": 0.0,
"isDone": false
},
{
"index": 4,
"subProcessId": 4,
"currentScore": 0.0,
"isDone": false
},
{
"index": 5,
"subProcessId": 5,
"currentScore": 0.0,
"isDone": true
},
{
"index": 6,
"subProcessId": 6,
"currentScore": 0.0,
"isDone": true
},
{
"index": 7,
"subProcessId": 7,
"currentScore": 5.0,
"isDone": true
},
{
"index": 8,
"subProcessId": 8,
"currentScore": 0.0,
"isDone": false
},
{
"index": 9,
"subProcessId": 9,
"currentScore": 0.0,
"isDone": false
},
{
"index": 10,
"subProcessId": 10,
"currentScore": 0.0,
"isDone": false
},
{
"index": 11,
"subProcessId": 11,
"currentScore": 0.0,
"isDone": false
},
{
"index": 12,
"subProcessId": 12,
"currentScore": 0.0,
"isDone": false
},
{
"index": 13,
"subProcessId": 13,
"currentScore": 0.0,
"isDone": false
},
{
"index": 14,
"subProcessId": 14,
"currentScore": 0.0,
"isDone": false
},
{
"index": 15,
"subProcessId": 15,
"currentScore": 0.0,
"isDone": false
},
{
"index": 16,
"subProcessId": 16,
"currentScore": 0.0,
"isDone": false
},
{
"index": 17,
"subProcessId": 17,
"currentScore": 0.0,
"isDone": false
},
{
"index": 18,
"subProcessId": 18,
"currentScore": 0.0,
"isDone": false
}
],
"allToolAndMaterial": [
"工作证"
],
"allWear": [],
"sceneName": "05_LiveScene",
"currentSceneTools": [],
"currentSceneTriggers": [
{
"triggerID": 0,
"triggerName": "空开1",
"selfPosInScene": {
"x": 0.0278625488,
"y": 0.08226776,
"z": -0.008735657
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 5023,
"triggerName": "电能表封印2",
"selfPosInScene": {
"x": 0.0612678528,
"y": 0.07292634,
"z": -0.109647989
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 180.0
}
},
{
"triggerID": 5023,
"triggerName": "电能表封印1",
"selfPosInScene": {
"x": -0.06092453,
"y": 0.07292634,
"z": -0.109647989
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 180.0
}
},
{
"triggerID": 5024,
"triggerName": "电能表盖子",
"selfPosInScene": {
"x": -0.000122070313,
"y": 0.0416763425,
"z": -0.09854126
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 180.0
}
},
{
"triggerID": 0,
"triggerName": "电能表铭牌",
"selfPosInScene": {
"x": -0.069568634,
"y": 0.07561189,
"z": -0.0215929747
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 180.0
}
},
{
"triggerID": 0,
"triggerName": "电能表拆装螺丝2",
"selfPosInScene": {
"x": -0.06473,
"y": 0.051071167,
"z": -0.10885
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "电能表拆装螺丝1",
"selfPosInScene": {
"x": 0.06592941,
"y": 0.051071167,
"z": -0.109404683
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 5025,
"triggerName": "电能表盖子固定螺丝2",
"selfPosInScene": {
"x": -0.06129074,
"y": -0.0140533447,
"z": -0.101232052
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 5025,
"triggerName": "电能表盖子固定螺丝1",
"selfPosInScene": {
"x": 0.0612869263,
"y": -0.0140533447,
"z": -0.101232052
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "零_地_螺丝up",
"selfPosInScene": {
"x": -0.0295066833,
"y": 0.0256958,
"z": -0.09305191
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "零_out_螺丝up",
"selfPosInScene": {
"x": -0.0381965637,
"y": 0.0222015381,
"z": -0.09305191
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "B_out_线",
"selfPosInScene": {
"x": 20.0205078,
"y": 142.292862,
"z": 21.0742188
},
"selfRotInScene": {
"x": 8.14222E-13,
"y": 2.035555E-13,
"z": 4.85314136E-20
}
},
{
"triggerID": 0,
"triggerName": "C_out_线",
"selfPosInScene": {
"x": 17.5166016,
"y": 142.292862,
"z": 21.0742188
},
"selfRotInScene": {
"x": 8.14222E-13,
"y": 2.035555E-13,
"z": 4.85314136E-20
}
},
{
"triggerID": 0,
"triggerName": "C_in_线",
"selfPosInScene": {
"x": 13.3569336,
"y": 131.0804,
"z": 22.4726563
},
"selfRotInScene": {
"x": 8.14222E-13,
"y": 2.035555E-13,
"z": 4.85314136E-20
}
},
{
"triggerID": 0,
"triggerName": "B_in_线",
"selfPosInScene": {
"x": 15.9238281,
"y": 131.0804,
"z": 22.4726563
},
"selfRotInScene": {
"x": 8.14222E-13,
"y": 2.035555E-13,
"z": 4.85314136E-20
}
},
{
"triggerID": 0,
"triggerName": "A_in_线",
"selfPosInScene": {
"x": 18.47998,
"y": 131.0804,
"z": 22.4726563
},
"selfRotInScene": {
"x": 8.14222E-13,
"y": 2.035555E-13,
"z": 4.85314136E-20
}
},
{
"triggerID": 0,
"triggerName": "零_out_线",
"selfPosInScene": {
"x": 16.4960938,
"y": 142.292862,
"z": 21.0742188
},
"selfRotInScene": {
"x": 8.14222E-13,
"y": 2.035555E-13,
"z": 4.85314136E-20
}
},
{
"triggerID": 0,
"triggerName": "B_out_螺丝up",
"selfPosInScene": {
"x": 0.006591797,
"y": 0.0256958,
"z": -0.09305191
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "C_out_螺丝up",
"selfPosInScene": {
"x": -0.0201148987,
"y": 0.0256958,
"z": -0.09305191
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 5021,
"triggerName": "插座",
"selfPosInScene": {
"x": -1.56,
"y": 2.29342651,
"z": -0.203244925
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 180.0
}
},
{
"triggerID": 0,
"triggerName": "B_in_螺丝down",
"selfPosInScene": {
"x": 0.0237312317,
"y": 0.0256958,
"z": -0.101950169
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "A_in_螺丝up",
"selfPosInScene": {
"x": 0.0501709,
"y": 0.0256958,
"z": -0.09305191
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 5018,
"triggerName": "NPC客户",
"selfPosInScene": {
"x": -170.37,
"y": 1.26,
"z": -57.03
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "A_out_线",
"selfPosInScene": {
"x": 22.70166,
"y": 142.292862,
"z": 21.0742188
},
"selfRotInScene": {
"x": 8.14222E-13,
"y": 2.035555E-13,
"z": 4.85314136E-20
}
},
{
"triggerID": 0,
"triggerName": "检查接线",
"selfPosInScene": {
"x": 0.14606,
"y": -0.15198,
"z": 0.40884
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "C_in_螺丝up",
"selfPosInScene": {
"x": -0.002609253,
"y": 0.0256958,
"z": -0.09305191
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "B_out_螺丝down",
"selfPosInScene": {
"x": 0.006591797,
"y": 0.0256958,
"z": -0.101950169
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "零_地_螺丝down",
"selfPosInScene": {
"x": -0.0295066833,
"y": 0.0256958,
"z": -0.101950169
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 5020,
"triggerName": "NPC负责人",
"selfPosInScene": {
"x": -170.376083,
"y": 1.26,
"z": -53.5962639
},
"selfRotInScene": {
"x": 0.0,
"y": 125.039986,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "C_out_螺丝down",
"selfPosInScene": {
"x": -0.0201148987,
"y": 0.0256958,
"z": -0.101950169
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "零_地_线",
"selfPosInScene": {
"x": -5.22167969,
"y": 140.3523,
"z": 18.2167969
},
"selfRotInScene": {
"x": 8.14222E-13,
"y": 2.035555E-13,
"z": 4.85314136E-20
}
},
{
"triggerID": 0,
"triggerName": "",
"selfPosInScene": {
"x": 0.146900177,
"y": -0.1265,
"z": 0.5191498
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 180.0
}
},
{
"triggerID": 0,
"triggerName": "零_out_螺丝down",
"selfPosInScene": {
"x": -0.0381965637,
"y": 0.0222015381,
"z": -0.101950169
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "B_in_螺丝up",
"selfPosInScene": {
"x": 0.0237312317,
"y": 0.0256958,
"z": -0.09305191
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 5021,
"triggerName": "空开2",
"selfPosInScene": {
"x": 0.0278625488,
"y": -0.06511688,
"z": -0.008735657
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "C_in_螺丝down",
"selfPosInScene": {
"x": -0.002609253,
"y": 0.0256958,
"z": -0.101950169
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "A_out_螺丝down",
"selfPosInScene": {
"x": 0.03305435,
"y": 0.0256958,
"z": -0.101950169
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "A_in_螺丝down",
"selfPosInScene": {
"x": 0.0501709,
"y": 0.0256958,
"z": -0.101950169
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "A_out_螺丝up",
"selfPosInScene": {
"x": 0.03305435,
"y": 0.0256958,
"z": -0.09305191
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 5022,
"triggerName": "柜门",
"selfPosInScene": {
"x": 0.492233276,
"y": -0.5744629,
"z": 0.47206974
},
"selfRotInScene": {
"x": 2.72990741E-35,
"y": 9.03968E-29,
"z": -1.73028438E-05
}
},
{
"triggerID": 0,
"triggerName": "in开关_螺丝3",
"selfPosInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "in开关_螺丝2",
"selfPosInScene": {
"x": 0.01717,
"y": -0.00067,
"z": 0.0
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
{
"triggerID": 0,
"triggerName": "in开关_螺丝1",
"selfPosInScene": {
"x": 0.03411,
"y": -0.00094,
"z": 0.0
},
"selfRotInScene": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
}

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 61f30bf5680ef6b4590e9fca4c15f30e
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant: