using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using BepInEx; using Jotunn.Utils; using Microsoft.CodeAnalysis; using ModdingUtils.Extensions; using ModdingUtils.Utils; using UnboundLib.Cards; using UnboundLib.GameModes; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(/*Could not decode attribute arguments.*/)] [assembly: TargetFramework(".NETFramework,Version=v4.7.1", FrameworkDisplayName = ".NET Framework 4.7.1")] [assembly: AssemblyVersion("0.0.0.0")] [module: RefSafetyRules(11)] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Embedded] [AttributeUsage(/*Could not decode attribute arguments.*/)] internal sealed class RefSafetyRulesAttribute : Attribute { public readonly int Version; public RefSafetyRulesAttribute(int P_0) { Version = P_0; } } } public class A_AmmoGain : MonoBehaviour { public void AddAmmo() { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Expected O, but got Unknown //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000d: Expected O, but got Unknown GunAmmo val = new GunAmmo(); GunAmmoStatModifier val2 = new GunAmmoStatModifier(); val2.currentAmmo_delta += 3; val2.ApplyGunAmmoStatModifier(val); } } public class A_CoolMushroom : MonoBehaviour { [CompilerGenerated] private sealed class d__4 : Object, IEnumerator, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public A_CoolMushroom <>4__this; object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public d__4(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { if (<>1__state != 0) { return false; } <>1__state = -1; if (<>4__this.owner.data.view.IsMine) { <>4__this.owner.data.maxHealth = <>4__this.rnd.Next(1, 201) / 100; <>4__this.owner.data.stats.movementSpeed = 1f * <>4__this.mults[<>4__this.rnd.Next(4, 13)]; <>4__this.owner.data.jumps = 1 + <>4__this.rnd.Next(0, 5); <>4__this.owner.data.weaponHandler.gun.damage = <>4__this.rnd.Next(1, 201) / 100; <>4__this.owner.data.block.cooldown = 4f * <>4__this.mults[<>4__this.rnd.Next(4, 13)]; <>4__this.owner.data.weaponHandler.gun.attackSpeed = 0.3f * <>4__this.mults[<>4__this.rnd.Next(0, 18)]; <>4__this.owner.data.weaponHandler.gun.projectileSpeed = 1f * <>4__this.mults[<>4__this.rnd.Next(4, 13)]; <>4__this.owner.data.weaponHandler.gun.reloadTime = 2f * <>4__this.mults[<>4__this.rnd.Next(0, 18)]; } return false; } [DebuggerHidden] void IEnumerator.Reset() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) throw new NotSupportedException(); } } private Random rnd = new Random(); private Player owner; private float[] mults; public void Start() { owner = ((Component)this).GetComponentInParent(); GameModeManager.AddHook("BattleStart", (Func)([CompilerGenerated] (IGameModeHandler _) => Trigger())); } [IteratorStateMachine(/*Could not decode attribute arguments.*/)] public IEnumerator Trigger() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return (IEnumerator)(object)new d__4(0) { <>4__this = this }; } public void OnDestroy() { GameModeManager.RemoveHook("BattleStart", (Func)([CompilerGenerated] (IGameModeHandler _) => Trigger())); } public A_CoolMushroom() { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_000b: Expected O, but got Unknown Single[] array = new Single[18]; RuntimeHelpers.InitializeArray((Array)(object)array, (RuntimeFieldHandle)/*OpCode not supported: LdMemberToken*/); mults = (float[])(object)array; ((MonoBehaviour)this)..ctor(); } } public class CardHolder : MonoBehaviour { public List Cards; public List HiddenCards; internal void RegisterCards() { //IL_0008: Unknown result type (might be due to invalid IL or missing references) //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0054: Unknown result type (might be due to invalid IL or missing references) //IL_0059: Unknown result type (might be due to invalid IL or missing references) Enumerator enumerator = Cards.GetEnumerator(); try { while (enumerator.MoveNext()) { GameObject current = enumerator.Current; CustomCard.RegisterUnityCard(current, BestModFromCupuyc.modInitials, current.GetComponent().cardName, true, (Action)null); } } finally { ((IDisposable)enumerator).Dispose(); } Enumerator enumerator2 = HiddenCards.GetEnumerator(); try { while (enumerator2.MoveNext()) { GameObject current2 = enumerator2.Current; CustomCard.RegisterUnityCard(current2, BestModFromCupuyc.modInitials, current2.GetComponent().cardName, false, (Action)null); Cards.instance.AddHiddenCard(current2.GetComponent()); } } finally { ((IDisposable)enumerator2).Dispose(); } } } public class JumpShoot : MonoBehaviour { private Player owner; public void Start() { owner = ((Component)this).GetComponentInParent(); } public void Update() { //IL_0028: Unknown result type (might be due to invalid IL or missing references) //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_00f2: Unknown result type (might be due to invalid IL or missing references) //IL_00fc: Unknown result type (might be due to invalid IL or missing references) //IL_010c: Unknown result type (might be due to invalid IL or missing references) //IL_0111: Unknown result type (might be due to invalid IL or missing references) if (!owner.data.view.IsMine) { return; } Enumerator enumerator = PlayerManager.instance.players.GetEnumerator(); try { while (enumerator.MoveNext()) { Player current = enumerator.Current; if (current.teamID != owner.teamID && !owner.data.isGrounded && owner.data.currentJumps != owner.data.jumps && Math.Abs(owner.data.groundPos.x - current.data.groundPos.x) < 2f && current.data.groundPos.y < owner.data.groundPos.y) { ((Damagable)current.data.healthHandler).CallTakeDamage(Vector2.down * 0.2f, Vector2.op_Implicit(((Component)owner).transform.position), (GameObject)null, owner, true); } } } finally { ((IDisposable)enumerator).Dispose(); } } } [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInPlugin("rounds.unbound.plugin.bestmodfromcupuyc", "Best mod from Cupuyc", "0.0.1")] [BepInProcess("Rounds.exe")] public class BestModFromCupuyc : BaseUnityPlugin { internal static string modInitials = "BMFC"; internal static AssetBundle assets; private void Awake() { assets = AssetUtils.LoadAssetBundleFromResources("assets", typeof(BestModFromCupuyc).Assembly); } private void Start() { assets.LoadAsset("ModCards").GetComponent().RegisterCards(); } } public class PunchClass : MonoBehaviour { [CompilerGenerated] private sealed class d__2 : Object, IEnumerator, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public PunchClass <>4__this; object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public d__2(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_014f: Unknown result type (might be due to invalid IL or missing references) //IL_0154: Unknown result type (might be due to invalid IL or missing references) if (<>1__state != 0) { return false; } <>1__state = -1; if (<>4__this.owner.data.view.IsMine) { <>4__this.owner.data.weaponHandler.gun.dontAllowAutoFire = true; <>4__this.owner.data.weaponHandler.gun.ammo = 1; <>4__this.owner.data.weaponHandler.gun.projectileSpeed = 1f; <>4__this.owner.data.weaponHandler.gun.destroyBulletAfter = 0.15f; <>4__this.owner.data.weaponHandler.gun.reflects = 0; <>4__this.owner.data.weaponHandler.gun.cos = 0f; <>4__this.owner.data.weaponHandler.gun.spread = 0f; <>4__this.owner.data.weaponHandler.gun.projectileColor = GetPlayerColor.GetColorMin(<>4__this.owner); } return false; } [DebuggerHidden] void IEnumerator.Reset() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) throw new NotSupportedException(); } } private Player owner; public void Start() { owner = ((Component)this).GetComponentInParent(); GameModeManager.AddHook("BattleStart", (Func)([CompilerGenerated] (IGameModeHandler _) => Trigger())); } [IteratorStateMachine(/*Could not decode attribute arguments.*/)] public IEnumerator Trigger() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return (IEnumerator)(object)new d__2(0) { <>4__this = this }; } public void OnDestroy() { GameModeManager.RemoveHook("BattleStart", (Func)([CompilerGenerated] (IGameModeHandler _) => Trigger())); } } public class RockBottom : MonoBehaviour { private Player owner; private float hp; private float dmg; private float spd; private float bcd; private float atkspd; private float bspd; private float rld; public void Start() { owner = ((Component)this).GetComponentInParent(); } public void Update() { if (rld != owner.data.weaponHandler.gun.reloadTime && spd != owner.data.stats.movementSpeed) { hp = owner.data.stats.health; spd = owner.data.stats.movementSpeed; bcd = owner.data.block.cooldown; atkspd = owner.data.weaponHandler.gun.attackSpeed; dmg = owner.data.weaponHandler.gun.damage; bspd = owner.data.weaponHandler.gun.projectileSpeed; rld = owner.data.weaponHandler.gun.reloadTime; } if (100f > owner.data.stats.health) { owner.data.stats.health = 100f; } if (1f > owner.data.stats.movementSpeed) { owner.data.stats.movementSpeed = 1f; } if (4f < owner.data.block.cooldown) { owner.data.block.cooldown = 4f; } if (1f < owner.data.weaponHandler.gun.attackSpeed) { owner.data.weaponHandler.gun.attackSpeed = 1f; } if (1f > owner.data.weaponHandler.gun.damage) { owner.data.weaponHandler.gun.damage = 1f; } if (1f > owner.data.weaponHandler.gun.projectileSpeed) { owner.data.weaponHandler.gun.projectileSpeed = 1f; } if (2f < owner.data.weaponHandler.gun.reloadTime) { owner.data.weaponHandler.gun.reloadTime = 2f; } } }