添加步骤完成提示,修复封印提示问题

This commit is contained in:
YangHua 2024-08-29 17:54:36 +08:00
parent 7ae873e658
commit 8cc5f369f5
14 changed files with 95 additions and 59 deletions

Binary file not shown.

View File

@ -11,9 +11,10 @@ public class Check_JieXian : PermanentTriggerBase
/// 是否已检查接线完好 /// 是否已检查接线完好
/// </summary> /// </summary>
public bool isChecked; public bool isChecked;
private void OnMouseDown() protected override void OnMDown()
{ {
if (SiteManager.instance.measuringCabinet.jieXian_lines.TrueForAll(a=>a.isConnected) && SiteManager.instance.measuringCabinet.meteringDevice.jieXian_screws.TrueForAll(a=>a.isInstall)) base.OnMDown();
if (SiteManager.instance.measuringCabinet.jieXian_lines.TrueForAll(a => a.isConnected) && SiteManager.instance.measuringCabinet.meteringDevice.jieXian_screws.TrueForAll(a => a.isInstall))
{ {
Invoke("Check", 1); Invoke("Check", 1);
} }
@ -24,19 +25,23 @@ public class Check_JieXian : PermanentTriggerBase
/// </summary> /// </summary>
public void Check() public void Check()
{ {
Debug.Log("½ÓÏßÍêºÃ"); if (GameManager.ProcessMgr?.IsRightSubProcessStepsTriggerID(triggerName, true) == 0)
isChecked = true;
GetComponent<BoxCollider>().enabled = false;
if (GameManager.UIMgr != null)
{ {
GameObject tip2 = Instantiate<GameObject>(Resources.Load<GameObject>("UI/UI_Tip/TipPanel"),GameManager.UIMgr.canvas.transform);
TipPanel tipPanel = tip2.GetComponent<TipPanel>(); Debug.Log("½ÓÏßÍêºÃ");
tipPanel.Init("½ÓÏßÍêºÃ£¡"); isChecked = true;
GetComponent<BoxCollider>().enabled = false;
if (GameManager.UIMgr != null)
{
GameObject tip2 = Instantiate<GameObject>(Resources.Load<GameObject>("UI/UI_Tip/TipPanel"), GameManager.UIMgr.canvas.transform);
TipPanel tipPanel = tip2.GetComponent<TipPanel>();
tipPanel.Init("½ÓÏßÍêºÃ£¡");
}
//GameManager.ProcessMgr?.IsRightSubProcessStepsTriggerID(triggerName, true);
base.CallScoreAction(true);
} }
GameManager.ProcessMgr?.IsRightSubProcessStepsTriggerID(triggerName, true);
base.CallScoreAction(true);
} }
} }

View File

@ -23,17 +23,23 @@ public class Tool_BoxSeal : Tool_Base
//ÂÝ˿šÉÏÁ˾Ͱ²×°·âÓ¡ //ÂÝ˿šÉÏÁ˾Ͱ²×°·âÓ¡
if (screw == SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_screw_Left && SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_screw_Left.isInstall) if (screw == SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_screw_Left && SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_screw_Left.isInstall)
{ {
//盖子左封印 if ((triggerAction == null ? 0 : triggerAction.Invoke(screw.triggerName, true)) == 0)
SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Left.Install(); {
//打分 //盖子左封印
SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Left.CallScoreAction(true); SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Left.Install();
//打分
SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Left.CallScoreAction(true);
}
} }
else if (screw == SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_screw_Right && SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_screw_Right.isInstall) else if (screw == SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_screw_Right && SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_screw_Right.isInstall)
{ {
//盖子右封印 if ((triggerAction == null ? 0 : triggerAction.Invoke(screw.triggerName, true)) == 0)
SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Right.Install(); {
//打分 //盖子右封印
SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Right.CallScoreAction(true); SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Right.Install();
//打分
SiteManager.instance.measuringCabinet.meteringDevice.cover.cover_seal_Right.CallScoreAction(true);
}
} }
} }
} }

View File

