139 lines
4.2 KiB
C#
139 lines
4.2 KiB
C#
using System;
|
|
using System.Collections;
|
|
using AibisDream.Framework;
|
|
using UnityEngine;
|
|
using Yarn.Unity;
|
|
|
|
namespace AibisDream
|
|
{
|
|
public static class BaseYarnCommand
|
|
{
|
|
#region 命令名
|
|
|
|
[YarnCommand("NextYarn")]
|
|
public static void NextYarn()
|
|
{
|
|
EnumEventSystem.Global.Send(EventEnum.NextYarn);
|
|
StorageSystem.Instance.ClearLocal();
|
|
DialogController.Instance.StartCoroutine(GameManager.Instance.NextSceneSo());
|
|
}
|
|
|
|
[YarnCommand("OpenEndMenu")]
|
|
public static void OpenEndMenu()
|
|
{
|
|
UIManager.Instance.ShowPanel<EndPanel>();
|
|
}
|
|
|
|
[Obsolete]
|
|
[YarnCommand("switch_tv")]
|
|
public static void SwitchTV(string picName)
|
|
{
|
|
Debug.Log("switch_tv 已废弃");
|
|
}
|
|
|
|
[Obsolete]
|
|
[YarnCommand("show_tv_scene")]
|
|
public static void ShowTVScene(float duration)
|
|
{
|
|
Debug.Log("show_tv_scene 已废弃");
|
|
}
|
|
|
|
[YarnCommand("load_scene")]
|
|
public static IEnumerator LoadScene(string sceneName, float duration = 1)
|
|
{
|
|
HideDialog();
|
|
yield return SceneLoader.Instance.LoadSceneAsync(sceneName);
|
|
}
|
|
|
|
[YarnCommand("unload_scene")]
|
|
public static IEnumerator UnloadScene(string sceneName)
|
|
{
|
|
yield return SceneLoader.Instance.UnloadSceneAsync();
|
|
}
|
|
|
|
[YarnCommand("hide_dialog")]
|
|
public static void HideDialog()
|
|
{
|
|
DialogCanvasManager.Instance.HideDialog();
|
|
}
|
|
|
|
[YarnCommand("fade_in")]
|
|
public static IEnumerator FadeIn(float duration = 1)
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
return panel.FadeInAsync(duration);
|
|
}
|
|
|
|
[YarnCommand("fade_out")]
|
|
public static IEnumerator FadeOut(float duration = 1)
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
return panel.FadeOutAsync(duration);
|
|
}
|
|
|
|
[YarnCommand("fade_in_sync")]
|
|
public static void FadeInSync(float duration = 1)
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
panel.FadeInSync(duration);
|
|
}
|
|
|
|
[YarnCommand("fade_out_sync")]
|
|
public static void FadeOutSync(float duration = 1)
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
panel.FadeOutSync(duration);
|
|
}
|
|
|
|
[YarnCommand("show_obj")]
|
|
public static IEnumerator ShowObj(string picName)
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
return panel.ShowObj(picName);
|
|
}
|
|
|
|
[YarnCommand("hide_obj")]
|
|
public static IEnumerator HideObj()
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
return panel.HideObj();
|
|
}
|
|
|
|
[YarnCommand("show_full_screen")]
|
|
public static IEnumerator ShowFullScreen(string picName)
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
return panel.ShowFullScreen(picName);
|
|
}
|
|
|
|
[YarnCommand("hide_full_screen")]
|
|
public static IEnumerator HideFullScreen()
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
return panel.HideFullScreen();
|
|
}
|
|
|
|
[YarnCommand("open_progress_window")]
|
|
public static IEnumerator OpenProgressWindow(string title, string description, float duration)
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
return panel.OpenProgressWindow(title, description, duration);
|
|
}
|
|
|
|
[YarnCommand("flash_red")]
|
|
public static IEnumerator FlashRed(float duration = 0.2f)
|
|
{
|
|
var panel = UIManager.Instance.GetPanel<PlayToolPanel>();
|
|
return panel.FlashRed(duration);
|
|
}
|
|
|
|
[YarnCommand("switch_dialog_viewer")]
|
|
public static void SwitchDialogViewer(string viewerTypeStr)
|
|
{
|
|
var viewType = Enum.Parse<DialogViewType>(viewerTypeStr);
|
|
DialogCanvasManager.Instance.SwitchDialogView(viewType);
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
} |