From 566bc0993e2630840a8ffbb8b93025a31f03ca55 Mon Sep 17 00:00:00 2001 From: ivan tkachenko Date: Tue, 17 Jun 2025 15:52:10 +0300 Subject: [PATCH] convert indentation to tabs --- MuzikaGromche/Plugin.cs | 246 ++++++++++++++++++++-------------------- 1 file changed, 123 insertions(+), 123 deletions(-) diff --git a/MuzikaGromche/Plugin.cs b/MuzikaGromche/Plugin.cs index 159cf2c..1bb10c8 100644 --- a/MuzikaGromche/Plugin.cs +++ b/MuzikaGromche/Plugin.cs @@ -10,9 +10,9 @@ using UnityEngine.Networking; namespace MuzikaGromche { - [BepInPlugin(PluginInfo.PLUGIN_GUID, PluginInfo.PLUGIN_NAME, PluginInfo.PLUGIN_VERSION)] - public class Plugin : BaseUnityPlugin - { + [BepInPlugin(PluginInfo.PLUGIN_GUID, PluginInfo.PLUGIN_NAME, PluginInfo.PLUGIN_VERSION)] + public class Plugin : BaseUnityPlugin + { public static Track[] Tracks = [ new Track { @@ -23,7 +23,7 @@ namespace MuzikaGromche new Track { Name = "VseVZale", - WindUpTimer = 39f, + WindUpTimer = 39f, Bpm = 138f, }, new Track @@ -79,133 +79,133 @@ namespace MuzikaGromche Logger.LogError("Could not load audio file"); } } - } + } - public class Track - { - public string Name; - public float WindUpTimer; - public float Bpm; - public AudioClip LoadedStart; - public AudioClip LoadedLoop; - } + public class Track + { + public string Name; + public float WindUpTimer; + public float Bpm; + public AudioClip LoadedStart; + public AudioClip LoadedLoop; + } - [HarmonyPatch(typeof(JesterAI))] - internal class JesterPatch - { - [HarmonyPatch("Update")] - [HarmonyPrefix] - public static void DoNotStopTheMusicPrefix(JesterAI __instance, out State __state) - { - __state = new State(); - __state.prevStateindex = __instance.previousState; - if (__instance.currentBehaviourStateIndex == 2 && __instance.previousBehaviourStateIndex != 2) { - // if just popped out - // then override farAudio so that vanilla logic does not stop the music - __state.farAudio = __instance.farAudio; - __instance.farAudio = __instance.creatureVoice; - } - } - - static List colors = [Color.magenta, Color.cyan, Color.green, Color.yellow]; + [HarmonyPatch(typeof(JesterAI))] + internal class JesterPatch + { + [HarmonyPatch("Update")] + [HarmonyPrefix] + public static void DoNotStopTheMusicPrefix(JesterAI __instance, out State __state) + { + __state = new State(); + __state.prevStateindex = __instance.previousState; + if (__instance.currentBehaviourStateIndex == 2 && __instance.previousBehaviourStateIndex != 2) { + // if just popped out + // then override farAudio so that vanilla logic does not stop the music + __state.farAudio = __instance.farAudio; + __instance.farAudio = __instance.creatureVoice; + } + } - public static IEnumerator rotateColors() - { - Debug.Log("Starting color rotation"); - var i = 0; - while (true) - { - var color = colors[i]; - Debug.Log("Chose color " + color); - foreach (var light in RoundManager.Instance.allPoweredLights) - { - light.color = color; - } + static List colors = [Color.magenta, Color.cyan, Color.green, Color.yellow]; - i += 1; - if (i >= colors.Count) i = 0; - yield return new WaitForSeconds(60f / Plugin.CurrentTrack.Bpm); - } - } + public static IEnumerator rotateColors() + { + Debug.Log("Starting color rotation"); + var i = 0; + while (true) + { + var color = colors[i]; + Debug.Log("Chose color " + color); + foreach (var light in RoundManager.Instance.allPoweredLights) + { + light.color = color; + } + + i += 1; + if (i >= colors.Count) i = 0; + yield return new WaitForSeconds(60f / Plugin.CurrentTrack.Bpm); + } + } [HarmonyPatch("Update")] - [HarmonyPostfix] - public static void DoNotStopTheMusic(JesterAI __instance, State __state) - { - if (__state.farAudio != null) - { - __instance.farAudio = __state.farAudio; - } - - if (__instance.currentBehaviourStateIndex is 1 && __state.prevStateindex != 1) - { - // if just started winding up - // then stop the default music... - __instance.farAudio.Stop(); - __instance.creatureVoice.Stop(); - - // ...and start modded music - var seed = RoundManager.Instance.dungeonGenerator.Generator.ChosenSeed; - var sha = SHA256.Create(); - var hash = sha.ComputeHash(BitConverter.GetBytes(seed)); - var trackId = 0; - foreach (var t in hash) - { - // modulus division on byte array - trackId *= 256 % Plugin.Tracks.Length; - trackId %= Plugin.Tracks.Length; - trackId += t % Plugin.Tracks.Length; - trackId %= Plugin.Tracks.Length; - } - Debug.Log($"Seed is {seed}, chosen track is {trackId} out of {Plugin.Tracks.Length} tracks"); - Plugin.CurrentTrack = Plugin.Tracks[trackId]; - __instance.popUpTimer = Plugin.CurrentTrack.WindUpTimer; - __instance.farAudio.maxDistance = 150; - __instance.farAudio.clip = Plugin.CurrentTrack.LoadedStart; - __instance.farAudio.loop = false; - Debug.Log($"Playing start music: maxDistance: {__instance.farAudio.maxDistance}, minDistance: {__instance.farAudio.minDistance}, volume: {__instance.farAudio.volume}, spread: {__instance.farAudio.spread}"); - __instance.farAudio.Play(); - } + [HarmonyPostfix] + public static void DoNotStopTheMusic(JesterAI __instance, State __state) + { + if (__state.farAudio != null) + { + __instance.farAudio = __state.farAudio; + } - if (__instance.currentBehaviourStateIndex is 2 && __state.prevStateindex != 2) - { - __instance.creatureVoice.Stop(); - - if (Plugin.JesterLightSwitching != null) { - __instance.StopCoroutine(Plugin.JesterLightSwitching); - Plugin.JesterLightSwitching = null; - } - Plugin.JesterLightSwitching = __instance.StartCoroutine(rotateColors()); - } + if (__instance.currentBehaviourStateIndex is 1 && __state.prevStateindex != 1) + { + // if just started winding up + // then stop the default music... + __instance.farAudio.Stop(); + __instance.creatureVoice.Stop(); - if (__instance.currentBehaviourStateIndex != 2 && __state.prevStateindex == 2) - { - if (Plugin.JesterLightSwitching != null) { - __instance.StopCoroutine(Plugin.JesterLightSwitching); - Plugin.JesterLightSwitching = null; - } - foreach (var light in RoundManager.Instance.allPoweredLights) - { - light.color = Color.white; - } - } + // ...and start modded music + var seed = RoundManager.Instance.dungeonGenerator.Generator.ChosenSeed; + var sha = SHA256.Create(); + var hash = sha.ComputeHash(BitConverter.GetBytes(seed)); + var trackId = 0; + foreach (var t in hash) + { + // modulus division on byte array + trackId *= 256 % Plugin.Tracks.Length; + trackId %= Plugin.Tracks.Length; + trackId += t % Plugin.Tracks.Length; + trackId %= Plugin.Tracks.Length; + } + Debug.Log($"Seed is {seed}, chosen track is {trackId} out of {Plugin.Tracks.Length} tracks"); + Plugin.CurrentTrack = Plugin.Tracks[trackId]; + __instance.popUpTimer = Plugin.CurrentTrack.WindUpTimer; + __instance.farAudio.maxDistance = 150; + __instance.farAudio.clip = Plugin.CurrentTrack.LoadedStart; + __instance.farAudio.loop = false; + Debug.Log($"Playing start music: maxDistance: {__instance.farAudio.maxDistance}, minDistance: {__instance.farAudio.minDistance}, volume: {__instance.farAudio.volume}, spread: {__instance.farAudio.spread}"); + __instance.farAudio.Play(); + } - if (__instance.currentBehaviourStateIndex is 2 && !__instance.creatureVoice.isPlaying) - { - __instance.creatureVoice.maxDistance = 150; - __instance.creatureVoice.clip = Plugin.CurrentTrack.LoadedLoop; - var time = __instance.farAudio.time; - var delay = Plugin.CurrentTrack.LoadedStart.length - time; - Debug.Log($"Start length: {Plugin.CurrentTrack.LoadedStart.length}; played time: {time}"); - Debug.Log($"Playing loop music: maxDistance: {__instance.creatureVoice.maxDistance}, minDistance: {__instance.creatureVoice.minDistance}, volume: {__instance.creatureVoice.volume}, spread: {__instance.creatureVoice.spread}, in seconds: {delay}"); - __instance.creatureVoice.PlayDelayed(delay); - } - } - } + if (__instance.currentBehaviourStateIndex is 2 && __state.prevStateindex != 2) + { + __instance.creatureVoice.Stop(); - internal class State - { - public AudioSource farAudio; - public int prevStateindex; - } + if (Plugin.JesterLightSwitching != null) { + __instance.StopCoroutine(Plugin.JesterLightSwitching); + Plugin.JesterLightSwitching = null; + } + Plugin.JesterLightSwitching = __instance.StartCoroutine(rotateColors()); + } + + if (__instance.currentBehaviourStateIndex != 2 && __state.prevStateindex == 2) + { + if (Plugin.JesterLightSwitching != null) { + __instance.StopCoroutine(Plugin.JesterLightSwitching); + Plugin.JesterLightSwitching = null; + } + foreach (var light in RoundManager.Instance.allPoweredLights) + { + light.color = Color.white; + } + } + + if (__instance.currentBehaviourStateIndex is 2 && !__instance.creatureVoice.isPlaying) + { + __instance.creatureVoice.maxDistance = 150; + __instance.creatureVoice.clip = Plugin.CurrentTrack.LoadedLoop; + var time = __instance.farAudio.time; + var delay = Plugin.CurrentTrack.LoadedStart.length - time; + Debug.Log($"Start length: {Plugin.CurrentTrack.LoadedStart.length}; played time: {time}"); + Debug.Log($"Playing loop music: maxDistance: {__instance.creatureVoice.maxDistance}, minDistance: {__instance.creatureVoice.minDistance}, volume: {__instance.creatureVoice.volume}, spread: {__instance.creatureVoice.spread}, in seconds: {delay}"); + __instance.creatureVoice.PlayDelayed(delay); + } + } + } + + internal class State + { + public AudioSource farAudio; + public int prevStateindex; + } }