@ -70,7 +70,7 @@ public class Tool_TestPen : Tool_Base
/// <param name="device_base">被验电设备</param> /// <param name="device_base">被验电设备</param>
public void Test(Device_Base device_base) public void Test(Device_Base device_base)
{ {
if ((triggerAction == null ? 0 : triggerAction.Invoke($"{triggerName}+{device_base.triggerName}", true)) == 0) if ((triggerAction == null ? 0 : triggerAction.Invoke($"{triggerName}+{device_base.triggerName}", false)) == 0)
{ {
if (device_base.deviceType == DeviceType._插座) if (device_base.deviceType == DeviceType._插座)
{ {
@ -83,6 +83,7 @@ public class Tool_TestPen : Tool_Base
Debug.Log("计量柜_插座 已验电"); Debug.Log("计量柜_插座 已验电");
isFlicker = tmp.hasElectricity; isFlicker = tmp.hasElectricity;
screem.materials[0].color = isFlicker ? Color.red : Color.white; screem.materials[0].color = isFlicker ? Color.red : Color.white;
int index = (triggerAction == null ? 0 : triggerAction.Invoke($"{triggerName}+{device_base.triggerName}", true));
base.CallScoreAction(null, $"{triggerName}+{device_base.triggerName}"); base.CallScoreAction(null, $"{triggerName}+{device_base.triggerName}");
}); });
} }
@ -98,6 +99,7 @@ public class Tool_TestPen : Tool_Base
Debug.Log("计量柜_柜门 已验电"); Debug.Log("计量柜_柜门 已验电");
isFlicker = tmp.hasElectricity; isFlicker = tmp.hasElectricity;
screem.materials[0].color = isFlicker ? Color.red : Color.white; screem.materials[0].color = isFlicker ? Color.red : Color.white;
int index = (triggerAction == null ? 0 : triggerAction.Invoke($"{triggerName}+{device_base.triggerName}", true));
base.CallScoreAction(null, $"{triggerName}+{device_base.triggerName}"); base.CallScoreAction(null, $"{triggerName}+{device_base.triggerName}");
}); });
} }

View File

@ -52,8 +52,8 @@ public class Tool_WireStripper : Tool_Base
//¼ô¶Ï //¼ô¶Ï
device_Seal.Cut(); device_Seal.Cut();
isCuning = false; isCuning = false;
//int result = (triggerAction == null ? 0 : triggerAction.Invoke(triggerName, true));
ReBackHead(); ReBackHead();
int result = (triggerAction == null ? 0 : triggerAction.Invoke(device_Seal.triggerName, true));
} }
private void Update() private void Update()
@ -68,7 +68,7 @@ public class Tool_WireStripper : Tool_Base
Device_Seal ds = hit.transform.GetComponent<Device_Seal>(); Device_Seal ds = hit.transform.GetComponent<Device_Seal>();
if (ds != null) if (ds != null)
{ {
if ((triggerAction == null ? 0 : triggerAction.Invoke(ds.triggerName, true))== 0) if ((triggerAction == null ? 0 : triggerAction.Invoke(ds.triggerName, false))== 0)
{ {
CutOpen(ds); CutOpen(ds);
} }

View File

@ -90,7 +90,7 @@ public class D_Process : I_Enter, I_Exit
CurrentSubProcess.Exit(); CurrentSubProcess.Exit();
CurrentSubProcess = GetSubProcess(subProcessId); CurrentSubProcess = GetSubProcess(subProcessId);
CurrentSubProcess.Enter(); CurrentSubProcess.Enter();
UnityEngine.Debug.Log("切换子流程到:" + subProcessId); //UnityEngine.Debug.Log("切换子流程到:" + subProcessId);
if (subProcessStepId == 0) if (subProcessStepId == 0)
CurrentSubProcess.HandoverSubProcessStep(CurrentSubProcess.subProcessStepes[0].id); CurrentSubProcess.HandoverSubProcessStep(CurrentSubProcess.subProcessStepes[0].id);
else else
@ -127,7 +127,7 @@ public class D_Process : I_Enter, I_Exit
/// </summary> /// </summary>
public void Enter() public void Enter()
{ {
UnityEngine.Debug.Log("进入当前流程:" + id + "_" + processName); //UnityEngine.Debug.Log("进入当前流程:" + id + "_" + processName);
} }
/// <summary> /// <summary>
@ -135,6 +135,6 @@ public class D_Process : I_Enter, I_Exit
/// </summary> /// </summary>
public void Exit() public void Exit()
{ {
UnityEngine.Debug.Log("退出当前流程:" + id + "_" + processName); //UnityEngine.Debug.Log("退出当前流程:" + id + "_" + processName);
} }
} }

View File

