Framework_YooAsset_HybridCLR/Assets/DemoGame/GameScript/Loader/Global.cs

39 lines
974 B
C#

using System;
using Cysharp.Threading.Tasks;
using UnityEngine;
using YooAsset;
namespace Unity.Loader
{
public class Global : MonoBehaviour
{
private InitializePackage _initializePackage;
[SerializeField] EPlayMode playMode;
[SerializeField] private string packageName = "DefaultPackage";
private void Awake()
{
DontDestroyOnLoad(this.gameObject);
}
private void Start()
{
this._initializePackage = new InitializePackage(playMode, this.packageName, FinishCallback);
}
private void FinishCallback()
{
// yoo init finish
Debug.Log($"yoo init finish {DateTime.Now}");
this.LoadDlls().Forget();
}
private async UniTask LoadDlls()
{
Loader loader = new Loader();
await loader.DownloadAsync();
loader.OnStart(gameObject, this.playMode);
}
}
}