private void LoadMultiPrefab() { if (Plugin.MultiGameObject == null) { Plugin.Log("Multi Game object is null"); return; } _avatarInstance = Instantiate(Plugin.MultiGameObject, gameObject.transform); if (Plugin.fpsAvatar) { _fpsAvatarInstance = Instantiate(Plugin.MultiGameObject, gameObject.transform); } SetupAvatar(); UnloadAvatar(); _bundleRequest = null; if (OnAvatarLoaded != null) { OnAvatarLoaded.Invoke(); } }
private void AvatarLoaded(AsyncOperation op) { _customAvatar = _bundleRequest.assetBundle; if (_customAvatar == null) { Plugin.Log("The bundle file is wrong"); UnloadAvatar(); Destroy(gameObject); return; } GameObject avatarObject = _customAvatar.LoadAsset <GameObject>("_customavatar"); if (avatarObject == null) { Plugin.Log("The bundle gameobject was not found"); UnloadAvatar(); Destroy(gameObject); return; } _avatarInstance = Instantiate(avatarObject, gameObject.transform); if (Plugin.fpsAvatar) { _fpsAvatarInstance = Instantiate(avatarObject, gameObject.transform); } SetupAvatar(); UnloadAvatar(); _bundleRequest = null; if (OnAvatarLoaded != null) { OnAvatarLoaded.Invoke(); } }