Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of The Whistling Ghost Girl v1.0.0
DeathWhistleGhostGirl.dll
Decompiled 2 years agousing System; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using HarmonyLib; using Microsoft.CodeAnalysis; using UnityEngine; using UnityEngine.Networking; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("DeathWhistleGhostGirl")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyDescription("Changes the ghost girl breathing SFX to the death whistle")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("DeathWhistleGhostGirl")] [assembly: AssemblyTitle("DeathWhistleGhostGirl")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)] internal sealed class RefSafetyRulesAttribute : Attribute { public readonly int Version; public RefSafetyRulesAttribute(int P_0) { Version = P_0; } } } namespace WhistlingGhost { [BepInPlugin("DeathWhistleGhostGirl", "DeathWhistleGhostGirl", "1.0.0")] public class Plugin : BaseUnityPlugin { public static AudioClip Audio; private void Awake() { //IL_004d: Unknown result type (might be due to invalid IL or missing references) //IL_0053: Invalid comparison between Unknown and I4 //IL_006a: Unknown result type (might be due to invalid IL or missing references) string text = ((BaseUnityPlugin)this).Info.Location.TrimEnd("DeathWhistleGhostGirl.dll".ToCharArray()); UnityWebRequest audioClip = UnityWebRequestMultimedia.GetAudioClip("File://" + text + "deathwhistle.mp3", (AudioType)13); audioClip.SendWebRequest(); while (!audioClip.isDone) { } if ((int)audioClip.result == 1) { Audio = DownloadHandlerAudioClip.GetContent(audioClip); new Harmony("DeathWhistleGhostGirl").PatchAll(typeof(GirlPatch)); ((BaseUnityPlugin)this).Logger.LogInfo((object)"Plugin DeathWhistleGhostGirl is loaded!"); } else { ((BaseUnityPlugin)this).Logger.LogError((object)"Could not load audio file"); } } } [HarmonyPatch(typeof(DressGirlAI))] internal class GirlPatch { [HarmonyPatch("Start")] [HarmonyPostfix] public static void AudioPatch(DressGirlAI __instance) { __instance.breathingSFX = Plugin.Audio; } } public static class PluginInfo { public const string PLUGIN_GUID = "DeathWhistleGhostGirl"; public const string PLUGIN_NAME = "DeathWhistleGhostGirl"; public const string PLUGIN_VERSION = "1.0.0"; } }