LocalBundle.cs 769 B

1234567891011121314151617181920212223242526272829
  1. using UnityEngine;
  2. namespace VEngine
  3. {
  4. internal class LocalBundle : Bundle
  5. {
  6. private AssetBundleCreateRequest request;
  7. protected override void OnLoad()
  8. {
  9. var encrpytData = EncryptHelper.GetDecryptData(pathOrURL, EncryptHelper.resKeyChars);
  10. request = AssetBundle.LoadFromMemoryAsync(encrpytData);
  11. }
  12. public override void LoadImmediate()
  13. {
  14. if (isDone) return;
  15. OnLoaded(request.assetBundle);
  16. request = null;
  17. }
  18. protected override void OnUpdate()
  19. {
  20. if (status != LoadableStatus.Loading) return;
  21. progress = request.progress;
  22. if (request.isDone) OnLoaded(request.assetBundle);
  23. }
  24. }
  25. }