45 lines
1.5 KiB
C#
45 lines
1.5 KiB
C#
using Cysharp.Threading.Tasks;
|
|
using AlicizaX.Resource.Runtime;
|
|
using AlicizaX.Fsm.Runtime;
|
|
using AlicizaX.Procedure.Runtime;
|
|
using AlicizaX.Runtime;
|
|
using YooAsset;
|
|
|
|
namespace Unity.Startup.Procedure
|
|
{
|
|
internal sealed class ProcedurePatchInit : ProcedureBase
|
|
{
|
|
protected override async void OnEnter(IFsm<IProcedureManager> procedureOwner)
|
|
{
|
|
base.OnEnter(procedureOwner);
|
|
if (GameApp.Resource.GamePlayMode == EPlayMode.EditorSimulateMode)
|
|
{
|
|
await GameApp.Resource.InitPackageAsync();
|
|
ChangeState<ProcedureUpdateStaticVersion>(procedureOwner);
|
|
return;
|
|
}
|
|
|
|
if (GameApp.Resource.GamePlayMode == EPlayMode.OfflinePlayMode)
|
|
{
|
|
Log.Info("当前为离线模式,直接启动 ProcedureUpdateStaticVersion");
|
|
await GameApp.Resource.InitPackageAsync();
|
|
ChangeState<ProcedureUpdateStaticVersion>(procedureOwner);
|
|
return;
|
|
}
|
|
|
|
Start(procedureOwner);
|
|
}
|
|
|
|
async void Start(IFsm<IProcedureManager> procedureOwner)
|
|
{
|
|
string bundleUrl = GlobalSetting.PatchData.BundleUrl;
|
|
Log.Info("下载资源的路径:" + bundleUrl);
|
|
|
|
await GameApp.Resource.InitPackageAsync(string.Empty, bundleUrl, bundleUrl, true);
|
|
await UniTask.DelayFrame();
|
|
|
|
ChangeState<ProcedureUpdateStaticVersion>(procedureOwner);
|
|
}
|
|
}
|
|
}
|