using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using BepInEx.Configuration; using BepInEx.Logging; using HarmonyLib; using MenuLib; using MenuLib.MonoBehaviors; using Microsoft.CodeAnalysis; using UnityEngine; using UnityEngine.Networking; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: TargetFramework(".NETFramework,Version=v4.8.1", FrameworkDisplayName = ".NET Framework 4.8.1")] [assembly: AssemblyCompany("RepoMemeSFX")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("RepoMemeSFX")] [assembly: AssemblyTitle("RepoMemeSFX")] [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.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)] internal sealed class NullableAttribute : Attribute { public readonly byte[] NullableFlags; public NullableAttribute(byte P_0) { NullableFlags = new byte[1] { P_0 }; } public NullableAttribute(byte[] P_0) { NullableFlags = P_0; } } [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)] internal sealed class NullableContextAttribute : Attribute { public readonly byte Flag; public NullableContextAttribute(byte P_0) { Flag = P_0; } } [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 RepoMemeSFX { public class SoundReplacement { public string TargetName; public bool IsMelee; public bool IsBunch; public bool IsBooom; public bool PlayAsTemporary; public float VolumeScale = 1f; } [BepInPlugin("com.rupleide.repomemesfx", "RepoMemeSFX", "1.0.5")] [BepInDependency(/*Could not decode attribute arguments.*/)] public class RepoMemeSFXPlugin : BaseUnityPlugin { [Serializable] [CompilerGenerated] private sealed class <>c { public static readonly <>c <>9 = new <>c(); public static Action <>9__20_0; public static Action <>9__20_1; public static Action <>9__20_2; public static Action <>9__20_3; public static Action <>9__20_4; public static Action <>9__20_23; public static ScrollViewBuilderDelegate <>9__20_7; public static ScrollViewBuilderDelegate <>9__20_8; public static Action <>9__20_24; public static ScrollViewBuilderDelegate <>9__20_9; public static Action <>9__20_25; public static ScrollViewBuilderDelegate <>9__20_10; public static ScrollViewBuilderDelegate <>9__20_11; public static Action <>9__20_26; public static ScrollViewBuilderDelegate <>9__20_12; public static Action <>9__20_27; public static ScrollViewBuilderDelegate <>9__20_13; public static ScrollViewBuilderDelegate <>9__20_14; public static Action <>9__20_28; public static ScrollViewBuilderDelegate <>9__20_15; public static Action <>9__20_29; public static ScrollViewBuilderDelegate <>9__20_16; public static ScrollViewBuilderDelegate <>9__20_17; public static Action <>9__20_30; public static ScrollViewBuilderDelegate <>9__20_18; public static Action <>9__20_31; public static ScrollViewBuilderDelegate <>9__20_19; public static ScrollViewBuilderDelegate <>9__20_20; public static Action <>9__20_32; public static ScrollViewBuilderDelegate <>9__20_21; public static Action <>9__20_33; public static ScrollViewBuilderDelegate <>9__20_22; public static Action <>9__20_6; public static BuilderDelegate <>9__20_5; internal void b__20_0(AudioClip c) { BonkClip = c; } internal void b__20_1(AudioClip c) { ShotClip = c; } internal void b__20_2(AudioClip c) { StartClip = c; } internal void b__20_3(AudioClip c) { BunchClip = c; } internal void b__20_4(AudioClip c) { BooomClip = c; } internal void b__20_5(Transform parent) { //IL_002f: Unknown result type (might be due to invalid IL or missing references) MenuAPI.CreateREPOButton("RepoMemeSFX", (Action)delegate { //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Expected O, but got Unknown //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Expected O, but got Unknown //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Unknown result type (might be due to invalid IL or missing references) //IL_0090: Expected O, but got Unknown //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Expected O, but got Unknown //IL_00e3: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_00ee: Expected O, but got Unknown //IL_0112: Unknown result type (might be due to invalid IL or missing references) //IL_0117: Unknown result type (might be due to invalid IL or missing references) //IL_011d: Expected O, but got Unknown //IL_0141: Unknown result type (might be due to invalid IL or missing references) //IL_0146: Unknown result type (might be due to invalid IL or missing references) //IL_014c: Expected O, but got Unknown //IL_0170: Unknown result type (might be due to invalid IL or missing references) //IL_0175: Unknown result type (might be due to invalid IL or missing references) //IL_017b: Expected O, but got Unknown //IL_019f: Unknown result type (might be due to invalid IL or missing references) //IL_01a4: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Expected O, but got Unknown //IL_01ce: Unknown result type (might be due to invalid IL or missing references) //IL_01d3: Unknown result type (might be due to invalid IL or missing references) //IL_01d9: Expected O, but got Unknown //IL_01fd: Unknown result type (might be due to invalid IL or missing references) //IL_0202: Unknown result type (might be due to invalid IL or missing references) //IL_0208: Expected O, but got Unknown //IL_022c: Unknown result type (might be due to invalid IL or missing references) //IL_0231: Unknown result type (might be due to invalid IL or missing references) //IL_0237: Expected O, but got Unknown //IL_025b: Unknown result type (might be due to invalid IL or missing references) //IL_0260: Unknown result type (might be due to invalid IL or missing references) //IL_0266: Expected O, but got Unknown //IL_028a: Unknown result type (might be due to invalid IL or missing references) //IL_028f: Unknown result type (might be due to invalid IL or missing references) //IL_0295: Expected O, but got Unknown //IL_02b9: Unknown result type (might be due to invalid IL or missing references) //IL_02be: Unknown result type (might be due to invalid IL or missing references) //IL_02c4: Expected O, but got Unknown //IL_02e8: Unknown result type (might be due to invalid IL or missing references) //IL_02ed: Unknown result type (might be due to invalid IL or missing references) //IL_02f3: Expected O, but got Unknown REPOPopupPage obj = MenuAPI.CreateREPOPopupPage("RepoMemeSFX", (PresetSide)0, false, true, 1f); object obj2 = <>9__20_7; if (obj2 == null) { ScrollViewBuilderDelegate val = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Mod Enabled", (Action)delegate(bool v) { Enabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", Enabled.Value)).rectTransform; <>9__20_7 = val; obj2 = (object)val; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj2, 0f, 0f); object obj3 = <>9__20_8; if (obj3 == null) { ScrollViewBuilderDelegate val2 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Bonk —", sv, Vector2.zero)).rectTransform; <>9__20_8 = val2; obj3 = (object)val2; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj3, 0f, 0f); object obj4 = <>9__20_9; if (obj4 == null) { ScrollViewBuilderDelegate val3 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Bonk Sound", (Action)delegate(bool v) { BonkEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BonkEnabled.Value)).rectTransform; <>9__20_9 = val3; obj4 = (object)val3; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj4, 0f, 0f); object obj5 = <>9__20_10; if (obj5 == null) { ScrollViewBuilderDelegate val4 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Bonk Volume", "", (Action)delegate(float f) { BonkVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BonkVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_10 = val4; obj5 = (object)val4; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj5, 0f, 0f); object obj6 = <>9__20_11; if (obj6 == null) { ScrollViewBuilderDelegate val5 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Shot —", sv, Vector2.zero)).rectTransform; <>9__20_11 = val5; obj6 = (object)val5; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj6, 0f, 0f); object obj7 = <>9__20_12; if (obj7 == null) { ScrollViewBuilderDelegate val6 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Shot Sound", (Action)delegate(bool v) { ShotEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", ShotEnabled.Value)).rectTransform; <>9__20_12 = val6; obj7 = (object)val6; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj7, 0f, 0f); object obj8 = <>9__20_13; if (obj8 == null) { ScrollViewBuilderDelegate val7 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Shot Volume", "", (Action)delegate(float f) { ShotVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, ShotVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_13 = val7; obj8 = (object)val7; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj8, 0f, 0f); object obj9 = <>9__20_14; if (obj9 == null) { ScrollViewBuilderDelegate val8 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Tranq Gun —", sv, Vector2.zero)).rectTransform; <>9__20_14 = val8; obj9 = (object)val8; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj9, 0f, 0f); object obj10 = <>9__20_15; if (obj10 == null) { ScrollViewBuilderDelegate val9 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Bunch Sound", (Action)delegate(bool v) { BunchEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BunchEnabled.Value)).rectTransform; <>9__20_15 = val9; obj10 = (object)val9; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj10, 0f, 0f); object obj11 = <>9__20_16; if (obj11 == null) { ScrollViewBuilderDelegate val10 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Bunch Volume", "", (Action)delegate(float f) { BunchVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BunchVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_16 = val10; obj11 = (object)val10; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj11, 0f, 0f); object obj12 = <>9__20_17; if (obj12 == null) { ScrollViewBuilderDelegate val11 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Grenade —", sv, Vector2.zero)).rectTransform; <>9__20_17 = val11; obj12 = (object)val11; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj12, 0f, 0f); object obj13 = <>9__20_18; if (obj13 == null) { ScrollViewBuilderDelegate val12 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Booom Sound", (Action)delegate(bool v) { BooomEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BooomEnabled.Value)).rectTransform; <>9__20_18 = val12; obj13 = (object)val12; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj13, 0f, 0f); object obj14 = <>9__20_19; if (obj14 == null) { ScrollViewBuilderDelegate val13 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Booom Volume", "", (Action)delegate(float f) { BooomVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BooomVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_19 = val13; obj14 = (object)val13; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj14, 0f, 0f); object obj15 = <>9__20_20; if (obj15 == null) { ScrollViewBuilderDelegate val14 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Lobby Start —", sv, Vector2.zero)).rectTransform; <>9__20_20 = val14; obj15 = (object)val14; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj15, 0f, 0f); object obj16 = <>9__20_21; if (obj16 == null) { ScrollViewBuilderDelegate val15 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Okletsgo Sound", (Action)delegate(bool v) { StartEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", StartEnabled.Value)).rectTransform; <>9__20_21 = val15; obj16 = (object)val15; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj16, 0f, 0f); object obj17 = <>9__20_22; if (obj17 == null) { ScrollViewBuilderDelegate val16 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Okletsgo Volume", "", (Action)delegate(float f) { StartVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, StartVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_22 = val16; obj17 = (object)val16; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj17, 0f, 0f); obj.OpenPage(false); }, parent, new Vector2(0f, -50f)); } internal void b__20_6() { //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Expected O, but got Unknown //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Expected O, but got Unknown //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Unknown result type (might be due to invalid IL or missing references) //IL_0090: Expected O, but got Unknown //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Expected O, but got Unknown //IL_00e3: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_00ee: Expected O, but got Unknown //IL_0112: Unknown result type (might be due to invalid IL or missing references) //IL_0117: Unknown result type (might be due to invalid IL or missing references) //IL_011d: Expected O, but got Unknown //IL_0141: Unknown result type (might be due to invalid IL or missing references) //IL_0146: Unknown result type (might be due to invalid IL or missing references) //IL_014c: Expected O, but got Unknown //IL_0170: Unknown result type (might be due to invalid IL or missing references) //IL_0175: Unknown result type (might be due to invalid IL or missing references) //IL_017b: Expected O, but got Unknown //IL_019f: Unknown result type (might be due to invalid IL or missing references) //IL_01a4: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Expected O, but got Unknown //IL_01ce: Unknown result type (might be due to invalid IL or missing references) //IL_01d3: Unknown result type (might be due to invalid IL or missing references) //IL_01d9: Expected O, but got Unknown //IL_01fd: Unknown result type (might be due to invalid IL or missing references) //IL_0202: Unknown result type (might be due to invalid IL or missing references) //IL_0208: Expected O, but got Unknown //IL_022c: Unknown result type (might be due to invalid IL or missing references) //IL_0231: Unknown result type (might be due to invalid IL or missing references) //IL_0237: Expected O, but got Unknown //IL_025b: Unknown result type (might be due to invalid IL or missing references) //IL_0260: Unknown result type (might be due to invalid IL or missing references) //IL_0266: Expected O, but got Unknown //IL_028a: Unknown result type (might be due to invalid IL or missing references) //IL_028f: Unknown result type (might be due to invalid IL or missing references) //IL_0295: Expected O, but got Unknown //IL_02b9: Unknown result type (might be due to invalid IL or missing references) //IL_02be: Unknown result type (might be due to invalid IL or missing references) //IL_02c4: Expected O, but got Unknown //IL_02e8: Unknown result type (might be due to invalid IL or missing references) //IL_02ed: Unknown result type (might be due to invalid IL or missing references) //IL_02f3: Expected O, but got Unknown REPOPopupPage obj = MenuAPI.CreateREPOPopupPage("RepoMemeSFX", (PresetSide)0, false, true, 1f); object obj2 = <>9__20_7; if (obj2 == null) { ScrollViewBuilderDelegate val = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Mod Enabled", (Action)delegate(bool v) { Enabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", Enabled.Value)).rectTransform; <>9__20_7 = val; obj2 = (object)val; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj2, 0f, 0f); object obj3 = <>9__20_8; if (obj3 == null) { ScrollViewBuilderDelegate val2 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Bonk —", sv, Vector2.zero)).rectTransform; <>9__20_8 = val2; obj3 = (object)val2; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj3, 0f, 0f); object obj4 = <>9__20_9; if (obj4 == null) { ScrollViewBuilderDelegate val3 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Bonk Sound", (Action)delegate(bool v) { BonkEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BonkEnabled.Value)).rectTransform; <>9__20_9 = val3; obj4 = (object)val3; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj4, 0f, 0f); object obj5 = <>9__20_10; if (obj5 == null) { ScrollViewBuilderDelegate val4 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Bonk Volume", "", (Action)delegate(float f) { BonkVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BonkVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_10 = val4; obj5 = (object)val4; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj5, 0f, 0f); object obj6 = <>9__20_11; if (obj6 == null) { ScrollViewBuilderDelegate val5 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Shot —", sv, Vector2.zero)).rectTransform; <>9__20_11 = val5; obj6 = (object)val5; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj6, 0f, 0f); object obj7 = <>9__20_12; if (obj7 == null) { ScrollViewBuilderDelegate val6 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Shot Sound", (Action)delegate(bool v) { ShotEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", ShotEnabled.Value)).rectTransform; <>9__20_12 = val6; obj7 = (object)val6; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj7, 0f, 0f); object obj8 = <>9__20_13; if (obj8 == null) { ScrollViewBuilderDelegate val7 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Shot Volume", "", (Action)delegate(float f) { ShotVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, ShotVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_13 = val7; obj8 = (object)val7; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj8, 0f, 0f); object obj9 = <>9__20_14; if (obj9 == null) { ScrollViewBuilderDelegate val8 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Tranq Gun —", sv, Vector2.zero)).rectTransform; <>9__20_14 = val8; obj9 = (object)val8; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj9, 0f, 0f); object obj10 = <>9__20_15; if (obj10 == null) { ScrollViewBuilderDelegate val9 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Bunch Sound", (Action)delegate(bool v) { BunchEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BunchEnabled.Value)).rectTransform; <>9__20_15 = val9; obj10 = (object)val9; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj10, 0f, 0f); object obj11 = <>9__20_16; if (obj11 == null) { ScrollViewBuilderDelegate val10 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Bunch Volume", "", (Action)delegate(float f) { BunchVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BunchVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_16 = val10; obj11 = (object)val10; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj11, 0f, 0f); object obj12 = <>9__20_17; if (obj12 == null) { ScrollViewBuilderDelegate val11 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Grenade —", sv, Vector2.zero)).rectTransform; <>9__20_17 = val11; obj12 = (object)val11; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj12, 0f, 0f); object obj13 = <>9__20_18; if (obj13 == null) { ScrollViewBuilderDelegate val12 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Booom Sound", (Action)delegate(bool v) { BooomEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BooomEnabled.Value)).rectTransform; <>9__20_18 = val12; obj13 = (object)val12; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj13, 0f, 0f); object obj14 = <>9__20_19; if (obj14 == null) { ScrollViewBuilderDelegate val13 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Booom Volume", "", (Action)delegate(float f) { BooomVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BooomVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_19 = val13; obj14 = (object)val13; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj14, 0f, 0f); object obj15 = <>9__20_20; if (obj15 == null) { ScrollViewBuilderDelegate val14 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Lobby Start —", sv, Vector2.zero)).rectTransform; <>9__20_20 = val14; obj15 = (object)val14; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj15, 0f, 0f); object obj16 = <>9__20_21; if (obj16 == null) { ScrollViewBuilderDelegate val15 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Okletsgo Sound", (Action)delegate(bool v) { StartEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", StartEnabled.Value)).rectTransform; <>9__20_21 = val15; obj16 = (object)val15; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj16, 0f, 0f); object obj17 = <>9__20_22; if (obj17 == null) { ScrollViewBuilderDelegate val16 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Okletsgo Volume", "", (Action)delegate(float f) { StartVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, StartVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>9__20_22 = val16; obj17 = (object)val16; } obj.AddElementToScrollView((ScrollViewBuilderDelegate)obj17, 0f, 0f); obj.OpenPage(false); } internal RectTransform b__20_7(Transform sv) { //IL_0025: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOToggle("Mod Enabled", (Action)delegate(bool v) { Enabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", Enabled.Value)).rectTransform; } internal void b__20_23(bool v) { Enabled.Value = v; } internal RectTransform b__20_8(Transform sv) { //IL_0006: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOLabel("— Bonk —", sv, Vector2.zero)).rectTransform; } internal RectTransform b__20_9(Transform sv) { //IL_0025: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOToggle("Bonk Sound", (Action)delegate(bool v) { BonkEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BonkEnabled.Value)).rectTransform; } internal void b__20_24(bool v) { BonkEnabled.Value = v; } internal RectTransform b__20_10(Transform sv) { //IL_002a: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOSlider("Bonk Volume", "", (Action)delegate(float f) { BonkVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BonkVolume.Value, "", "", (BarBehavior)0)).rectTransform; } internal void b__20_25(float f) { BonkVolume.Value = f; } internal RectTransform b__20_11(Transform sv) { //IL_0006: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOLabel("— Shot —", sv, Vector2.zero)).rectTransform; } internal RectTransform b__20_12(Transform sv) { //IL_0025: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOToggle("Shot Sound", (Action)delegate(bool v) { ShotEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", ShotEnabled.Value)).rectTransform; } internal void b__20_26(bool v) { ShotEnabled.Value = v; } internal RectTransform b__20_13(Transform sv) { //IL_002a: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOSlider("Shot Volume", "", (Action)delegate(float f) { ShotVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, ShotVolume.Value, "", "", (BarBehavior)0)).rectTransform; } internal void b__20_27(float f) { ShotVolume.Value = f; } internal RectTransform b__20_14(Transform sv) { //IL_0006: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOLabel("— Tranq Gun —", sv, Vector2.zero)).rectTransform; } internal RectTransform b__20_15(Transform sv) { //IL_0025: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOToggle("Bunch Sound", (Action)delegate(bool v) { BunchEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BunchEnabled.Value)).rectTransform; } internal void b__20_28(bool v) { BunchEnabled.Value = v; } internal RectTransform b__20_16(Transform sv) { //IL_002a: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOSlider("Bunch Volume", "", (Action)delegate(float f) { BunchVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BunchVolume.Value, "", "", (BarBehavior)0)).rectTransform; } internal void b__20_29(float f) { BunchVolume.Value = f; } internal RectTransform b__20_17(Transform sv) { //IL_0006: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOLabel("— Grenade —", sv, Vector2.zero)).rectTransform; } internal RectTransform b__20_18(Transform sv) { //IL_0025: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOToggle("Booom Sound", (Action)delegate(bool v) { BooomEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BooomEnabled.Value)).rectTransform; } internal void b__20_30(bool v) { BooomEnabled.Value = v; } internal RectTransform b__20_19(Transform sv) { //IL_002a: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOSlider("Booom Volume", "", (Action)delegate(float f) { BooomVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BooomVolume.Value, "", "", (BarBehavior)0)).rectTransform; } internal void b__20_31(float f) { BooomVolume.Value = f; } internal RectTransform b__20_20(Transform sv) { //IL_0006: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOLabel("— Lobby Start —", sv, Vector2.zero)).rectTransform; } internal RectTransform b__20_21(Transform sv) { //IL_0025: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOToggle("Okletsgo Sound", (Action)delegate(bool v) { StartEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", StartEnabled.Value)).rectTransform; } internal void b__20_32(bool v) { StartEnabled.Value = v; } internal RectTransform b__20_22(Transform sv) { //IL_002a: Unknown result type (might be due to invalid IL or missing references) return ((REPOElement)MenuAPI.CreateREPOSlider("Okletsgo Volume", "", (Action)delegate(float f) { StartVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, StartVolume.Value, "", "", (BarBehavior)0)).rectTransform; } internal void b__20_33(float f) { StartVolume.Value = f; } } [CompilerGenerated] private sealed class d__21 : IEnumerator, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; public string fileName; public Action callback; private string 5__2; private UnityWebRequest 5__3; object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public d__21(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { int num = <>1__state; if (num == -3 || num == 1) { try { } finally { <>m__Finally1(); } } 5__2 = null; 5__3 = null; <>1__state = -2; } private bool MoveNext() { //IL_00f1: Unknown result type (might be due to invalid IL or missing references) //IL_00f7: Invalid comparison between Unknown and I4 bool result; try { switch (<>1__state) { default: result = false; break; case 0: { <>1__state = -1; Stream manifestResourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("RepoMemeSFX." + fileName); if (manifestResourceStream == null) { Log.LogWarning((object)("Embedded resource not found: RepoMemeSFX." + fileName)); result = false; break; } byte[] array = new byte[manifestResourceStream.Length]; manifestResourceStream.Read(array, 0, array.Length); manifestResourceStream.Dispose(); 5__2 = Path.Combine(Path.GetTempPath(), fileName); File.WriteAllBytes(5__2, array); 5__3 = UnityWebRequestMultimedia.GetAudioClip("file://" + 5__2, (AudioType)20); <>1__state = -3; <>2__current = 5__3.SendWebRequest(); <>1__state = 1; result = true; break; } case 1: <>1__state = -3; if ((int)5__3.result == 1) { AudioClip content = DownloadHandlerAudioClip.GetContent(5__3); ((Object)content).name = Path.GetFileNameWithoutExtension(fileName); callback(content); Log.LogInfo((object)("Loaded: " + ((Object)content).name)); } else { Log.LogError((object)("Failed to load " + fileName + ": " + 5__3.error)); } try { File.Delete(5__2); } catch { } result = false; <>m__Finally1(); break; } } catch { //try-fault ((IDisposable)this).Dispose(); throw; } return result; } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } private void <>m__Finally1() { <>1__state = -1; if (5__3 != null) { ((IDisposable)5__3).Dispose(); } } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } internal static ManualLogSource Log = null; internal static ConfigEntry Enabled = null; internal static ConfigEntry BonkEnabled = null; internal static ConfigEntry BonkVolume = null; internal static ConfigEntry ShotEnabled = null; internal static ConfigEntry ShotVolume = null; internal static ConfigEntry BunchEnabled = null; internal static ConfigEntry BunchVolume = null; internal static ConfigEntry BooomEnabled = null; internal static ConfigEntry BooomVolume = null; internal static ConfigEntry StartEnabled = null; internal static ConfigEntry StartVolume = null; internal static AudioClip SilentClip = null; internal static AudioClip? BonkClip; internal static AudioClip? ShotClip; internal static AudioClip? StartClip; internal static AudioClip? BunchClip; internal static AudioClip? BooomClip; internal static readonly Dictionary DedicatedSources = new Dictionary(); public static readonly List Replacements = new List { new SoundReplacement { TargetName = "handgun shoot", PlayAsTemporary = true }, new SoundReplacement { TargetName = "shotgun shoot", PlayAsTemporary = true }, new SoundReplacement { TargetName = "enemy hunter shoot", PlayAsTemporary = true }, new SoundReplacement { TargetName = "item tranq gun shoot", IsBunch = true, PlayAsTemporary = true }, new SoundReplacement { TargetName = "explosion generic big", IsBooom = true, PlayAsTemporary = true } }; private void Awake() { //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_0083: Expected O, but got Unknown //IL_00d6: Unknown result type (might be due to invalid IL or missing references) //IL_00e0: Expected O, but got Unknown //IL_0133: Unknown result type (might be due to invalid IL or missing references) //IL_013d: Expected O, but got Unknown //IL_0190: Unknown result type (might be due to invalid IL or missing references) //IL_019a: Expected O, but got Unknown //IL_01ed: Unknown result type (might be due to invalid IL or missing references) //IL_01f7: Expected O, but got Unknown //IL_0327: Unknown result type (might be due to invalid IL or missing references) //IL_0345: Unknown result type (might be due to invalid IL or missing references) //IL_034a: Unknown result type (might be due to invalid IL or missing references) //IL_0350: Expected O, but got Unknown Log = ((BaseUnityPlugin)this).Logger; Enabled = ((BaseUnityPlugin)this).Config.Bind("General", "Enabled", true, "Master switch for all sound replacements."); BonkEnabled = ((BaseUnityPlugin)this).Config.Bind("Bonk", "Enabled", true, "Enable bonk sound on melee hits."); BonkVolume = ((BaseUnityPlugin)this).Config.Bind("Bonk", "Volume", 0.15f, new ConfigDescription("Bonk volume.", (AcceptableValueBase)(object)new AcceptableValueRange(0f, 1f), Array.Empty())); ShotEnabled = ((BaseUnityPlugin)this).Config.Bind("Shot", "Enabled", true, "Enable shot sound on gun fire."); ShotVolume = ((BaseUnityPlugin)this).Config.Bind("Shot", "Volume", 0.1f, new ConfigDescription("Shot volume.", (AcceptableValueBase)(object)new AcceptableValueRange(0f, 1f), Array.Empty())); BunchEnabled = ((BaseUnityPlugin)this).Config.Bind("Bunch", "Enabled", true, "Enable bunch sound on tranq gun."); BunchVolume = ((BaseUnityPlugin)this).Config.Bind("Bunch", "Volume", 0.4f, new ConfigDescription("Bunch volume.", (AcceptableValueBase)(object)new AcceptableValueRange(0f, 1f), Array.Empty())); BooomEnabled = ((BaseUnityPlugin)this).Config.Bind("Booom", "Enabled", true, "Enable booom sound on grenade explosion."); BooomVolume = ((BaseUnityPlugin)this).Config.Bind("Booom", "Volume", 0.15f, new ConfigDescription("Booom volume.", (AcceptableValueBase)(object)new AcceptableValueRange(0f, 1f), Array.Empty())); StartEnabled = ((BaseUnityPlugin)this).Config.Bind("Start", "Enabled", true, "Enable okletsgo sound on lobby start."); StartVolume = ((BaseUnityPlugin)this).Config.Bind("Start", "Volume", 0.1f, new ConfigDescription("Okletsgo volume.", (AcceptableValueBase)(object)new AcceptableValueRange(0f, 1f), Array.Empty())); SilentClip = AudioClip.Create("Silent", 441, 1, 44100, false); SilentClip.SetData(new float[441], 0); ((MonoBehaviour)this).StartCoroutine(LoadEmbedded("bonk.wav", delegate(AudioClip c) { BonkClip = c; })); ((MonoBehaviour)this).StartCoroutine(LoadEmbedded("shot.wav", delegate(AudioClip c) { ShotClip = c; })); ((MonoBehaviour)this).StartCoroutine(LoadEmbedded("oklestgo.wav", delegate(AudioClip c) { StartClip = c; })); ((MonoBehaviour)this).StartCoroutine(LoadEmbedded("bunch.wav", delegate(AudioClip c) { BunchClip = c; })); ((MonoBehaviour)this).StartCoroutine(LoadEmbedded("booom.wav", delegate(AudioClip c) { BooomClip = c; })); new Harmony("com.rupleide.repomemesfx").PatchAll(); object obj = <>c.<>9__20_5; if (obj == null) { BuilderDelegate val = delegate(Transform parent) { //IL_002f: Unknown result type (might be due to invalid IL or missing references) MenuAPI.CreateREPOButton("RepoMemeSFX", (Action)delegate { //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Expected O, but got Unknown //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Expected O, but got Unknown //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Unknown result type (might be due to invalid IL or missing references) //IL_0090: Expected O, but got Unknown //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Expected O, but got Unknown //IL_00e3: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_00ee: Expected O, but got Unknown //IL_0112: Unknown result type (might be due to invalid IL or missing references) //IL_0117: Unknown result type (might be due to invalid IL or missing references) //IL_011d: Expected O, but got Unknown //IL_0141: Unknown result type (might be due to invalid IL or missing references) //IL_0146: Unknown result type (might be due to invalid IL or missing references) //IL_014c: Expected O, but got Unknown //IL_0170: Unknown result type (might be due to invalid IL or missing references) //IL_0175: Unknown result type (might be due to invalid IL or missing references) //IL_017b: Expected O, but got Unknown //IL_019f: Unknown result type (might be due to invalid IL or missing references) //IL_01a4: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Expected O, but got Unknown //IL_01ce: Unknown result type (might be due to invalid IL or missing references) //IL_01d3: Unknown result type (might be due to invalid IL or missing references) //IL_01d9: Expected O, but got Unknown //IL_01fd: Unknown result type (might be due to invalid IL or missing references) //IL_0202: Unknown result type (might be due to invalid IL or missing references) //IL_0208: Expected O, but got Unknown //IL_022c: Unknown result type (might be due to invalid IL or missing references) //IL_0231: Unknown result type (might be due to invalid IL or missing references) //IL_0237: Expected O, but got Unknown //IL_025b: Unknown result type (might be due to invalid IL or missing references) //IL_0260: Unknown result type (might be due to invalid IL or missing references) //IL_0266: Expected O, but got Unknown //IL_028a: Unknown result type (might be due to invalid IL or missing references) //IL_028f: Unknown result type (might be due to invalid IL or missing references) //IL_0295: Expected O, but got Unknown //IL_02b9: Unknown result type (might be due to invalid IL or missing references) //IL_02be: Unknown result type (might be due to invalid IL or missing references) //IL_02c4: Expected O, but got Unknown //IL_02e8: Unknown result type (might be due to invalid IL or missing references) //IL_02ed: Unknown result type (might be due to invalid IL or missing references) //IL_02f3: Expected O, but got Unknown REPOPopupPage obj2 = MenuAPI.CreateREPOPopupPage("RepoMemeSFX", (PresetSide)0, false, true, 1f); object obj3 = <>c.<>9__20_7; if (obj3 == null) { ScrollViewBuilderDelegate val2 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Mod Enabled", (Action)delegate(bool v) { Enabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", Enabled.Value)).rectTransform; <>c.<>9__20_7 = val2; obj3 = (object)val2; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj3, 0f, 0f); object obj4 = <>c.<>9__20_8; if (obj4 == null) { ScrollViewBuilderDelegate val3 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Bonk —", sv, Vector2.zero)).rectTransform; <>c.<>9__20_8 = val3; obj4 = (object)val3; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj4, 0f, 0f); object obj5 = <>c.<>9__20_9; if (obj5 == null) { ScrollViewBuilderDelegate val4 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Bonk Sound", (Action)delegate(bool v) { BonkEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BonkEnabled.Value)).rectTransform; <>c.<>9__20_9 = val4; obj5 = (object)val4; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj5, 0f, 0f); object obj6 = <>c.<>9__20_10; if (obj6 == null) { ScrollViewBuilderDelegate val5 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Bonk Volume", "", (Action)delegate(float f) { BonkVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BonkVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>c.<>9__20_10 = val5; obj6 = (object)val5; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj6, 0f, 0f); object obj7 = <>c.<>9__20_11; if (obj7 == null) { ScrollViewBuilderDelegate val6 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Shot —", sv, Vector2.zero)).rectTransform; <>c.<>9__20_11 = val6; obj7 = (object)val6; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj7, 0f, 0f); object obj8 = <>c.<>9__20_12; if (obj8 == null) { ScrollViewBuilderDelegate val7 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Shot Sound", (Action)delegate(bool v) { ShotEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", ShotEnabled.Value)).rectTransform; <>c.<>9__20_12 = val7; obj8 = (object)val7; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj8, 0f, 0f); object obj9 = <>c.<>9__20_13; if (obj9 == null) { ScrollViewBuilderDelegate val8 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Shot Volume", "", (Action)delegate(float f) { ShotVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, ShotVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>c.<>9__20_13 = val8; obj9 = (object)val8; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj9, 0f, 0f); object obj10 = <>c.<>9__20_14; if (obj10 == null) { ScrollViewBuilderDelegate val9 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Tranq Gun —", sv, Vector2.zero)).rectTransform; <>c.<>9__20_14 = val9; obj10 = (object)val9; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj10, 0f, 0f); object obj11 = <>c.<>9__20_15; if (obj11 == null) { ScrollViewBuilderDelegate val10 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Bunch Sound", (Action)delegate(bool v) { BunchEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BunchEnabled.Value)).rectTransform; <>c.<>9__20_15 = val10; obj11 = (object)val10; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj11, 0f, 0f); object obj12 = <>c.<>9__20_16; if (obj12 == null) { ScrollViewBuilderDelegate val11 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Bunch Volume", "", (Action)delegate(float f) { BunchVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BunchVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>c.<>9__20_16 = val11; obj12 = (object)val11; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj12, 0f, 0f); object obj13 = <>c.<>9__20_17; if (obj13 == null) { ScrollViewBuilderDelegate val12 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Grenade —", sv, Vector2.zero)).rectTransform; <>c.<>9__20_17 = val12; obj13 = (object)val12; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj13, 0f, 0f); object obj14 = <>c.<>9__20_18; if (obj14 == null) { ScrollViewBuilderDelegate val13 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Booom Sound", (Action)delegate(bool v) { BooomEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", BooomEnabled.Value)).rectTransform; <>c.<>9__20_18 = val13; obj14 = (object)val13; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj14, 0f, 0f); object obj15 = <>c.<>9__20_19; if (obj15 == null) { ScrollViewBuilderDelegate val14 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Booom Volume", "", (Action)delegate(float f) { BooomVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, BooomVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>c.<>9__20_19 = val14; obj15 = (object)val14; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj15, 0f, 0f); object obj16 = <>c.<>9__20_20; if (obj16 == null) { ScrollViewBuilderDelegate val15 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOLabel("— Lobby Start —", sv, Vector2.zero)).rectTransform; <>c.<>9__20_20 = val15; obj16 = (object)val15; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj16, 0f, 0f); object obj17 = <>c.<>9__20_21; if (obj17 == null) { ScrollViewBuilderDelegate val16 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOToggle("Okletsgo Sound", (Action)delegate(bool v) { StartEnabled.Value = v; }, sv, Vector2.zero, "ON", "OFF", StartEnabled.Value)).rectTransform; <>c.<>9__20_21 = val16; obj17 = (object)val16; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj17, 0f, 0f); object obj18 = <>c.<>9__20_22; if (obj18 == null) { ScrollViewBuilderDelegate val17 = (Transform sv) => ((REPOElement)MenuAPI.CreateREPOSlider("Okletsgo Volume", "", (Action)delegate(float f) { StartVolume.Value = f; }, sv, Vector2.zero, 0f, 1f, 2, StartVolume.Value, "", "", (BarBehavior)0)).rectTransform; <>c.<>9__20_22 = val17; obj18 = (object)val17; } obj2.AddElementToScrollView((ScrollViewBuilderDelegate)obj18, 0f, 0f); obj2.OpenPage(false); }, parent, new Vector2(0f, -50f)); }; <>c.<>9__20_5 = val; obj = (object)val; } MenuAPI.AddElementToMainMenu((BuilderDelegate)obj); Log.LogInfo((object)"RepoMemeSFX v1.0.0 loaded."); } [IteratorStateMachine(typeof(d__21))] private IEnumerator LoadEmbedded(string fileName, Action callback) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new d__21(0) { fileName = fileName, callback = callback }; } internal static AudioSource GetOrCreateDedicated(AudioSource source) { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_0056: Unknown result type (might be due to invalid IL or missing references) if (DedicatedSources.TryGetValue(source, out AudioSource value) && (Object)(object)value != (Object)null) { return value; } GameObject val = new GameObject("RSR_Shot"); val.transform.SetParent(((Component)source).transform, false); AudioSource val2 = val.AddComponent(); val2.spatialBlend = source.spatialBlend; val2.volume = source.volume; val2.rolloffMode = source.rolloffMode; val2.maxDistance = source.maxDistance; DedicatedSources[source] = val2; return val2; } } [HarmonyPatch(typeof(MenuPageLobby), "ButtonStart")] internal static class LobbyStartPatch { [HarmonyPrefix] private static void Prefix() { //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Unknown result type (might be due to invalid IL or missing references) //IL_0038: Expected O, but got Unknown //IL_0038: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Expected O, but got Unknown if (RepoMemeSFXPlugin.Enabled.Value && RepoMemeSFXPlugin.StartEnabled.Value && !((Object)(object)RepoMemeSFXPlugin.StartClip == (Object)null)) { GameObject val = new GameObject("RSR_StartSound"); Object.DontDestroyOnLoad((Object)val); AudioSource obj = val.AddComponent(); obj.clip = RepoMemeSFXPlugin.StartClip; obj.spatialBlend = 0f; obj.volume = RepoMemeSFXPlugin.StartVolume.Value; obj.Play(); Object.Destroy((Object)val, RepoMemeSFXPlugin.StartClip.length + 0.5f); } } } [HarmonyPatch(typeof(ItemMelee), "EnemySwingHit")] internal static class MeleeEnemyPatch { [HarmonyPostfix] private static void Postfix(ItemMelee __instance) { //IL_0006: Unknown result type (might be due to invalid IL or missing references) MeleeHelper.PlayBonk(((Component)__instance).transform.position); } } [HarmonyPatch(typeof(ItemMelee), "PlayerSwingHit")] internal static class MeleePlayerPatch { [HarmonyPostfix] private static void Postfix(ItemMelee __instance) { //IL_0006: Unknown result type (might be due to invalid IL or missing references) MeleeHelper.PlayBonk(((Component)__instance).transform.position); } } internal static class MeleeHelper { internal static void PlayBonk(Vector3 position) { //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Unknown result type (might be due to invalid IL or missing references) //IL_0038: Unknown result type (might be due to invalid IL or missing references) //IL_003e: Unknown result type (might be due to invalid IL or missing references) //IL_00a1: Expected O, but got Unknown if (RepoMemeSFXPlugin.Enabled.Value && RepoMemeSFXPlugin.BonkEnabled.Value && !((Object)(object)RepoMemeSFXPlugin.BonkClip == (Object)null)) { GameObject val = new GameObject("RSR_Bonk"); val.transform.position = position; AudioSource obj = val.AddComponent(); obj.clip = RepoMemeSFXPlugin.BonkClip; obj.spatialBlend = 1f; obj.rolloffMode = (AudioRolloffMode)1; obj.maxDistance = 30f; obj.pitch = 1f; obj.volume = RepoMemeSFXPlugin.BonkVolume.Value; obj.Play(); Object.Destroy((Object)val, RepoMemeSFXPlugin.BonkClip.length + 0.2f); } } } [HarmonyPatch(typeof(AudioSource))] internal static class AudioSourcePatch { [HarmonyPatch("PlayOneShot", new Type[] { typeof(AudioClip), typeof(float) })] [HarmonyPrefix] private static bool PlayOneShot_Prefix(AudioSource __instance, ref AudioClip __0, ref float __1) { if ((Object)(object)__0 == (Object)null) { return true; } return Handle(__instance, ref __0, ref __1); } [HarmonyPatch("set_clip")] [HarmonyPrefix] private static bool SetClip_Prefix(AudioSource __instance, ref AudioClip value) { if ((Object)(object)value == (Object)null) { return true; } float volume = 1f; return Handle(__instance, ref value, ref volume); } private static bool Handle(AudioSource source, ref AudioClip clip, ref float volume) { if (!RepoMemeSFXPlugin.Enabled.Value) { return true; } string text = ((Object)clip).name.ToLower(); foreach (SoundReplacement replacement in RepoMemeSFXPlugin.Replacements) { if (text.Contains(replacement.TargetName.ToLower())) { if (!replacement.IsBunch && !replacement.IsBooom) { _ = !replacement.IsMelee; } else _ = 0; if (!(replacement.IsBooom ? RepoMemeSFXPlugin.BooomEnabled.Value : (replacement.IsBunch ? RepoMemeSFXPlugin.BunchEnabled.Value : RepoMemeSFXPlugin.ShotEnabled.Value))) { return true; } float num = (replacement.IsBooom ? RepoMemeSFXPlugin.BooomVolume.Value : (replacement.IsBunch ? RepoMemeSFXPlugin.BunchVolume.Value : RepoMemeSFXPlugin.ShotVolume.Value)); AudioClip val = (replacement.IsBooom ? RepoMemeSFXPlugin.BooomClip : (replacement.IsBunch ? RepoMemeSFXPlugin.BunchClip : RepoMemeSFXPlugin.ShotClip)); if ((Object)(object)val == (Object)null) { return true; } volume = num; if (replacement.PlayAsTemporary && (Object)(object)source != (Object)null) { AudioSource orCreateDedicated = RepoMemeSFXPlugin.GetOrCreateDedicated(source); orCreateDedicated.spatialBlend = source.spatialBlend; orCreateDedicated.volume = volume; orCreateDedicated.pitch = 1f; orCreateDedicated.Stop(); orCreateDedicated.clip = val; orCreateDedicated.Play(); clip = RepoMemeSFXPlugin.SilentClip; volume = 0f; return true; } clip = val; if ((Object)(object)source != (Object)null) { source.pitch = 1f; } return true; } } return true; } } }