mirror of
https://github.com/tym1116/BH3.git
synced 2025-12-16 16:34:41 +01:00
78 lines
1.5 KiB
C#
78 lines
1.5 KiB
C#
using UnityEngine;
|
|
using UnityEngine.SceneManagement;
|
|
|
|
namespace CinemaDirector
|
|
{
|
|
[CutsceneItem("Utility", "Load Level", new CutsceneItemGenre[] { CutsceneItemGenre.GlobalItem })]
|
|
public class LoadLevelEvent : CinemaGlobalEvent
|
|
{
|
|
public enum LoadLevelArgument
|
|
{
|
|
ByIndex = 0,
|
|
ByName = 1
|
|
}
|
|
|
|
public enum LoadLevelType
|
|
{
|
|
Standard = 0,
|
|
Additive = 1,
|
|
Async = 2,
|
|
AdditiveAsync = 3
|
|
}
|
|
|
|
public LoadLevelArgument Argument;
|
|
|
|
public LoadLevelType Type;
|
|
|
|
public int Level;
|
|
|
|
public string LevelName;
|
|
|
|
public override void Trigger()
|
|
{
|
|
if (!Application.isPlaying)
|
|
{
|
|
return;
|
|
}
|
|
if (Argument == LoadLevelArgument.ByIndex)
|
|
{
|
|
if (Type == LoadLevelType.Standard)
|
|
{
|
|
SceneManager.LoadScene(Level);
|
|
}
|
|
else if (Type == LoadLevelType.Additive)
|
|
{
|
|
SceneManager.LoadScene(Level);
|
|
}
|
|
else if (Type == LoadLevelType.Async)
|
|
{
|
|
SceneManager.LoadSceneAsync(Level);
|
|
}
|
|
else if (Type == LoadLevelType.AdditiveAsync)
|
|
{
|
|
SceneManager.LoadSceneAsync(Level);
|
|
}
|
|
}
|
|
else if (Argument == LoadLevelArgument.ByName)
|
|
{
|
|
if (Type == LoadLevelType.Standard)
|
|
{
|
|
SceneManager.LoadScene(LevelName);
|
|
}
|
|
else if (Type == LoadLevelType.Additive)
|
|
{
|
|
SceneManager.LoadScene(LevelName);
|
|
}
|
|
else if (Type == LoadLevelType.Async)
|
|
{
|
|
SceneManager.LoadSceneAsync(LevelName);
|
|
}
|
|
else if (Type == LoadLevelType.AdditiveAsync)
|
|
{
|
|
SceneManager.LoadSceneAsync(LevelName);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|