From 3f2cd27c5dfb3b450245bf1a37fc1b3414031c7c Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期三, 11 二月 2026 11:03:58 +0800
Subject: [PATCH] 小游戏适配 资源系统改造
---
Main/System/Sound/SoundPlayer.cs | 29 +++++++++++++++++++++++++++++
1 files changed, 29 insertions(+), 0 deletions(-)
diff --git a/Main/System/Sound/SoundPlayer.cs b/Main/System/Sound/SoundPlayer.cs
index 25c8175..5d7c388 100644
--- a/Main/System/Sound/SoundPlayer.cs
+++ b/Main/System/Sound/SoundPlayer.cs
@@ -92,6 +92,22 @@
Debug.Log("CreateSoundPlayer");
}
+ public static async UniTask CreateSoundPlayerAsync()
+ {
+ if (m_Instance != null)
+ {
+ return;
+ }
+
+ var prefab = await BuiltInLoader.LoadPrefabAsync("SoundPlayer");
+ var gameObject = GameObject.Instantiate(prefab);
+ m_Instance = gameObject.GetComponent<SoundPlayer>();
+ m_Instance.name = "SoundPlayer";
+ m_Instance.SetActive(true);
+ DontDestroyOnLoad(gameObject);
+ Debug.Log("CreateSoundPlayer");
+ }
+
public void PlayBackGroundMusic(int _audioId)
{
if (_audioId <= 0)
@@ -177,7 +193,9 @@
if (key != _exclude)
{
var config = AudioConfig.Get(key);
+ #pragma warning disable CS0618 // Obsolete 鈥� sync legacy unload
ResManager.Instance.UnloadAsset("Audio/" + config.Folder, config.Audio);
+ #pragma warning restore CS0618
}
}
@@ -196,6 +214,7 @@
public async UniTask PlayUIAudioDelay(int _audioId)
{
await UniTask.Delay(1);
+ if (this == null) return; // destroyed during await
PlayUIAudio(_audioId);
}
@@ -371,6 +390,16 @@
}
}
+ public async UniTask PlayLoginMusicAsync()
+ {
+ var loginMusic = await BuiltInLoader.LoadMusicAsync("login");
+ if (this == null) return;
+ if (!m_MusicAudioSource.isPlaying || m_MusicAudioSource.clip != loginMusic)
+ {
+ StartCoroutine(Co_BackGroundMusicFadeOutIn(loginMusic, false));
+ }
+ }
+
//private void LateUpdate()
//{
// if (CameraController.Instance != null && CameraController.Instance.CameraObject != null)
--
Gitblit v1.8.0