Notice: Wrestling Empire is now using Steam Workshop for official mod support. This page is going to remain accessible, but it's likely the content is not going to be kept up to date.
Decompiled source of OnePunch v1.1.2
plugins/OnePunch.dll
Decompiled 6 months agousing System; 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 Microsoft.CodeAnalysis; using UnityEngine; [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.0", FrameworkDisplayName = ".NET Standard 2.0")] [assembly: AssemblyCompany("OnePunch")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("OnePunch")] [assembly: AssemblyTitle("OnePunch")] [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 OnePunch { [BepInPlugin("GeeEm.WrestlingEmpire.OnePunch", "OnePunch", "1.1.2")] [HarmonyPatch] public class Plugin : BaseUnityPlugin { [HarmonyPatch(typeof(DFOGOCNBECG))] public static class DFOGOCNBECG_Patch { [HarmonyPatch("DIIMPIPKAFK")] [HarmonyPrefix] private static void DIIMPIPKAFK_Prefix(DFOGOCNBECG __instance, DFOGOCNBECG ELPIOHCPOIJ, int DODBHICKEPB, float CLNCAKDCODN, float FJDILPBOGEJ) { if (__instance.EMDMDLNJFKP.id == Characters.wrestler) { if (NoHealthAndStun.Value) { DamageStun(ELPIOHCPOIJ); } if (Dizzyness.Value) { DizzyTarget(ELPIOHCPOIJ); } if (InjureTarget.Value) { Injure(ELPIOHCPOIJ); } if (KOTarget.Value) { KnockOut(ELPIOHCPOIJ); } } } [HarmonyPatch("MHNNBEOCPGA")] [HarmonyPrefix] private static void MHNNBEOCPGA_Prefix(DFOGOCNBECG __instance, int MKCPMOJGBEM, float FPLEMEKHJLD, float FJDILPBOGEJ) { if (__instance.EMDMDLNJFKP.id == Characters.wrestler && (__instance.DPHHFKLDOOG > 0 || __instance.ELPIOHCPOIJ.NLDPMDNKGIC == 643 || __instance.ELPIOHCPOIJ.NLDPMDNKGIC == 644)) { if (NoHealthAndStun.Value) { DamageStun(__instance.ELPIOHCPOIJ); } if (Dizzyness.Value) { DizzyTarget(__instance.ELPIOHCPOIJ); } if (InjureTarget.Value) { Injure(__instance.ELPIOHCPOIJ); } if (KOTarget.Value) { KnockOut(__instance.ELPIOHCPOIJ); } } } [HarmonyPatch("LKGOPCPNDNK")] [HarmonyPrefix] private static void LKGOPCPNDNK_Prefix(DFOGOCNBECG __instance, DFOGOCNBECG __0, int __1, float __2) { if (__instance.EMDMDLNJFKP.id == Characters.wrestler) { if (NoHealthAndStun.Value) { DamageStun(__0); } if (Dizzyness.Value) { DizzyTarget(__0); } if (InjureTarget.Value) { Injure(__0); } if (KOTarget.Value) { KnockOut(__0); } } } [HarmonyPatch("PFGONEIPHLJ")] [HarmonyPrefix] private static void PFGONEIPHLJ_Prefix(DFOGOCNBECG __instance, float KCMMOFECACH, float HAFBGEAMBMI, float JHCBBFEIKHL, int HNMOIBIFJID, float CLNCAKDCODN, float FJDILPBOGEJ) { if (__instance.EMDMDLNJFKP.id != Characters.wrestler) { return; } HAFBGEAMBMI *= __instance.JNLAJNFCDHA; KCMMOFECACH *= __instance.JNLAJNFCDHA; float nJDGEELLAKG = __instance.NJDGEELLAKG; float bMFDFFLPBOJ = __instance.BMFDFFLPBOJ; float num = HAFBGEAMBMI; if (num < KCMMOFECACH / 2f) { num = KCMMOFECACH / 2f; } nJDGEELLAKG += NAEEIFNFBBO.PDOBPEFCMCK(__instance.PJJFOALHEPF, num); bMFDFFLPBOJ += NAEEIFNFBBO.GPMMBFPCFFL(__instance.PJJFOALHEPF, num); CLNCAKDCODN *= 0.5f + __instance.HNFHLLJOFKI[2] / 200f; int num2 = 0; int num3 = 0; int num4 = 0; float num5 = 9999f; for (int i = 1; i <= NJBJIIIACEP.NBBBLJDBLNM; i++) { DFOGOCNBECG val = NJBJIIIACEP.OAAMGFLINOB[i]; if (i == __instance.PLFGKLGCOMD || !(val.AHBNKMMMGFI > 0f) || __instance.KPEFINJBJLJ[i] != 0 || LIPNHOMGGHF.FAKHAFKOBPB == 60) { continue; } int num6 = val.KFHGMKAKGDC(); if ((HNMOIBIFJID <= 0 || num6 <= 0) && num6 < 3) { continue; } float num7 = (val.DFINJNKKMFL(1) + val.DFINJNKKMFL(3)) / 2f; num7 += 4f * (__instance.JNLAJNFCDHA * val.JNLAJNFCDHA); if (i == __instance.NNMDEFLLNBF) { } if (!(JHCBBFEIKHL > val.FNNBCDPJBIO - 3f) || !(JHCBBFEIKHL <= num7)) { continue; } int num8 = val.MDOAGGHHHDC(nJDGEELLAKG, bMFDFFLPBOJ, KCMMOFECACH); if (num8 == 0) { num8 = val.MDOAGGHHHDC((__instance.NJDGEELLAKG + nJDGEELLAKG) / 2f, (__instance.BMFDFFLPBOJ + bMFDFFLPBOJ) / 2f, KCMMOFECACH / 2f); } if (__instance.GDIEPKEPCAJ() == 0 && num6 >= 3 && val.ECCLLOHOJDO(10) > 0 && __instance.KDDHPODFDHB != -1) { num8 = 0; } if (val.DFINJNKKMFL(1) > val.FNNBCDPJBIO + 10f * val.JNLAJNFCDHA) { num8 = 0; } if (num8 > 0 && __instance.GDIEPKEPCAJ() > 0) { if (__instance.GEPLNBJEDLH[9] < 0 && __instance.GEPLNBJEDLH[12] < 0) { num8 = 0; } if (GIMNNPMAKNJ.JIHKMLJICDO(__instance.NJDGEELLAKG, __instance.BMFDFFLPBOJ, 0f) != GIMNNPMAKNJ.JIHKMLJICDO(val.NJDGEELLAKG, val.BMFDFFLPBOJ, 0f)) { num8 = 0; } if (Mathf.Abs(__instance.EKOHAKPAOGN - val.EKOHAKPAOGN) > 2f || Mathf.Abs(__instance.FNNBCDPJBIO - val.FNNBCDPJBIO) > 2f || __instance.NELODEMHJHN != val.NELODEMHJHN) { num8 = 0; } if (__instance.KPEFINJBJLJ[0] != 0) { num8 = 0; } if ((__instance.NEMJMNEGAAH(i) > 0 || val.FIEMGOLBHIO == 3) && __instance.NNMDEFLLNBF > 0 && __instance.NNMDEFLLNBF != i && __instance.JKIPPBBKNOC != i) { num8 = 0; } } if (val.CJAFIDDNBOC() > 0) { num8 = 0; } if (GIMNNPMAKNJ.DMPAOJMIAHN(__instance.NJDGEELLAKG, __instance.DFINJNKKMFL(1), __instance.BMFDFFLPBOJ, val.NJDGEELLAKG, val.DFINJNKKMFL(1), val.BMFDFFLPBOJ) > 0) { num8 = 0; } if (num8 > 0) { float num9 = NAEEIFNFBBO.FHPCDHIGILG(nJDGEELLAKG, bMFDFFLPBOJ, val.NJDGEELLAKG, val.BMFDFFLPBOJ); if (num6 <= 2) { num9 *= 4f; } if (__instance.GDIEPKEPCAJ() > 0 && val.MKKDHANKPEN > 0) { num9 *= 2f; } if ((__instance.NEMJMNEGAAH(i) > 0 || val.FIEMGOLBHIO == 3) && __instance.NNMDEFLLNBF != i && __instance.JKIPPBBKNOC != i) { num9 *= 10f; } if (num9 < num5) { num3 = 1; num2 = i; num4 = num8; num5 = num9; } } } if (__instance.KPEFINJBJLJ[0] == 0 && __instance.GPKBOEBABNI[0] == 0 && __instance.GDIEPKEPCAJ() == 0) { for (int j = 1; j <= HAPFAOIMGOL.HOEGNFNHMOA; j++) { GGKBLABCJFN val2 = HAPFAOIMGOL.OMOGPIJGMKO[j]; if (val2.LOBDMDPMFLK < 0 || (val2.LOBDMDPMFLK > 0 && HNMOIBIFJID >= 2)) { float num10 = NAEEIFNFBBO.FHPCDHIGILG(__instance.NJDGEELLAKG, __instance.BMFDFFLPBOJ, val2.NJDGEELLAKG, val2.BMFDFFLPBOJ); if (val2.GBLDMIAPNEP(nJDGEELLAKG, JHCBBFEIKHL, bMFDFFLPBOJ, 0f) > 0 && j != __instance.NELODEMHJHN && num10 < num5) { num3 = 2; num2 = j; num5 = num10; } } } } if (num3 == 1 && num2 > 0) { int num11 = num2; DFOGOCNBECG instance = NJBJIIIACEP.OAAMGFLINOB[num11]; if (NoHealthAndStun.Value) { DamageStun(instance); } if (Dizzyness.Value) { DizzyTarget(instance); } if (InjureTarget.Value) { Injure(instance); } if (KOTarget.Value) { KnockOut(instance); } } } } public const string PluginGuid = "GeeEm.WrestlingEmpire.OnePunch"; public const string PluginName = "OnePunch"; public const string PluginVer = "1.1.2"; internal static ManualLogSource Log; internal static readonly Harmony Harmony = new Harmony("GeeEm.WrestlingEmpire.OnePunch"); internal static string PluginPath; public static ConfigEntry<bool> NoHealthAndStun; public static ConfigEntry<bool> Dizzyness; public static ConfigEntry<bool> InjureTarget; public static ConfigEntry<bool> KOTarget; private void Awake() { Log = ((BaseUnityPlugin)this).Logger; PluginPath = Path.GetDirectoryName(((BaseUnityPlugin)this).Info.Location); NoHealthAndStun = ((BaseUnityPlugin)this).Config.Bind<bool>("General", "No Health", true, "Punches will remove all health and stun the target"); Dizzyness = ((BaseUnityPlugin)this).Config.Bind<bool>("General", "Dizzyness", true, "Punches will apply dizzyness to the target"); InjureTarget = ((BaseUnityPlugin)this).Config.Bind<bool>("General", "Injure", false, "Punches will injure the target"); KOTarget = ((BaseUnityPlugin)this).Config.Bind<bool>("General", "Knock out", false, "Punches will DQ and knock out the target"); } private void OnEnable() { Harmony.PatchAll(); ((BaseUnityPlugin)this).Logger.LogInfo((object)"Loaded OnePunch!"); } private void OnDisable() { Harmony.UnpatchSelf(); ((BaseUnityPlugin)this).Logger.LogInfo((object)"Unloaded OnePunch!"); } public static void Injure(DFOGOCNBECG instance) { instance.PGJEOKAEPCL = Random.Range(1, 31); if (FFCEGMEAIBP.LOBDMDPMFLK == 0 && instance.EMDMDLNJFKP.injuryTime < 2) { instance.EMDMDLNJFKP.injuryTime = 2; } CHLPMKEGJBJ.BPLLANFDDDP(instance.GPGOFIFBCLP, CHLPMKEGJBJ.KEMDEGPNJAD[NAEEIFNFBBO.PMEEFNOLAGF(1, 2, 0)], -0.1f, 1f); instance.KMGCIKMAJCJ(NAEEIFNFBBO.PMEEFNOLAGF(2, 3, 0), 1f); if (FFCEGMEAIBP.FEAOFHKANPP == 16) { CHLPMKEGJBJ.KIKKPCJGDLM(0, NAEEIFNFBBO.CFPJBJFFJFH(3, 20), 1f); FFCEGMEAIBP.MBJFIEPNHPP *= 0.8f; } else { CHLPMKEGJBJ.KIKKPCJGDLM(0, -1, 1f); CHLPMKEGJBJ.KIKKPCJGDLM(0, NAEEIFNFBBO.PMEEFNOLAGF(16, 20, 0), 0f); FFCEGMEAIBP.MBJFIEPNHPP += instance.HNFHLLJOFKI[1] * (instance.HNFHLLJOFKI[1] / 10f) * instance.DFKNBACDFGM(0); if (FFCEGMEAIBP.NHMKFGOLHJA == 16) { FFCEGMEAIBP.MBJFIEPNHPP += instance.HNFHLLJOFKI[1] * (instance.HNFHLLJOFKI[1] / 10f) * instance.DFKNBACDFGM(0); } } FFCEGMEAIBP.IJOIMLGJION += 250f * instance.DFKNBACDFGM(0); instance.HLGALFAGDGC /= 2f; instance.BBBGPIILOBB /= 2f; if (FFCEGMEAIBP.LOBDMDPMFLK != 0) { for (int i = 1; i <= NJBJIIIACEP.NBBBLJDBLNM; i++) { if (NJBJIIIACEP.OAAMGFLINOB[i].FIEMGOLBHIO == 3 || NJBJIIIACEP.OAAMGFLINOB[i].FIEMGOLBHIO == 0) { NJBJIIIACEP.OAAMGFLINOB[i].PFHOHKJMLLN = 48; } } } Characters.LPGPAKHJMMA(NJBJIIIACEP.OAAMGFLINOB[instance.JNNBBJKLEFK].GOOKPABIPBC, instance.GOOKPABIPBC); NJBJIIIACEP.PKGACKAGENN(instance.JNNBBJKLEFK, instance.PLFGKLGCOMD, 1); } public static void KnockOut(DFOGOCNBECG instance) { instance.DMEDPMIPBAO = 1; if (FFCEGMEAIBP.LOBDMDPMFLK > 0 && instance.FIEMGOLBHIO == 1 && instance.MGPDGDCIBGC == 0f) { FFCEGMEAIBP.NCAAOLGAGCG(instance.JNNBBJKLEFK, instance.PLFGKLGCOMD); } instance.MGPDGDCIBGC = 1f; FFCEGMEAIBP.JPBHIEOKODO = FFCEGMEAIBP.BCENJCEONEB(1); if (FFCEGMEAIBP.JPBHIEOKODO == 0) { FFCEGMEAIBP.CADLONHABMC = 0; if (FFCEGMEAIBP.GDKCEGBINCM >= 1 && FFCEGMEAIBP.GDKCEGBINCM <= 2) { FFCEGMEAIBP.GDKCEGBINCM = 0; } } } public static void DamageStun(DFOGOCNBECG instance) { instance.HLGALFAGDGC = 0f; instance.OIHGGHEDIFF = 0f; instance.OKPAGLBJIOH = float.MaxValue; } public static void DizzyTarget(DFOGOCNBECG instance) { instance.FLOPBFFLLDE = float.MinValue; } } }