This commit is contained in:
CortexCore
2024-03-31 23:31:00 +08:00
parent e179d2eb53
commit b7b89ee71a
641 changed files with 31286 additions and 22134 deletions

View File

@@ -0,0 +1,48 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using YooAsset;
namespace BITKit.IO
{
public class YooAssetUtils
{
[RuntimeInitializeOnLoadMethod]
private static void Reload()
{
OnPackageRegistered = null;
OnPackageUnregistered = null;
_registeredPackages.Clear();
_registeredResourcePackages.Clear();
}
public static event Action<string> OnPackageRegistered;
public static event Action<string> OnPackageUnregistered;
public static IEnumerable<string> RegisteredPackages => _registeredPackages.ToArray();
public static IEnumerable<ResourcePackage> RegisteredResourcePackages => _registeredResourcePackages.ToArray();
private static readonly List<ResourcePackage> _registeredResourcePackages = new();
private static readonly List<string> _registeredPackages = new();
public static void RegisterPackage(string packageName)
{
if (_registeredPackages.Contains(packageName))
{
return;
}
_registeredPackages.Add(packageName);
OnPackageRegistered?.Invoke(packageName);
}
public static void UnregisterPackage(string packageName)
{
if (!_registeredPackages.Contains(packageName))
{
return;
}
_registeredPackages.Remove(packageName);
OnPackageUnregistered?.Invoke(packageName);
}
public static void RegisterResourcePackage(ResourcePackage package)=>_registeredResourcePackages.Add(package);
public static void UnregisterResourcePackage(ResourcePackage package)=>_registeredResourcePackages.Remove(package);
}
}