@ -83,7 +83,7 @@ public class D_Scheme
CurrentProcess.Exit(); CurrentProcess.Exit();
CurrentProcess = GetProcess(processId); CurrentProcess = GetProcess(processId);
CurrentProcess.Enter(); CurrentProcess.Enter();
UnityEngine.Debug.Log("切换流程到:" + processId); //UnityEngine.Debug.Log("切换流程到:" + processId);
if (subProcessId == 0) if (subProcessId == 0)
CurrentProcess.HandoverSubProcess(CurrentProcess.subProcesses[0].id, subProcessStepId); CurrentProcess.HandoverSubProcess(CurrentProcess.subProcesses[0].id, subProcessStepId);
else else

View File

@ -108,8 +108,8 @@ public class D_SubProcess : I_Enter, I_Exit
CurrentSubProcessStep.Exit(); CurrentSubProcessStep.Exit();
CurrentSubProcessStep = GetSubProcessStep(stepId); CurrentSubProcessStep = GetSubProcessStep(stepId);
CurrentSubProcessStep.Enter(); CurrentSubProcessStep.Enter();
UnityEngine.Debug.Log("切换子流程步骤到:" + stepId); //UnityEngine.Debug.Log("切换子流程步骤到:" + stepId);
UnityEngine.Debug.Log("切换子流程步骤TriggerID到:" + ProcessManager.Instance.subProcessStepTriggerID); //UnityEngine.Debug.Log("切换子流程步骤TriggerID到:" + ProcessManager.Instance.subProcessStepTriggerID);
} }
/// <summary> /// <summary>
@ -135,7 +135,7 @@ public class D_SubProcess : I_Enter, I_Exit
/// </summary> /// </summary>
public void Exit() public void Exit()
{ {
UnityEngine.Debug.Log("退出当前子流程:" + id + "_" + subProcessName); //UnityEngine.Debug.Log("退出当前子流程:" + id + "_" + subProcessName);
} }
/// <summary> /// <summary>
@ -143,6 +143,6 @@ public class D_SubProcess : I_Enter, I_Exit
/// </summary> /// </summary>
public void Enter() public void Enter()
{ {
UnityEngine.Debug.Log("进入当前子流程:" + id + "_" + subProcessName); //UnityEngine.Debug.Log("进入当前子流程:" + id + "_" + subProcessName);
} }
} }

View File

@ -66,7 +66,7 @@ public class D_SubProcessStep : I_Enter, I_Exit
public void Enter() public void Enter()
{ {
//GetTriggerID(); //GetTriggerID();
UnityEngine.Debug.Log("进入当前子流程步骤:" + id + "_" + subProcessStepName); //UnityEngine.Debug.Log("进入当前子流程步骤:" + id + "_" + subProcessStepName);
} }
/// <summary> /// <summary>
/// 退出 /// 退出
@ -75,6 +75,6 @@ public class D_SubProcessStep : I_Enter, I_Exit
{ {
//triggersId.Clear(); //triggersId.Clear();
//triggersComplete.Clear(); //triggersComplete.Clear();
UnityEngine.Debug.Log("退出当前子流程步骤:" + id + "_" + subProcessStepName); //UnityEngine.Debug.Log("退出当前子流程步骤:" + id + "_" + subProcessStepName);
} }
} }

View File

