From b9751b2f076ee050fe5b685e91ae4fc4469b1015 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期一, 09 六月 2025 09:01:02 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts

---
 Main/System/Sound/SoundUtility.cs |  295 +++++++++++++++++++++++++++++-----------------------------
 1 files changed, 146 insertions(+), 149 deletions(-)

diff --git a/Main/System/Sound/SoundUtility.cs b/Main/System/Sound/SoundUtility.cs
index fa93058..5b75600 100644
--- a/Main/System/Sound/SoundUtility.cs
+++ b/Main/System/Sound/SoundUtility.cs
@@ -9,176 +9,173 @@
 
 using System.Collections.Generic;
 
-namespace vnxbqy.UI
+
+public class SoundUtility
 {
+    static DateTime lastHitAudioPlayTime = DateTime.Now;
+    static int hitAudioTimeInterval = 50;//姣
 
-    public class SoundUtility
+    static int hitAudioPoolMax = 2;
+    static int hitAudioCountPool = 2;
+
+    static Dictionary<int, List<int>> jobHitAudio = new Dictionary<int, List<int>>() {
+        { 1,new List<int>(){101,102,103,104} },
+        { 2,new List<int>(){146,147,148,149} },
+        { 3,new List<int>(){101,102,103,104} },
+    };
+
+    public static void PlayHitAudio(AudioSource _audioSource)
     {
-        static DateTime lastHitAudioPlayTime = DateTime.Now;
-        static int hitAudioTimeInterval = 50;//姣
+        if (_audioSource == null)
+        {
+            return;
+        }
 
-        static int hitAudioPoolMax = 2;
-        static int hitAudioCountPool = 2;
+        if (hitAudioCountPool < hitAudioPoolMax)
+        {
+            hitAudioCountPool = Mathf.Clamp(hitAudioCountPool + (int)((DateTime.Now - lastHitAudioPlayTime).TotalMilliseconds / hitAudioTimeInterval), 0, hitAudioPoolMax);
+        }
 
-        static Dictionary<int, List<int>> jobHitAudio = new Dictionary<int, List<int>>() {
-            { 1,new List<int>(){101,102,103,104} },
-            { 2,new List<int>(){146,147,148,149} },
-            { 3,new List<int>(){101,102,103,104} },
+        if (hitAudioCountPool > 0)
+        {
+            var job = PlayerDatas.Instance.baseData.Job;
+            if (jobHitAudio.ContainsKey(job))
+            {
+                var audios = jobHitAudio[job];
+                var index = UnityEngine.Random.Range(0, audios.Count);
+                SoundPlayer.Instance.PlayAudio(_audioSource, audios[index]);
+                lastHitAudioPlayTime = DateTime.Now;
+                hitAudioCountPool--;
+            }
+        }
+    }
+
+    static Dictionary<int, int[]> fightRoars = new Dictionary<int, int[]>() {
+        {  1,new int[]{ 97,98,99 } },
+        {  2,new int[]{ 142,143,144 } },
         };
 
-        public static void PlayHitAudio(AudioSource _audioSource)
+    public static void PlayFightRoar(AudioSource _audioSource, int _job)
+    {
+        var ableIndex = UnityEngine.Random.Range(0, 3);
+        if (ableIndex != 1)
         {
-            if (_audioSource == null)
-            {
-                return;
-            }
-
-            if (hitAudioCountPool < hitAudioPoolMax)
-            {
-                hitAudioCountPool = Mathf.Clamp(hitAudioCountPool + (int)((DateTime.Now - lastHitAudioPlayTime).TotalMilliseconds / hitAudioTimeInterval), 0, hitAudioPoolMax);
-            }
-
-            if (hitAudioCountPool > 0)
-            {
-                var job = PlayerDatas.Instance.baseData.Job;
-                if (jobHitAudio.ContainsKey(job))
-                {
-                    var audios = jobHitAudio[job];
-                    var index = UnityEngine.Random.Range(0, audios.Count);
-                    SoundPlayer.Instance.PlayAudio(_audioSource, audios[index]);
-                    lastHitAudioPlayTime = DateTime.Now;
-                    hitAudioCountPool--;
-                }
-            }
+            return;
         }
 
-        static Dictionary<int, int[]> fightRoars = new Dictionary<int, int[]>() {
-            {  1,new int[]{ 97,98,99 } },
-            {  2,new int[]{ 142,143,144 } },
-            };
-
-        public static void PlayFightRoar(AudioSource _audioSource, int _job)
+        int[] audioList = null;
+        if (fightRoars.ContainsKey(_job))
         {
-            var ableIndex = UnityEngine.Random.Range(0, 3);
-            if (ableIndex != 1)
-            {
-                return;
-            }
-
-            int[] audioList = null;
-            if (fightRoars.ContainsKey(_job))
-            {
-                audioList = fightRoars[_job];
-            }
-
-            if (audioList == null)
-            {
-                return;
-            }
-
-            var randomIndex = UnityEngine.Random.Range(0, audioList.Length);
-            var audio = audioList[randomIndex];
-
-            SoundPlayer.Instance.PlayAudio(_audioSource, audio);
-
+            audioList = fightRoars[_job];
         }
 
-        static Dictionary<int, int> deadAudios = new Dictionary<int, int>()
+        if (audioList == null)
         {
-            { 1,100},
-            { 2,145},
-            { 3,100},
-        };
-
-        public static void PlayDeadAudio(AudioSource _audioSource, int _job)
-        {
-            SoundPlayer.Instance.PlayAudio(_audioSource, deadAudios[_job]);
+            return;
         }
 
-        static Dictionary<int, int[]> stateFootAudios = new Dictionary<int, int[]>()
-        {
-            { 1,new int[]{ 130, 131, 132,133} },
-            { 2,new int[]{ 134, 135, 136, 137 } },
-            { 3,new int[]{ 138, 139, 140, 141 } },
-        };
+        var randomIndex = UnityEngine.Random.Range(0, audioList.Length);
+        var audio = audioList[randomIndex];
 
-        static Dictionary<int, int[]> rideAudios = new Dictionary<int, int[]>();
-
-        static FootAudioType currentState = FootAudioType.Walk;
-        static int audioIndex = 0;
-        static Dictionary<int, DateTime> stateFootAudioLastPlayTimes = new Dictionary<int, DateTime>();
-
-        const float overTime = 2f;
-
-        public static void PlayFootAudio(AudioSource _audioSource, FootAudioType _state, int _horseId = 0)
-        {
-            var stateInt = (int)_state;
-            if (!stateFootAudios.ContainsKey(stateInt))
-            {
-                return;
-            }
-
-            if (currentState != _state)
-            {
-                audioIndex = 0;
-                currentState = _state;
-            }
-
-            if (stateFootAudioLastPlayTimes.ContainsKey(stateInt))
-            {
-                var lastPlayTime = stateFootAudioLastPlayTimes[stateInt];
-                if ((DateTime.Now - lastPlayTime).TotalSeconds > 2f)
-                {
-                    audioIndex = 0;
-                }
-            }
-            else
-            {
-                audioIndex = 0;
-            }
-
-            int[] audios = null;
-            switch (stateInt)
-            {
-                case 1:
-                case 3:
-                    audios = stateFootAudios[(int)_state];
-                    break;
-                // case 2:
-                //     if (rideAudios.ContainsKey(_horseId))
-                //     {
-                //         audios = rideAudios[_horseId];
-                //     }
-                //     else
-                //     {
-                //         var config = HorseConfig.Get(_horseId);
-                //         audios = new int[config.RideAudios.Length];
-                //         Array.Copy(config.RideAudios, audios, config.RideAudios.Length);
-                //         rideAudios[_horseId] = audios;
-                //     }
-                //     break;
-                default:
-                    break;
-            }
-
-
-            if (audioIndex < audios.Length)
-            {
-                var audio = audios[audioIndex];
-                SoundPlayer.Instance.PlayAudio(_audioSource, audio);
-                stateFootAudioLastPlayTimes[stateInt] = DateTime.Now;
-                audioIndex++;
-            }
-
-            if (audioIndex >= audios.Length)
-            {
-                audioIndex = 0;
-            }
-        }
+        SoundPlayer.Instance.PlayAudio(_audioSource, audio);
 
     }
 
+    static Dictionary<int, int> deadAudios = new Dictionary<int, int>()
+    {
+        { 1,100},
+        { 2,145},
+        { 3,100},
+    };
+
+    public static void PlayDeadAudio(AudioSource _audioSource, int _job)
+    {
+        SoundPlayer.Instance.PlayAudio(_audioSource, deadAudios[_job]);
+    }
+
+    static Dictionary<int, int[]> stateFootAudios = new Dictionary<int, int[]>()
+    {
+        { 1,new int[]{ 130, 131, 132,133} },
+        { 2,new int[]{ 134, 135, 136, 137 } },
+        { 3,new int[]{ 138, 139, 140, 141 } },
+    };
+
+    static Dictionary<int, int[]> rideAudios = new Dictionary<int, int[]>();
+
+    static FootAudioType currentState = FootAudioType.Walk;
+    static int audioIndex = 0;
+    static Dictionary<int, DateTime> stateFootAudioLastPlayTimes = new Dictionary<int, DateTime>();
+
+    const float overTime = 2f;
+
+    public static void PlayFootAudio(AudioSource _audioSource, FootAudioType _state, int _horseId = 0)
+    {
+        var stateInt = (int)_state;
+        if (!stateFootAudios.ContainsKey(stateInt))
+        {
+            return;
+        }
+
+        if (currentState != _state)
+        {
+            audioIndex = 0;
+            currentState = _state;
+        }
+
+        if (stateFootAudioLastPlayTimes.ContainsKey(stateInt))
+        {
+            var lastPlayTime = stateFootAudioLastPlayTimes[stateInt];
+            if ((DateTime.Now - lastPlayTime).TotalSeconds > 2f)
+            {
+                audioIndex = 0;
+            }
+        }
+        else
+        {
+            audioIndex = 0;
+        }
+
+        int[] audios = null;
+        switch (stateInt)
+        {
+            case 1:
+            case 3:
+                audios = stateFootAudios[(int)_state];
+                break;
+            // case 2:
+            //     if (rideAudios.ContainsKey(_horseId))
+            //     {
+            //         audios = rideAudios[_horseId];
+            //     }
+            //     else
+            //     {
+            //         var config = HorseConfig.Get(_horseId);
+            //         audios = new int[config.RideAudios.Length];
+            //         Array.Copy(config.RideAudios, audios, config.RideAudios.Length);
+            //         rideAudios[_horseId] = audios;
+            //     }
+            //     break;
+            default:
+                break;
+        }
+
+
+        if (audioIndex < audios.Length)
+        {
+            var audio = audios[audioIndex];
+            SoundPlayer.Instance.PlayAudio(_audioSource, audio);
+            stateFootAudioLastPlayTimes[stateInt] = DateTime.Now;
+            audioIndex++;
+        }
+
+        if (audioIndex >= audios.Length)
+        {
+            audioIndex = 0;
+        }
+    }
+
 }
 
 
 
+

--
Gitblit v1.8.0