91 lines
2.5 KiB
C#
91 lines
2.5 KiB
C#
using System;
|
||
using System.Collections;
|
||
using System.Collections.Generic;
|
||
using Exoa.TutorialEngine;
|
||
using UnityEngine;
|
||
using UnityEngine.Playables;
|
||
|
||
public class GameTutorialManger : MonoBehaviour
|
||
{
|
||
public CanvasGroup BlockPanel;
|
||
private void Start()
|
||
{
|
||
TutorialLoader.instance.Load("MainScene");
|
||
StartCoroutine(LoadBlockPanel());
|
||
|
||
TutorialEvents.OnTutorialProgress += (step, steps) =>
|
||
{
|
||
switch (step)
|
||
{
|
||
case 1:
|
||
{
|
||
SceneTransitionManager.Instance.CurrentTrackingPointIndex = 2; break;
|
||
}
|
||
case 3:
|
||
{
|
||
SceneTransitionManager.Instance.CurrentTrackingPointIndex = 2;
|
||
//SceneTransitionManager.Instance.TriggerShenPu();
|
||
//SceneTransitionManager.Instance.ShenPuStyle = SceneTransitionManager.Instance.InShenPu;
|
||
|
||
break;
|
||
}
|
||
case 15:
|
||
{
|
||
SceneTransitionManager.Instance.CurrentTrackingPointIndex = 1; break;
|
||
}
|
||
case 16:
|
||
{
|
||
SceneTransitionManager.Instance.CurrentTrackingPointIndex = 1; break;
|
||
}
|
||
case 20:
|
||
{
|
||
SceneTransitionManager.Instance.CurrentTrackingPointIndex = 3;
|
||
break;
|
||
}
|
||
case 27:
|
||
{
|
||
SceneTransitionManager.Instance.CurrentTrackingPointIndex = 3;
|
||
|
||
break;
|
||
}
|
||
case 29:
|
||
{
|
||
SceneTransitionManager.Instance.CurrentTrackingPointIndex = 2;
|
||
//启动Timeline后,触发强制白天
|
||
GameProcedureManager.Instance.PlayTimelineAndInvoke();
|
||
|
||
break;
|
||
}
|
||
|
||
}
|
||
};
|
||
}
|
||
|
||
private void Update()
|
||
{
|
||
if (Input.GetKey(KeyCode.P))
|
||
{
|
||
TutorialController.instance.ForceNext();
|
||
}
|
||
}
|
||
|
||
private IEnumerator LoadBlockPanel()
|
||
{
|
||
float startAlpha = BlockPanel.alpha;
|
||
float elapsed = 0f;
|
||
|
||
while (elapsed < 10)
|
||
{
|
||
elapsed += Time.deltaTime;
|
||
BlockPanel.alpha = Mathf.Lerp(startAlpha, 0, elapsed / 10);
|
||
yield return null;
|
||
}
|
||
|
||
BlockPanel.alpha = 0; // 确保完全隐藏
|
||
BlockPanel.interactable = false;
|
||
BlockPanel.blocksRaycasts = false; // 禁用交互
|
||
}
|
||
|
||
|
||
}
|