@ -137,7 +137,7 @@ public class ProcessManager : BaseManager<ProcessManager>
{ {
HandoverSubProcess(spID, 0); HandoverSubProcess(spID, 0);
GameManager.EventMgr.EventTrigger<int>(Enum_EventType.SwitchSubProcess, d_Scheme.CurrentProcess.CurrentSubProcessId); GameManager.EventMgr.EventTrigger<int>(Enum_EventType.SwitchSubProcess, d_Scheme.CurrentProcess.CurrentSubProcessId);
//Debug.Log($"<color=red>进入下一步子流程</color>");
//Debug.Log("进入下一步子流程"); //Debug.Log("进入下一步子流程");
return true; return true;
} }
@ -188,33 +188,28 @@ public class ProcessManager : BaseManager<ProcessManager>
if (triggerID == currentSubProcessStepTriggerID) if (triggerID == currentSubProcessStepTriggerID)
{ {
if (isRemove) if (isRemove)
{
d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersName.RemoveAt(0); d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersName.RemoveAt(0);
}
if (d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersName.Count == 0) if (d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersName.Count == 0)
{ {
Debug.Log($"<color=red>当前步骤做完了</color>"); if (triggerID != "工具间按钮" && triggerID != "现场按钮" && triggerID != "收回工具")
GameManager.UIMgr.ShowPanel<UI_MessagePanel>(E_UI_Layer.System, (p) =>
{ {
p.Init("提示", "当前步骤已完成,即将进入下一步", E_MessageType.Normal, () => GameManager.UIMgr.ShowPanel<UI_MessagePanel>(E_UI_Layer.System, (p) =>
{ {
CheckSubProcessSteps(subProcessStepId); p.Init("提示", "当前步骤已完成,即将进入下一步", E_MessageType.Normal, () =>
if (d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersName.Count != 0)
{ {
string triggerNameTemp = d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersName[0]; CheckSubProcessSteps(subProcessStepId);
string splitResult = ""; CurrentSubProcessStepTriggerNames();
if (triggerNameTemp.Contains("+")) });
{
splitResult = triggerNameTemp.Split('+')[1];
}
else
{
splitResult = triggerNameTemp;
}
subProcessStepTriggerID = splitResult;
GameManager.EventMgr.EventTrigger<string>(Enum_EventType.SwitchSubProcessStepTriggerID, splitResult);
}
}); });
}); }
else
{
CheckSubProcessSteps(subProcessStepId);
}
} }
CurrentSubProcessStepTriggerNames();
return 0; return 0;
} }
else else
@ -236,6 +231,31 @@ public class ProcessManager : BaseManager<ProcessManager>
} }
} }
/// <summary>
/// 切换流程之后, 当前子流程步骤triggerName不等于0的时候操作
/// </summary>
private void CurrentSubProcessStepTriggerNames()
{
if (d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersName.Count != 0)
{
string triggerNameTemp = d_Scheme.CurrentProcess.CurrentSubProcess.CurrentSubProcessStep.triggersName[0];
string splitResult = "";
if (triggerNameTemp.Contains("+"))
{
splitResult = triggerNameTemp.Split('+')[1];
}
else
{
splitResult = triggerNameTemp;
}
subProcessStepTriggerID = splitResult;
GameManager.EventMgr.EventTrigger<string>(Enum_EventType.SwitchSubProcessStepTriggerID, splitResult);
}
}
/// <summary>
/// 操作错子流程步骤的triggerName的错误提示
/// </summary>
private void StepErrorTips() private void StepErrorTips()
{ {
if (GameManager.UIMgr.GetPanel<UI_MiddleTipPanel>()) if (GameManager.UIMgr.GetPanel<UI_MiddleTipPanel>())

View File

@ -31,7 +31,6 @@ public class ImageTips : MonoBehaviour
{ {
if (tween != null) if (tween != null)
tween.Kill(true); tween.Kill(true);
//image.DOKill();
transform.parent = null; transform.parent = null;
gameObject.SetActive(false); gameObject.SetActive(false);
} }

View File

@ -34,15 +34,16 @@ public class MobileController : PermanentTriggerBase
} }
} }
private void PlayerTalk(string triggerID) private void PlayerTalk(string triggerName)
{ {
if (GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(triggerID, true) == 0) if (GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(triggerName, false) == 0)
{ {
GameManager.UIMgr.ShowPanel<UI_CustomSessionPanel>(E_UI_Layer.Mid, (panel) => GameManager.UIMgr.ShowPanel<UI_CustomSessionPanel>(E_UI_Layer.Mid, (panel) =>
{ {
panel.Init(triggerID, "ºÃµÄ", (intTemp) => panel.Init(triggerName, "ºÃµÄ", (intTemp) =>
{ {
ScoreManager.instance.Check(triggerName, "工作预约完成"); ScoreManager.instance.Check(triggerName, "工作预约完成");
GameManager.ProcessMgr.IsRightSubProcessStepsTriggerID(triggerName, true);
GameManager.UIMgr.HidePanel<UI_CustomSessionPanel>(); GameManager.UIMgr.HidePanel<UI_CustomSessionPanel>();
}); });
}); });

View File

@ -45,7 +45,10 @@ public class UI_CheckMyselfPanel : BasePanel
private void OnWearState() private void OnWearState()
{ {
if (PacksackBagMgr.Instance.IsWeared(validToolNames)) if (PacksackBagMgr.Instance.IsWeared(validToolNames))
{
GameManager.UIMgr.imageTips.HideTips();
GameManager.UIMgr.HidePanel<UI_CheckMyselfPanel>(); GameManager.UIMgr.HidePanel<UI_CheckMyselfPanel>();
}
} }
protected override void OnClick(string btnName) protected override void OnClick(string btnName)