98 lines
3.9 KiB
C#
98 lines
3.9 KiB
C#
using HighlightPlus;
|
|
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
/// <summary>
|
|
/// create by adam
|
|
/// </summary>
|
|
public class OfficeManager : SingletonMono<OfficeManager>
|
|
{
|
|
|
|
/// <summary>
|
|
/// ÊÖ»ú
|
|
/// </summary>
|
|
public MobileController mobileController;
|
|
public MobileAttach10007_7002 mobileAttch10007;
|
|
private FirstPersonController firstPersonController;
|
|
private void Start()
|
|
{
|
|
firstPersonController = GameObject.FindGameObjectWithTag("Player").GetComponent<FirstPersonController>();
|
|
firstPersonController.gameObject.SetActive(false);
|
|
GameManager.EventMgr.AddEventListener(Enum_EventType.OfficeTimeLineOver, OfficeTimeLineOver);
|
|
GameManager.EventMgr.AddEventListener<bool>(Enum_EventType.PlayerCanMove, SwitchFirstPersonControllerMove);
|
|
GameManager.EventMgr.AddEventListener(Enum_EventType.InitializationUI, InitializationUI);
|
|
if (GameManager.RunModelMgr.ModeType == E_ModeType.Study)
|
|
{
|
|
GameManager.EventMgr.AddEventListener<int>(Enum_EventType.SwitchSubProcess, SwitchSubProcess);
|
|
}
|
|
}
|
|
|
|
public void SwitchFirstPersonControllerMove(bool isMove)
|
|
{
|
|
firstPersonController.playerCanMove = isMove;
|
|
}
|
|
|
|
private void SwitchSubProcess(int subProcess)
|
|
{
|
|
if (!GameManager.UIMgr.GetPanel<UI_TopTipPanel>())
|
|
{
|
|
GameManager.UIMgr.ShowPanel<UI_TopTipPanel>(E_UI_Layer.Mid, (panel) =>
|
|
{
|
|
panel.Init($"{GameManager.ProcessMgr.d_Scheme.CurrentProcess.processName}:<color=#00EEE6>{GameManager.ProcessMgr.d_Scheme.CurrentProcess.CurrentSubProcess.subProcessName}</color>", $"{GameManager.ProcessMgr.d_Scheme.CurrentProcess.CurrentSubProcess.tips}", false);
|
|
});
|
|
}
|
|
else
|
|
{
|
|
GameManager.UIMgr.GetPanel<UI_TopTipPanel>().Init($"{GameManager.ProcessMgr.d_Scheme.CurrentProcess.processName}:<color=#00EEE6>{GameManager.ProcessMgr.d_Scheme.CurrentProcess.CurrentSubProcess.subProcessName}</color>", $"{GameManager.ProcessMgr.d_Scheme.CurrentProcess.CurrentSubProcess.tips}", false);
|
|
}
|
|
}
|
|
|
|
|
|
private void OfficeTimeLineOver()
|
|
{
|
|
if (!GameManager.UIMgr.GetPanel<UI_MaskPanel>())
|
|
{
|
|
GameManager.UIMgr.ShowPanel<UI_MaskPanel>(E_UI_Layer.System, (panel) =>
|
|
{
|
|
panel.Init();
|
|
GameManager.EventMgr.EventTrigger(Enum_EventType.HideMask);
|
|
});
|
|
}
|
|
}
|
|
private void InitializationUI()
|
|
{
|
|
if (!GameManager.UIMgr.GetPanel<UI_TaskListPanel>())
|
|
{
|
|
GameManager.UIMgr.ShowPanel<UI_TaskListPanel>(E_UI_Layer.Bot, (panel) =>
|
|
{
|
|
panel.Init(GameManager.ProcessMgr.subProcessId);
|
|
});
|
|
}
|
|
if (GameManager.RunModelMgr.ModeType == E_ModeType.Study)
|
|
{
|
|
GameManager.EventMgr.EventTrigger<string>(Enum_EventType.SwitchSubProcessStepTriggerID, ProcessManager.Instance.subProcessStepTriggerID);
|
|
GameManager.EventMgr.EventTrigger(Enum_EventType.SwitchSubProcess, GameManager.ProcessMgr.subProcessId);
|
|
}
|
|
if (!GameManager.UIMgr.GetPanel<UI_MenuBar>())
|
|
{
|
|
GameManager.UIMgr.ShowPanel<UI_MenuBar>(E_UI_Layer.Mid, (panel) =>
|
|
{
|
|
panel.Init();
|
|
GameManager.EventMgr.EventTrigger(Enum_EventType.SwitchScene, GameManager.RunModelMgr.SceneType);
|
|
});
|
|
}
|
|
firstPersonController.gameObject.SetActive(true);
|
|
}
|
|
|
|
|
|
private void OnDestroy()
|
|
{
|
|
GameManager.EventMgr.RemoveEventListener(Enum_EventType.OfficeTimeLineOver, OfficeTimeLineOver);
|
|
GameManager.EventMgr.RemoveEventListener(Enum_EventType.InitializationUI, InitializationUI);
|
|
GameManager.EventMgr.RemoveEventListener<bool>(Enum_EventType.PlayerCanMove, SwitchFirstPersonControllerMove);
|
|
//GameManager.EventMgr.RemoveEventListener<int>(Enum_EventType.SwitchSubProcess, SwitchSubProcess);
|
|
}
|
|
|
|
}
|