Decompiled source of FentoKill v2.4.164
FentoKill.dll
Decompiled a week ago
The result has been truncated due to the large size, download it to view full contents!
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.Logging; using FentoKill; using HarmonyLib; using PluginConfig.API; using PluginConfig.API.Decorators; using PluginConfig.API.Fields; using TMPro; using UnityEngine; using UnityEngine.AI; using UnityEngine.AddressableAssets; using UnityEngine.AddressableAssets.ResourceLocators; using UnityEngine.InputSystem; using UnityEngine.ResourceManagement.AsyncOperations; using UnityEngine.ResourceManagement.ResourceLocations; using UnityEngine.SceneManagement; using UnityEngine.UI; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: AssemblyTitle("FentoKill")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("FentoKill")] [assembly: AssemblyCopyright("Copyright © 2025")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("d24676a8-4da0-4d43-a77a-48484b462e3c")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] [assembly: AssemblyVersion("1.0.0.0")] public class a { public static void Collect() { string text = ""; int num = 0; IList<IResourceLocation> list = default(IList<IResourceLocation>); foreach (IResourceLocator resourceLocator in Addressables.ResourceLocators) { foreach (object key in resourceLocator.Keys) { if (!resourceLocator.Locate(key, typeof(object), ref list)) { continue; } foreach (IResourceLocation item in list) { text = text + item.PrimaryKey + "\n"; num++; } } } object obj = Path.Combine(Path.GetDirectoryName(typeof(Fento_Loader).Assembly.Location), "Addressables.txt"); File.WriteAllText((string)obj, text); if (obj == null) { obj = ""; } Debug.LogError(obj); Debug.LogError((object)$"Done! Total Assets: {num}"); } } namespace FentoKill; public static class Fento_Utils { public enum DetectebleEnemies { Super_Projectile_Zombie, Minotaur, Body, MinosBoss, DroneSkull_Variant, Guttertank, Zombie, Mandalore, Gutterman, Gabriel, V2, Big_Johninator, DroneFlesh, Gabriel_2nd_Variant, Flesh_Prison, Turret, Streetcleaner, Virtue, DroneFleshCamera_Variant, Wicked, MinosPrime, ShotgunHusk, Ferryman, Mindflayer, Sisyphus, Idol, Drone, CentaurMortar, Mannequin, Projectile_Zombie, CentaurTower, Puppet, SisyphusPrime, Very_Cancerous_Rodent, V2_Green_Arm_Variant, Stalker, Cancerous_Rodent, Mass, CentaurRocketLauncher, Flesh_Prison_2, SwordsMachineNonboss, Cerberus } public class AddresableObject { [CompilerGenerated] private sealed class <Long_Load>d__6 : IEnumerator<object>, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; public AddresableObject <>4__this; private AsyncOperationHandle<GameObject> <handle>5__2; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Long_Load>d__6(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { //IL_0006: Unknown result type (might be due to invalid IL or missing references) <handle>5__2 = default(AsyncOperationHandle<GameObject>); <>1__state = -2; } private bool MoveNext() { //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) //IL_0060: Unknown result type (might be due to invalid IL or missing references) //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008b: Invalid comparison between Unknown and I4 int num = <>1__state; AddresableObject addresableObject = <>4__this; switch (num) { default: return false; case 0: <>1__state = -1; if ((Object)(object)addresableObject.obj != (Object)null) { Fento_Loader._Logger.LogWarning((object)("[Long_Load] - " + addresableObject.path + " Already Loaded - !!!")); return false; } <handle>5__2 = Addressables.LoadAssetAsync<GameObject>((object)addresableObject.path); <>2__current = <handle>5__2; <>1__state = 1; return true; case 1: <>1__state = -1; if ((int)<handle>5__2.Status == 1) { addresableObject.fast_load = false; addresableObject.obj = <handle>5__2.Result; Fento_Loader._Logger.LogInfo((object)("[Long_Load] - " + addresableObject.path + " Loaded Without Errors")); } else { Fento_Loader._Logger.LogError((object)("[Long_Load] - Failed to load asset at path: " + addresableObject.path)); } return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } public bool fast_load; public string path; public GameObject obj; public GameObject Object { get { //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_003b: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)obj == (Object)null) { Fento_Loader._Logger.LogInfo((object)("[Fast_Load] - Loading " + path)); fast_load = true; obj = Addressables.LoadAssetAsync<GameObject>((object)path).WaitForCompletion(); } return obj; } } public Transform[] childs => GetAllChilds(transform); public Transform transform { get { if ((Object)(object)Object != (Object)null) { return Object.transform; } return null; } } public GameObject gameObject => Object; public T GetComponent<T>() { if ((Object)(object)Object != (Object)null) { return Object.GetComponent<T>(); } return default(T); } [IteratorStateMachine(typeof(<Long_Load>d__6))] public IEnumerator Long_Load() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Long_Load>d__6(0) { <>4__this = this }; } public Transform GetChild(int id) { if ((Object)(object)transform != (Object)null) { return transform.GetChild(id); } return null; } public AddresableObject(string path) { this.path = path; fast_load = false; obj = null; } public static implicit operator AddresableObject(string path) { return new AddresableObject(path); } public override string ToString() { return path; } } public struct PathObject { public string path; public GameObject obj; public GameObject Object { get { if ((Object)(object)obj == (Object)null) { obj = FindObjectByPath(path); } return obj; } } public Transform[] childs => GetAllChilds(transform); public Transform transform { get { if ((Object)(object)Object != (Object)null) { return Object.transform; } return null; } } public GameObject gameObject => Object; public T GetComponent<T>() { if ((Object)(object)Object != (Object)null) { return Object.GetComponent<T>(); } return default(T); } public Transform _GetChild(int id) { if ((Object)(object)transform != (Object)null) { return transform.GetChild(id); } return null; } public PathObject(string path) { this.path = path; obj = null; } public static implicit operator PathObject(string path) { return new PathObject(path); } public override string ToString() { return path; } } [CompilerGenerated] private sealed class <Delay_Coroutine>d__3 : IEnumerator<object>, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; public float time; public Action action; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Delay_Coroutine>d__3(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_001e: Unknown result type (might be due to invalid IL or missing references) //IL_0028: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <>2__current = (object)new WaitForSeconds(time); <>1__state = 1; return true; case 1: <>1__state = -1; try { action?.Invoke(); } catch { Fento_Loader._Logger.LogError((object)"Delay_Coroutine - Error Detected"); } return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [CompilerGenerated] private sealed class <Next_FrameCoroutine>d__2 : IEnumerator<object>, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; public Action action; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Next_FrameCoroutine>d__2(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_0018: Unknown result type (might be due to invalid IL or missing references) //IL_0022: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <>2__current = (object)new WaitForEndOfFrame(); <>1__state = 1; return true; case 1: <>1__state = -1; try { action?.Invoke(); } catch { Fento_Loader._Logger.LogError((object)"Next_FrameCoroutine - Error Detected"); } return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } public static Type DetectEnemyType = typeof(DetectebleEnemies); public static EnemyIdentifier[] AllEnemies = (EnemyIdentifier[])(object)new EnemyIdentifier[0]; public static void Invoke_NextFrame(Action action) { //IL_0005: Unknown result type (might be due to invalid IL or missing references) //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_0015: Expected O, but got Unknown //IL_001a: Expected O, but got Unknown GameObject val = new GameObject("Wait And LOader"); Object.Destroy((Object)val, 1f); ((MonoBehaviour)GameObjectExtensions.GetOrAddComponent<Waiter>(val)).StartCoroutine(Next_FrameCoroutine(action)); } public static void Invoke_WithDelay(float time, Action action) { //IL_0005: Unknown result type (might be due to invalid IL or missing references) //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_0017: Expected O, but got Unknown //IL_001c: Expected O, but got Unknown GameObject val = new GameObject("Wait And LOader"); Object.Destroy((Object)val, time + 1f); ((MonoBehaviour)GameObjectExtensions.GetOrAddComponent<Waiter>(val)).StartCoroutine(Delay_Coroutine(time, action)); } [IteratorStateMachine(typeof(<Next_FrameCoroutine>d__2))] public static IEnumerator Next_FrameCoroutine(Action action) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Next_FrameCoroutine>d__2(0) { action = action }; } [IteratorStateMachine(typeof(<Delay_Coroutine>d__3))] public static IEnumerator Delay_Coroutine(float time, Action action) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Delay_Coroutine>d__3(0) { time = time, action = action }; } public static void Forse_Clear() { //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Unknown result type (might be due to invalid IL or missing references) //IL_0029: Unknown result type (might be due to invalid IL or missing references) //IL_002e: Unknown result type (might be due to invalid IL or missing references) ActivateArena[] array = Resources.FindObjectsOfTypeAll<ActivateArena>(); foreach (ActivateArena val in array) { Scene scene = ((Component)val).gameObject.scene; if (((Scene)(ref scene)).IsValid()) { scene = ((Component)val).gameObject.scene; if (((Scene)(ref scene)).isLoaded) { Fento_Loader._Logger.LogInfo((object)("Forse_Clear - " + ((Object)((Component)val).transform).name + " ActivateArena Cleared From Nulls")); val.enemies = val.enemies.RemoveDestroyed().ToArray(); } } } } public static void Set_HudMessage(this HudMessage hudMessage, string message, string message2 = "", InputActionReference actionReference = null) { if ((Object)(object)hudMessage == (Object)null) { Fento_Loader._Logger.LogError((object)"Set_HudMessage - hudMessage is null"); return; } hudMessage.message = message; hudMessage.message2 = message2; hudMessage.actionReference = actionReference; } public static void For_InStack(Transform GetFrom, Action<Transform> action) { Transform[] allChilds = GetAllChilds(GetFrom); foreach (Transform obj in allChilds) { action?.Invoke(obj); } } public static void Enemy_InStack(Transform GetFrom, Action<EnemyIdentifier> action, bool Hard_Mode_Only = false) { if (Hard_Mode_Only && Difficulty_Options.Issue_Disable_Most_Buffs) { return; } Transform[] allChilds = GetAllChilds(GetFrom); if (allChilds == null) { return; } Transform[] array = allChilds; for (int i = 0; i < array.Length; i++) { EnemyIdentifier component = ((Component)array[i]).GetComponent<EnemyIdentifier>(); if ((Object)(object)component != (Object)null) { action?.Invoke(component); } } } public static void Make_List_MachineSymbiote(List<Machine> machines) { if (machines == null || machines.Count < 2) { Fento_Loader._Logger.LogWarning((object)"Make_List_MachineSymbiote - Need More Machines To Make Symbiotes"); return; } for (int i = 0; i < machines.Count; i++) { Machine toMake = machines[i]; Machine symbiote = machines[(i + 1) % machines.Count]; Make_MachineSymbiote(toMake, symbiote); } } public static void Make_MachineSymbiote(Machine toMake, Machine symbiote) { if ((Object)(object)toMake == (Object)null) { Fento_Loader._Logger.LogWarning((object)"Make_MachineSymbiote - No toMake"); return; } if ((Object)(object)symbiote == (Object)null) { Fento_Loader._Logger.LogWarning((object)"Make_MachineSymbiote - No symbiote"); return; } if (Difficulty_Options.Mech_Disable_Custom_Symbiotes) { Fento_Loader._Logger.LogInfo((object)$"Make_MachineSymbiote - {toMake} + {symbiote} Disabled From - Difficulty_Options.Disable_Custom_Symbiotes"); return; } toMake.symbiote = symbiote; Fento_Loader._Logger.LogInfo((object)$"Make_MachineSymbiote - New Symbiot Pair: {toMake} + {symbiote}"); } public static void Clear_AreaFromClones(Transform ToClear) { Enemy_InStack(ToClear, delegate(EnemyIdentifier enemy) { if (!Object.op_Implicit((Object)(object)((Component)enemy).GetComponent<Fento_DontLoop_Tag>())) { Object.Destroy((Object)(object)((Component)enemy).gameObject); } }); } public static void Update_ActivateNextWave(ActivateNextWave activateNextWave, Transform GetFrom = null) { if ((Object)(object)GetFrom == (Object)null) { GetFrom = ((Component)activateNextWave).transform; } List<GameObject> list = new List<GameObject>(); for (int i = 0; i < GetFrom.childCount; i++) { Transform child = GetFrom.GetChild(i); if (Object.op_Implicit((Object)(object)((Component)child).GetComponent<EnemyIdentifier>())) { list.Add(((Component)child).gameObject); } } activateNextWave.toActivate = list.ToArray(); } public static void Update_ActivateArena(ActivateArena activateArena, Transform GetFrom = null) { if ((Object)(object)GetFrom == (Object)null) { GetFrom = ((Component)activateArena).transform; } List<GameObject> list = new List<GameObject>(); for (int i = 0; i < GetFrom.childCount; i++) { Transform child = GetFrom.GetChild(i); if (Object.op_Implicit((Object)(object)((Component)child).GetComponent<EnemyIdentifier>()) || Object.op_Implicit((Object)(object)((Component)child).GetComponent<Fento_DontLoop_Tag>())) { list.Add(((Component)child).gameObject); } } activateArena.enemies = list.ToArray(); } public static EnemyIdentifier Custom_ReplaceEnemy(DetectebleEnemies enemy, Transform toReplace, Vector3 Pos = default(Vector3), Quaternion Quart = default(Quaternion), bool active = false, bool DestroyOnReplace = true) { //IL_0018: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Unknown result type (might be due to invalid IL or missing references) if (Object.op_Implicit((Object)(object)((Component)toReplace).GetComponent<Fento_DontLoop_Tag>())) { return null; } EnemyIdentifier result = Integrate_Enemy(enemy, toReplace.parent, active, Pos, Quart); if (DestroyOnReplace) { Object.Destroy((Object)(object)((Component)toReplace).gameObject); } return result; } public static EnemyIdentifier Base_ReplaceEnemy(DetectebleEnemies enemy, Transform toReplace, Vector3 extraPos = default(Vector3), bool DestroyOnReplace = true) { //IL_0022: Unknown result type (might be due to invalid IL or missing references) //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_0028: Unknown result type (might be due to invalid IL or missing references) //IL_002e: Unknown result type (might be due to invalid IL or missing references) if (Object.op_Implicit((Object)(object)((Component)toReplace).GetComponent<Fento_DontLoop_Tag>())) { return null; } EnemyIdentifier result = Integrate_Enemy(enemy, toReplace.parent, ((Component)toReplace).gameObject.activeSelf, toReplace.position + extraPos, toReplace.rotation); if (DestroyOnReplace) { Object.Destroy((Object)(object)((Component)toReplace).gameObject); } return result; } public static EnemyIdentifier Integrate_Enemy(DetectebleEnemies enemy, Transform Parent, bool active, Vector3 Pos = default(Vector3), Quaternion Quart = default(Quaternion)) { //IL_0029: Unknown result type (might be due to invalid IL or missing references) //IL_002a: Unknown result type (might be due to invalid IL or missing references) //IL_0018: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Unknown result type (might be due to invalid IL or missing references) //IL_004e: Unknown result type (might be due to invalid IL or missing references) //IL_005a: Unknown result type (might be due to invalid IL or missing references) EnemyIdentifier val = FindEnemyByType(enemy); GameObject val2 = null; val2 = ((enemy != DetectebleEnemies.Body) ? ((Component)Object.Instantiate<EnemyIdentifier>(val, Pos, Quart)).gameObject : ((Component)Object.Instantiate<Transform>(((Component)val).transform.root, Pos, Quart)).gameObject); val2.transform.root.parent = Parent; val2.transform.position = Pos; val2.transform.rotation = Quart; val2.SetActive(active); GameObjectExtensions.GetOrAddComponent<Fento_DontLoop_Tag>(val2); KeepInBounds component = val2.GetComponent<KeepInBounds>(); if (Object.op_Implicit((Object)(object)component)) { Object.Destroy((Object)(object)component); } NavMeshAgent component2 = val2.GetComponent<NavMeshAgent>(); if (Object.op_Implicit((Object)(object)component2)) { ((Behaviour)component2).enabled = true; } return val2.GetComponentInChildren<EnemyIdentifier>(); } public static Vector3 GetRandomNavMeshPoint(Vector3 origin, float radius) { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000c: 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_001e: Unknown result type (might be due to invalid IL or missing references) NavMeshHit val = default(NavMeshHit); if (NavMesh.SamplePosition(origin + Random.insideUnitSphere * radius, ref val, radius, -1)) { return ((NavMeshHit)(ref val)).position; } return Vector3.zero; } public static Vector3 DeepSearchNavMeshPoint(Vector3 origin, float radius) { //IL_0018: Unknown result type (might be due to invalid IL or missing references) //IL_001d: Unknown result type (might be due to invalid IL or missing references) //IL_0021: Unknown result type (might be due to invalid IL or missing references) //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_0031: Unknown result type (might be due to invalid IL or missing references) //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_0037: 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_0039: Unknown result type (might be due to invalid IL or missing references) //IL_003f: Unknown result type (might be due to invalid IL or missing references) //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_0046: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Unknown result type (might be due to invalid IL or missing references) //IL_0060: 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) for (int i = 1; i <= 35; i++) { float num = 10f * (float)i; float radius2 = radius + 50f * (float)i; Vector3 insideUnitSphere = Random.insideUnitSphere; Vector3 val = ((Vector3)(ref insideUnitSphere)).normalized * num * Random.value; Vector3 randomNavMeshPoint = GetRandomNavMeshPoint(origin + val, radius2); if (randomNavMeshPoint != Vector3.zero) { return randomNavMeshPoint; } } return Vector3.zero; } public static string ParseRealName(string input) { return input?.Replace('_', ' '); } public static EnemyIdentifier FindEnemyByType(DetectebleEnemies enemy) { string realName = ParseRealName(Enum.GetName(DetectEnemyType, enemy)); return AllEnemies.Where((EnemyIdentifier o) => ((Object)o).name == realName).FirstOrDefault(); } public static GameObject FindEnemyByName(string name) { return Fento_Core.AllObjs.Where((GameObject o) => (Object)(object)o != (Object)null && ((Object)o).name == name && o.scene != Fento_Core.CurrentScene && Object.op_Implicit((Object)(object)o.GetComponent<EnemyIdentifier>())).FirstOrDefault(); } public static GameObject FindObjectByPath(string path) { string[] array = path.Split(new char[1] { '/' }); if (array.Length == 0) { return null; } GameObject val = FindObjectByDirectPath(path); if ((Object)(object)val != (Object)null) { return val; } return FindObjectByStepwisePath(array); } public static string GetFullRootPath(Transform transform) { string text = ((Object)transform).name; while ((Object)(object)transform.parent != (Object)null) { transform = transform.parent; text = ((Object)transform).name + "/" + text; } return text; } [Obsolete] private static GameObject FindObjectByDirectPath(string path) { GameObject obj = GameObject.Find(path); if ((Object)(object)obj == (Object)null) { Fento_Loader._Logger.LogWarning((object)("Direct Search - Object not found with path: " + path)); } return obj; } [Obsolete] private static GameObject FindObjectByStepwisePath(string[] pathParts) { //IL_0032: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0043: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Unknown result type (might be due to invalid IL or missing references) GameObject val = null; GameObject[] allObjs = Fento_Core.AllObjs; foreach (GameObject val2 in allObjs) { if ((Object)(object)val2 == (Object)null || (Object)(object)val2.transform.root != (Object)(object)val2.transform) { continue; } Scene scene = val2.scene; if (((Scene)(ref scene)).IsValid()) { scene = val2.scene; if (((Scene)(ref scene)).isLoaded && ((Object)val2).name == pathParts[0]) { val = val2; break; } } } if ((Object)(object)val == (Object)null) { Fento_Loader._Logger.LogWarning((object)("FindObjectByStepwisePath - Root not found: " + pathParts[0])); return null; } return FindObjectByPathInHierarchy(val, pathParts, 1); } [Obsolete] private static GameObject FindObjectByPathInHierarchy(GameObject parent, string[] pathParts, int index) { //IL_001c: Unknown result type (might be due to invalid IL or missing references) //IL_0022: Expected O, but got Unknown if (index >= pathParts.Length) { return parent; } foreach (Transform item in parent.transform) { Transform val = item; if (((Object)val).name == pathParts[index]) { GameObject val2 = FindObjectByPathInHierarchy(((Component)val).gameObject, pathParts, index + 1); if ((Object)(object)val2 != (Object)null) { return val2; } } } return null; } public static void Make_Colored(Transform to_change, Color color, bool keep_a = true, float mult = 0.55f) { //IL_0121: Unknown result type (might be due to invalid IL or missing references) //IL_0126: Unknown result type (might be due to invalid IL or missing references) //IL_0128: Unknown result type (might be due to invalid IL or missing references) //IL_012d: Unknown result type (might be due to invalid IL or missing references) //IL_0049: Unknown result type (might be due to invalid IL or missing references) //IL_004e: Unknown result type (might be due to invalid IL or missing references) //IL_0050: Unknown result type (might be due to invalid IL or missing references) //IL_0055: Unknown result type (might be due to invalid IL or missing references) //IL_014b: Unknown result type (might be due to invalid IL or missing references) //IL_0134: Unknown result type (might be due to invalid IL or missing references) //IL_0099: Unknown result type (might be due to invalid IL or missing references) //IL_009e: Unknown result type (might be due to invalid IL or missing references) //IL_00a0: Unknown result type (might be due to invalid IL or missing references) //IL_00a5: Unknown result type (might be due to invalid IL or missing references) //IL_007d: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_00d4: Unknown result type (might be due to invalid IL or missing references) //IL_00d9: Unknown result type (might be due to invalid IL or missing references) //IL_00db: Unknown result type (might be due to invalid IL or missing references) //IL_00b1: Unknown result type (might be due to invalid IL or missing references) Renderer[] componentsInChildren = ((Component)to_change).GetComponentsInChildren<Renderer>(true); foreach (Renderer val in componentsInChildren) { if ((Object)(object)val == (Object)null) { continue; } Material[] materials = val.materials; foreach (Material val2 in materials) { if (val2.HasProperty("_Color")) { Color val3 = Color.Lerp(val2.GetColor("_Color"), color, mult); if (keep_a) { float a = val2.GetColor("_Color").a; val3.a = a; } val2.SetColor("_Color", val3); } if (val2.HasProperty("_BaseColor")) { Color val4 = Color.Lerp(val2.GetColor("_BaseColor"), color, mult); if (keep_a) { float a2 = val2.GetColor("_BaseColor").a; val4.a = a2; } val2.SetColor("_BaseColor", Color.Lerp(val2.GetColor("_BaseColor"), color, mult)); } } } Light[] componentsInChildren2 = ((Component)to_change).GetComponentsInChildren<Light>(true); foreach (Light val5 in componentsInChildren2) { if (!((Object)(object)val5 == (Object)null)) { Color color2 = Color.Lerp(val5.color, color, mult); if (keep_a) { float a3 = val5.color.a; color2.a = a3; } val5.color = color2; } } } public static Transform[] GetAllChilds(Transform GetFrom) { //IL_0020: Unknown result type (might be due to invalid IL or missing references) //IL_0026: Expected O, but got Unknown if ((Object)(object)GetFrom == (Object)null) { return null; } List<Transform> list = new List<Transform>(); foreach (Transform item2 in GetFrom) { Transform item = item2; list.Add(item); } return list.ToArray(); } public static void AddCount(this ref int i, bool[] toCount) { for (int j = 0; j < toCount.Length; j++) { if (toCount[j]) { i++; } } } public static T[] Append<T>(this T[] array, T item) { if (array == null) { return new T[1] { item }; } T[] array2 = new T[array.Length + 1]; array.CopyTo(array2, 0); array2[array.Length] = item; return array2; } public static IEnumerable<GameObject> RemoveDestroyed(this IEnumerable<GameObject> array) { List<GameObject> list = array.ToList(); list.RemoveAll(delegate(GameObject obj) { //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_001f: Unknown result type (might be due to invalid IL or missing references) if (!((Object)(object)obj == (Object)null)) { Scene scene = obj.scene; if (((Scene)(ref scene)).IsValid()) { scene = obj.scene; return !((Scene)(ref scene)).isLoaded; } } return true; }); return list; } public static IEnumerable<T> RemoveNulls<T>(this IEnumerable<T> array) { List<T> list = array.ToList(); list.RemoveAll((T l) => l == null); return list; } public static bool Try_GetFrom_Config(BoolField boolField, bool regular = false) { if (boolField != null) { return boolField.value; } return regular; } public static float Try_GetFrom_Config(FloatField floatField, float regular = 1f) { if (floatField != null) { return floatField.value; } return regular; } } [BepInPlugin("com.enragedone.fentokill", "FentoKill", "2.4.164")] public class Fento_Loader : BaseUnityPlugin { public const string GUID = "com.enragedone.fentokill"; public const string Name = "FentoKill"; public const string Version = "2.4.164"; private Harmony _Harmony = new Harmony("com.enragedone.fentokill.levelpatches"); public static ManualLogSource _Logger; public static Fento_Loader _Instance; public const string Set_Guid = "com.enragedone.fentokill.settings"; public PluginConfigurator config; public bool Confing_Loaded; public void Awake() { //IL_0096: Unknown result type (might be due to invalid IL or missing references) //IL_00a7: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00c8: Unknown result type (might be due to invalid IL or missing references) //IL_00e1: Unknown result type (might be due to invalid IL or missing references) //IL_00e6: Unknown result type (might be due to invalid IL or missing references) //IL_0102: Unknown result type (might be due to invalid IL or missing references) //IL_010b: Unknown result type (might be due to invalid IL or missing references) //IL_0110: Unknown result type (might be due to invalid IL or missing references) //IL_012c: Unknown result type (might be due to invalid IL or missing references) //IL_0142: Unknown result type (might be due to invalid IL or missing references) //IL_0147: Unknown result type (might be due to invalid IL or missing references) //IL_0166: Unknown result type (might be due to invalid IL or missing references) //IL_016b: Unknown result type (might be due to invalid IL or missing references) //IL_0178: Expected O, but got Unknown //IL_0173: Unknown result type (might be due to invalid IL or missing references) //IL_0189: Unknown result type (might be due to invalid IL or missing references) //IL_018e: Unknown result type (might be due to invalid IL or missing references) //IL_0198: Unknown result type (might be due to invalid IL or missing references) //IL_01a9: Expected O, but got Unknown //IL_01a4: Unknown result type (might be due to invalid IL or missing references) //IL_01ae: Expected O, but got Unknown //IL_01be: Expected O, but got Unknown //IL_01b9: Unknown result type (might be due to invalid IL or missing references) //IL_01c3: Expected O, but got Unknown //IL_01d5: Unknown result type (might be due to invalid IL or missing references) //IL_01eb: Unknown result type (might be due to invalid IL or missing references) //IL_01f0: Unknown result type (might be due to invalid IL or missing references) //IL_020f: Unknown result type (might be due to invalid IL or missing references) //IL_0214: Unknown result type (might be due to invalid IL or missing references) //IL_0221: Expected O, but got Unknown //IL_021c: Unknown result type (might be due to invalid IL or missing references) //IL_0232: Unknown result type (might be due to invalid IL or missing references) //IL_0237: Unknown result type (might be due to invalid IL or missing references) //IL_0241: Unknown result type (might be due to invalid IL or missing references) //IL_0252: Expected O, but got Unknown //IL_024d: Unknown result type (might be due to invalid IL or missing references) //IL_0257: Expected O, but got Unknown //IL_0257: Unknown result type (might be due to invalid IL or missing references) //IL_0268: Expected O, but got Unknown //IL_0263: Unknown result type (might be due to invalid IL or missing references) //IL_026d: Expected O, but got Unknown //IL_026d: Unknown result type (might be due to invalid IL or missing references) //IL_027e: Expected O, but got Unknown //IL_0279: Unknown result type (might be due to invalid IL or missing references) //IL_0283: Expected O, but got Unknown //IL_0283: Unknown result type (might be due to invalid IL or missing references) //IL_0298: Expected O, but got Unknown //IL_0293: Unknown result type (might be due to invalid IL or missing references) //IL_029d: Expected O, but got Unknown //IL_029d: Unknown result type (might be due to invalid IL or missing references) //IL_02b2: Expected O, but got Unknown //IL_02ad: Unknown result type (might be due to invalid IL or missing references) //IL_02b7: Expected O, but got Unknown //IL_02cb: Expected O, but got Unknown //IL_02c6: Unknown result type (might be due to invalid IL or missing references) //IL_02d0: Expected O, but got Unknown //IL_02e2: Unknown result type (might be due to invalid IL or missing references) //IL_02f4: Unknown result type (might be due to invalid IL or missing references) //IL_02f9: Unknown result type (might be due to invalid IL or missing references) //IL_0318: Unknown result type (might be due to invalid IL or missing references) //IL_031d: Unknown result type (might be due to invalid IL or missing references) //IL_032a: Expected O, but got Unknown //IL_0325: Unknown result type (might be due to invalid IL or missing references) //IL_0337: Unknown result type (might be due to invalid IL or missing references) //IL_033c: Unknown result type (might be due to invalid IL or missing references) //IL_0346: Unknown result type (might be due to invalid IL or missing references) //IL_0357: Expected O, but got Unknown //IL_0352: Unknown result type (might be due to invalid IL or missing references) //IL_035c: Expected O, but got Unknown //IL_035c: Unknown result type (might be due to invalid IL or missing references) //IL_036d: Expected O, but got Unknown //IL_0368: Unknown result type (might be due to invalid IL or missing references) //IL_0372: Expected O, but got Unknown //IL_0382: Expected O, but got Unknown //IL_037d: Unknown result type (might be due to invalid IL or missing references) //IL_0387: Expected O, but got Unknown //IL_0399: Unknown result type (might be due to invalid IL or missing references) //IL_03ae: Unknown result type (might be due to invalid IL or missing references) //IL_03b3: Unknown result type (might be due to invalid IL or missing references) //IL_03d2: Unknown result type (might be due to invalid IL or missing references) //IL_03d7: Unknown result type (might be due to invalid IL or missing references) //IL_03e4: Expected O, but got Unknown //IL_03df: Unknown result type (might be due to invalid IL or missing references) //IL_03f4: Unknown result type (might be due to invalid IL or missing references) //IL_03f9: Unknown result type (might be due to invalid IL or missing references) //IL_0403: Unknown result type (might be due to invalid IL or missing references) //IL_0414: Expected O, but got Unknown //IL_040f: Unknown result type (might be due to invalid IL or missing references) //IL_0419: Expected O, but got Unknown //IL_0429: Expected O, but got Unknown //IL_0424: Unknown result type (might be due to invalid IL or missing references) //IL_042e: Expected O, but got Unknown //IL_0440: Unknown result type (might be due to invalid IL or missing references) //IL_0453: Unknown result type (might be due to invalid IL or missing references) //IL_0458: Unknown result type (might be due to invalid IL or missing references) //IL_0477: Unknown result type (might be due to invalid IL or missing references) //IL_047c: Unknown result type (might be due to invalid IL or missing references) //IL_0489: Expected O, but got Unknown //IL_0484: Unknown result type (might be due to invalid IL or missing references) //IL_0497: Unknown result type (might be due to invalid IL or missing references) //IL_049c: Unknown result type (might be due to invalid IL or missing references) //IL_04a6: Unknown result type (might be due to invalid IL or missing references) //IL_04bb: Expected O, but got Unknown //IL_04b6: Unknown result type (might be due to invalid IL or missing references) //IL_04c0: Expected O, but got Unknown //IL_04c0: Unknown result type (might be due to invalid IL or missing references) //IL_04d5: Expected O, but got Unknown //IL_04d0: Unknown result type (might be due to invalid IL or missing references) //IL_04da: Expected O, but got Unknown //IL_04ee: Expected O, but got Unknown //IL_04e9: Unknown result type (might be due to invalid IL or missing references) //IL_04f3: Expected O, but got Unknown //IL_0505: Unknown result type (might be due to invalid IL or missing references) //IL_0518: Unknown result type (might be due to invalid IL or missing references) //IL_051d: Unknown result type (might be due to invalid IL or missing references) //IL_053c: Unknown result type (might be due to invalid IL or missing references) //IL_0541: Unknown result type (might be due to invalid IL or missing references) //IL_054e: Expected O, but got Unknown //IL_0549: Unknown result type (might be due to invalid IL or missing references) //IL_055c: Unknown result type (might be due to invalid IL or missing references) //IL_0561: Unknown result type (might be due to invalid IL or missing references) //IL_056b: Unknown result type (might be due to invalid IL or missing references) //IL_057c: Expected O, but got Unknown //IL_0577: Unknown result type (might be due to invalid IL or missing references) //IL_0581: Expected O, but got Unknown //IL_0581: Unknown result type (might be due to invalid IL or missing references) //IL_0592: Expected O, but got Unknown //IL_058d: Unknown result type (might be due to invalid IL or missing references) //IL_0597: Expected O, but got Unknown //IL_0597: Unknown result type (might be due to invalid IL or missing references) //IL_05ac: Expected O, but got Unknown //IL_05a7: Unknown result type (might be due to invalid IL or missing references) //IL_05b1: Expected O, but got Unknown //IL_05b1: Unknown result type (might be due to invalid IL or missing references) //IL_05c6: Expected O, but got Unknown //IL_05c1: Unknown result type (might be due to invalid IL or missing references) //IL_05cb: Expected O, but got Unknown //IL_05cb: Unknown result type (might be due to invalid IL or missing references) //IL_05e0: Expected O, but got Unknown //IL_05db: Unknown result type (might be due to invalid IL or missing references) //IL_05e5: Expected O, but got Unknown //IL_05e5: Unknown result type (might be due to invalid IL or missing references) //IL_05f2: Expected O, but got Unknown //IL_05ed: Unknown result type (might be due to invalid IL or missing references) //IL_0600: Unknown result type (might be due to invalid IL or missing references) //IL_0605: Unknown result type (might be due to invalid IL or missing references) //IL_060f: Unknown result type (might be due to invalid IL or missing references) //IL_0620: Expected O, but got Unknown //IL_061b: Unknown result type (might be due to invalid IL or missing references) //IL_0625: Expected O, but got Unknown //IL_0625: Unknown result type (might be due to invalid IL or missing references) //IL_0636: Expected O, but got Unknown //IL_0631: Unknown result type (might be due to invalid IL or missing references) //IL_063b: Expected O, but got Unknown //IL_063b: Unknown result type (might be due to invalid IL or missing references) //IL_064c: Expected O, but got Unknown //IL_0647: Unknown result type (might be due to invalid IL or missing references) //IL_0651: Expected O, but got Unknown //IL_0651: Unknown result type (might be due to invalid IL or missing references) //IL_0662: Expected O, but got Unknown //IL_065d: Unknown result type (might be due to invalid IL or missing references) //IL_0667: Expected O, but got Unknown //IL_0667: Unknown result type (might be due to invalid IL or missing references) //IL_0678: Expected O, but got Unknown //IL_0673: Unknown result type (might be due to invalid IL or missing references) //IL_067d: Expected O, but got Unknown //IL_067d: Unknown result type (might be due to invalid IL or missing references) //IL_068e: Expected O, but got Unknown //IL_0689: Unknown result type (might be due to invalid IL or missing references) //IL_0693: Expected O, but got Unknown //IL_06a3: Expected O, but got Unknown //IL_069e: Unknown result type (might be due to invalid IL or missing references) //IL_06a8: Expected O, but got Unknown _Instance = this; _Logger = ((BaseUnityPlugin)this).Logger; _Logger.LogInfo((object)"Fento_Loader v2.4.164 has started."); try { config = PluginConfigurator.Create("FENTOKILL", "com.enragedone.fentokill.settings"); string text = Path.Combine(Path.GetDirectoryName(typeof(Fento_Loader).Assembly.Location), "icon.png"); _Logger.LogInfo((object)$"Fento Icon Path {text}"); config.SetIconWithURL("file://" + text); new ConfigHeader(config.rootPanel, "SOME CHANGES REQUIRE LEVEL RESTART", 24).textColor = Color32.op_Implicit(new Color32(byte.MaxValue, (byte)0, (byte)0, byte.MaxValue)); new ConfigHeader(config.rootPanel, "They will be marked with <color=#FF0000>+</color>", 24).textColor = Color32.op_Implicit(new Color32(byte.MaxValue, byte.MaxValue, byte.MaxValue, byte.MaxValue)); new ConfigHeader(config.rootPanel, " ", 24).textColor = Color32.op_Implicit(new Color32((byte)0, (byte)0, (byte)0, (byte)0)); new ConfigHeader(config.rootPanel, "Main / Global Settings", 24).textColor = Color32.op_Implicit(new Color32((byte)105, (byte)172, byte.MaxValue, byte.MaxValue)); ConfigPanel val = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.main_change"); new ConfigHeader(val, "Main / Global Settings", 24).textColor = Color32.op_Implicit(new Color32((byte)105, (byte)172, byte.MaxValue, byte.MaxValue)); Difficulty_Options.B__Global_Disable_Level_Changes = new BoolField(val, "Disable Level Changes<color=#FF0000>+</color>", "com.enragedone.fentokill.settings.B__Global_Disable_Level_Changes", false); Difficulty_Options.B__Global_Enable_Modify_Everyone = new BoolField(val, "Modify Every Enemy With Changes Below", "com.enragedone.fentokill.settings.B__Global_Enable_Modify_Everyone", false); new ConfigHeader(config.rootPanel, "Extra Respected Difficulty Options", 24).textColor = Color32.op_Implicit(new Color32(byte.MaxValue, (byte)158, (byte)105, byte.MaxValue)); ConfigPanel val2 = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val2, "Extra Respected Difficulty Options", 24).textColor = Color32.op_Implicit(new Color32(byte.MaxValue, (byte)158, (byte)105, byte.MaxValue)); Difficulty_Options.B__Buff_Forse_All_ImmuneFriendly = new BoolField(val2, "Make Friendly Fire Weaker", "com.enragedone.fentokill.settings.B__Buff_Forse_All_ImmuneFriendly", false); Difficulty_Options.B__Buff_Forse_All_PreSanded = new BoolField(val2, "Make Every Enemy Pre Sanded", "com.enragedone.fentokill.settings.B__Buff_Forse_All_PreSanded", false); Difficulty_Options.B__Buff_Forse_All_Radiance = new BoolField(val2, "Make Every Enemy Radiant", "com.enragedone.fentokill.settings.B__Buff_Forse_All_Radiance", false); Difficulty_Options.V__Varb_Multiply_HardDamage = new FloatField(val2, "Change Hard Damage Multiplier", "com.enragedone.fentokill.settings.V__Varb_Multiply_HardDamage", 1f); Difficulty_Options.V__Varb_Multiply_Radiance_Tier = new FloatField(val2, "Change Radiance Tier Multiplier", "com.enragedone.fentokill.settings.V__Varb_Multiply_Radiance_Tier", 1f); Difficulty_Options.V__Varb_Add_Radiance_Tier = new FloatField(val2, "Add Extra Radiance Tiers", "com.enragedone.fentokill.settings.V__Varb_Add_Radiance_Tier", 0f); new ConfigHeader(config.rootPanel, "Skill Issue Options", 24).textColor = Color32.op_Implicit(new Color32((byte)61, (byte)204, (byte)0, byte.MaxValue)); ConfigPanel val3 = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val3, "Skill Issue Options", 24).textColor = Color32.op_Implicit(new Color32((byte)61, (byte)204, (byte)0, byte.MaxValue)); Difficulty_Options.B__Issue_Disable_Most_Buffs = new BoolField(val3, "Disable Most Fento Buffs<color=#FF0000>+</color>", "com.enragedone.fentokill.settings.B__Issue_Disable_Most_Buffs", false); Difficulty_Options.B__Issue_Disable_PreSanded = new BoolField(val3, "Disable Pre Sanded Buff", "com.enragedone.fentokill.settings.B__Issue_Disable_PreSanded", false); Difficulty_Options.B__Issue_Disable_Radiance = new BoolField(val3, "Disable Radiance Buff", "com.enragedone.fentokill.settings.B__Issue_Disable_Radiance", false); new ConfigHeader(config.rootPanel, "Fento Custom Mechanics Options", 24).textColor = Color32.op_Implicit(new Color32((byte)0, (byte)204, (byte)132, byte.MaxValue)); ConfigPanel val4 = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val4, "Fento Custom Mechanics Options", 24).textColor = Color32.op_Implicit(new Color32((byte)0, (byte)204, (byte)132, byte.MaxValue)); Difficulty_Options.B__Mech_Disable_RadIdols_Buff = new BoolField(val4, "Disable Rad Idols <color=#89FFFF>INCREASE RADIANCE</color>", "com.enragedone.fentokill.settings.B__Mech_Disable_RadIdols_Buff", false); Difficulty_Options.B__Mech_Disable_Custom_Symbiotes = new BoolField(val4, "Disable <color=#89FFFF>UNIQUE SYMBIOTIC PAIRS</color><color=#FF0000>+</color>", "com.enragedone.fentokill.settings.B__Mech_Disable_Custom_Symbiotes", false); new ConfigHeader(config.rootPanel, "Extra Radiance Options", 24).textColor = Color32.op_Implicit(new Color32((byte)93, (byte)74, (byte)186, byte.MaxValue)); ConfigPanel val5 = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val5, "Extra Radiance Options", 24).textColor = Color32.op_Implicit(new Color32((byte)93, (byte)74, (byte)186, byte.MaxValue)); Difficulty_Options.V__Varb_Radiance_Health_Mult = new FloatField(val5, "Change Radiance Health Multiplier", "com.enragedone.fentokill.settings.V__Varb_Extra_Rad_Health_Mult", 1f); Difficulty_Options.V__Varb_Radiance_Damage_Mult = new FloatField(val5, "Change Radiance Damage Multiplier", "com.enragedone.fentokill.settings.V__Varb_Extra_Rad_Damage_Mult", 1f); Difficulty_Options.V__Varb_Radiance_Speed_Mult = new FloatField(val5, "Change Radiance Speed Multiplier", "com.enragedone.fentokill.settings.V__Varb_Extra_Rad_Speed_Mult", 1f); new ConfigHeader(config.rootPanel, "[7-4 ...LIKE ANTENNAS TO HEAVEN] Options", 24).textColor = Color32.op_Implicit(new Color32(byte.MaxValue, (byte)28, (byte)62, byte.MaxValue)); ConfigPanel val6 = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val6, "[7-4 ...LIKE ANTENNAS TO HEAVEN] Options", 24).textColor = Color32.op_Implicit(new Color32(byte.MaxValue, (byte)28, (byte)62, byte.MaxValue)); Difficulty_Options.B__7_4_Disable_Defence = new BoolField(val6, "Disable Self Defence<color=#FF0000>+-</color>", "com.enragedone.fentokill.settings.B__7_4_Disable_Defence", false); Difficulty_Options.B__7_4_Disable_OverHeat = new BoolField(val6, "Disable OverHeat<color=#FF0000>+-</color>", "com.enragedone.fentokill.settings.B__7_4_Disable_OverHeat", false); Difficulty_Options.V__Varb_7_4_Fire_Rate = new FloatField(val6, "Change Fire Rate Mult", "com.enragedone.fentokill.settings.V__Varb_7_4_Fire_Rate", 1f); Difficulty_Options.V__Varb_7_4_Gently_WaitTime = new FloatField(val6, "Change Gently Wait Time", "com.enragedone.fentokill.settings.V__Varb_7_4_Gently_WaitTime", 5f); Difficulty_Options.V__Varb_7_4_CoolDown_Time = new FloatField(val6, "Change Cooldown Time", "com.enragedone.fentokill.settings.V__Varb_7_4_CoolDown_Time", 21f); new ConfigHeader(val6, "Individual Weapons", 24).textColor = Color32.op_Implicit(new Color32(byte.MaxValue, (byte)28, (byte)62, byte.MaxValue)); Difficulty_Options.B__7_4_Disable_OBLITERATION_BEAM_CANNON = new BoolField(val6, "Disable OBLIT-N BEAM CANNON", "com.enragedone.fentokill.settings.B__7_4_Disable_OBLITERATION_BEAM_CANNON", false); Difficulty_Options.B__7_4_Disable_DRONE_SWARM_PROTOCOL = new BoolField(val6, "Disable DRONE SWARM PROTOCOL", "com.enragedone.fentokill.settings.B__7_4_Disable_DRONE_SWARM_PROTOCOL", false); Difficulty_Options.B__7_4_Disable_SUPPORT_DROP_FORCES = new BoolField(val6, "Disable SUPPORT DROP FORCES", "com.enragedone.fentokill.settings.B__7_4_Disable_SUPPORT_DROP_FORCES", false); Difficulty_Options.B__7_4_Disable_NUCLEAR_THUNDERBOLT_EMITTER = new BoolField(val6, "Disable NUCLEAR THUNDERBOLT EMITTER", "com.enragedone.fentokill.settings.B__7_4_Disable_NUCLEAR_THUNDERBOLT_EMITTER", false); Difficulty_Options.B__7_4_Disable_CARPET_BOMBING_BATTERY = new BoolField(val6, "Disable CARPET BOMBING BATTERY", "com.enragedone.fentokill.settings.B__7_4_Disable_CARPET_BOMBING_BATTERY", false); Difficulty_Options.B__7_4_Disable_LASER_GRID = new BoolField(val6, "Disable LASER GRID", "com.enragedone.fentokill.settings.B__7_4_Disable_LASER_GRID", false); Difficulty_Options.B__7_4_Disable_EMP_CHARGE_SERVICES = new BoolField(val6, "Disable E.M.P. CHARGE SERVICES", "com.enragedone.fentokill.settings.B__7_4_Disable_EMP_CHARGE_SERVICES", false); _Logger.LogInfo((object)"Config v2.4.164 loaded successfully"); Confing_Loaded = true; } catch { _Logger.LogError((object)"Fento_Loader v2.4.164 !!!---!!! ERROR With PluginConfigurator Init"); } Fento_Core.Boot_Core(); _Harmony.PatchAll(typeof(Harmony_Patches)); _Harmony.PatchAll(typeof(Other_Classes)); _Logger.LogInfo((object)"Fento_Loader v2.4.164 loaded successfully without error."); } } public static class Difficulty_Options { public static BoolField B__Global_Disable_Level_Changes; public static BoolField B__Global_Enable_Modify_Everyone; public static BoolField B__Buff_Forse_All_ImmuneFriendly; public static BoolField B__Buff_Forse_All_PreSanded; public static BoolField B__Buff_Forse_All_Radiance; public static FloatField V__Varb_Multiply_HardDamage; public static FloatField V__Varb_Multiply_Radiance_Tier; public static FloatField V__Varb_Add_Radiance_Tier; public static BoolField B__Issue_Disable_Most_Buffs; public static BoolField B__Issue_Disable_PreSanded; public static BoolField B__Issue_Disable_Radiance; public static BoolField B__Mech_Disable_RadIdols_Buff; public static BoolField B__Mech_Disable_Custom_Symbiotes; public static FloatField V__Varb_Radiance_Health_Mult; public static FloatField V__Varb_Radiance_Damage_Mult; public static FloatField V__Varb_Radiance_Speed_Mult; public static BoolField B__7_4_Disable_Defence; public static BoolField B__7_4_Disable_OverHeat; public static FloatField V__Varb_7_4_Fire_Rate; public static FloatField V__Varb_7_4_Gently_WaitTime; public static FloatField V__Varb_7_4_CoolDown_Time; public static BoolField B__7_4_Disable_OBLITERATION_BEAM_CANNON; public static BoolField B__7_4_Disable_DRONE_SWARM_PROTOCOL; public static BoolField B__7_4_Disable_SUPPORT_DROP_FORCES; public static BoolField B__7_4_Disable_NUCLEAR_THUNDERBOLT_EMITTER; public static BoolField B__7_4_Disable_CARPET_BOMBING_BATTERY; public static BoolField B__7_4_Disable_LASER_GRID; public static BoolField B__7_4_Disable_EMP_CHARGE_SERVICES; public static int Count_Extra_Skill_Respect { get { int i = 0; i.AddCount(new bool[9] { Buff_Forse_All_ImmuneFriendly, Buff_Forse_All_PreSanded, Buff_Forse_All_Radiance, Varb_Multiply_HardDamage > 1f, Varb_Multiply_Radiance_Tier > 1f, Varb_Add_Radiance_Tier > 0f, Varb_Radiance_Health_Mult > 1f, Varb_Radiance_Damage_Mult > 1f, Varb_Radiance_Speed_Mult > 1f }); return i; } } public static int Count_Issues_With_Skill { get { int i = 0; i.AddCount(new bool[11] { Issue_Disable_Most_Buffs, Issue_Disable_PreSanded, Issue_Disable_Radiance, Mech_Disable_RadIdols_Buff, Mech_Disable_Custom_Symbiotes, Varb_Multiply_HardDamage < 1f, Varb_Multiply_Radiance_Tier < 1f, Varb_Add_Radiance_Tier < 0f, Varb_Radiance_Health_Mult < 1f, Varb_Radiance_Damage_Mult < 1f, Varb_Radiance_Speed_Mult < 1f }); return i; } } public static bool Extra_Skill_Respect => Count_Extra_Skill_Respect > 0; public static bool Skill_Issue => Count_Issues_With_Skill > 0; public static bool Global_Disable_Level_Changes => Fento_Utils.Try_GetFrom_Config(B__Global_Disable_Level_Changes); public static bool Global_Enable_Modify_Everyone => Fento_Utils.Try_GetFrom_Config(B__Global_Enable_Modify_Everyone); public static bool Buff_Forse_All_ImmuneFriendly => Fento_Utils.Try_GetFrom_Config(B__Buff_Forse_All_ImmuneFriendly); public static bool Buff_Forse_All_PreSanded => Fento_Utils.Try_GetFrom_Config(B__Buff_Forse_All_PreSanded); public static bool Buff_Forse_All_Radiance => Fento_Utils.Try_GetFrom_Config(B__Buff_Forse_All_Radiance); public static float Varb_Multiply_HardDamage => Fento_Utils.Try_GetFrom_Config(V__Varb_Multiply_HardDamage); public static float Varb_Multiply_Radiance_Tier => Fento_Utils.Try_GetFrom_Config(V__Varb_Multiply_Radiance_Tier); public static float Varb_Add_Radiance_Tier => Fento_Utils.Try_GetFrom_Config(V__Varb_Add_Radiance_Tier, 0f); public static bool Issue_Disable_Most_Buffs => Fento_Utils.Try_GetFrom_Config(B__Issue_Disable_Most_Buffs); public static bool Issue_Disable_PreSanded => Fento_Utils.Try_GetFrom_Config(B__Issue_Disable_PreSanded); public static bool Issue_Disable_Radiance => Fento_Utils.Try_GetFrom_Config(B__Issue_Disable_Radiance); public static bool Mech_Disable_RadIdols_Buff => Fento_Utils.Try_GetFrom_Config(B__Mech_Disable_RadIdols_Buff); public static bool Mech_Disable_Custom_Symbiotes => Fento_Utils.Try_GetFrom_Config(B__Mech_Disable_Custom_Symbiotes); public static float Varb_Radiance_Health_Mult => Fento_Utils.Try_GetFrom_Config(V__Varb_Radiance_Health_Mult); public static float Varb_Radiance_Damage_Mult => Fento_Utils.Try_GetFrom_Config(V__Varb_Radiance_Damage_Mult); public static float Varb_Radiance_Speed_Mult => Fento_Utils.Try_GetFrom_Config(V__Varb_Radiance_Speed_Mult); public static bool Issue_7_4_Disable_Defence => Fento_Utils.Try_GetFrom_Config(B__7_4_Disable_Defence); public static bool Buff_7_4_Disable_OverHeat => Fento_Utils.Try_GetFrom_Config(B__7_4_Disable_OverHeat); public static float Varb_7_4_Fire_Rate => Fento_Utils.Try_GetFrom_Config(V__Varb_7_4_Fire_Rate); public static float Varb_7_4_Gently_WaitTime => Fento_Utils.Try_GetFrom_Config(V__Varb_7_4_Gently_WaitTime, 5f); public static float Varb_7_4_CoolDown_Time => Fento_Utils.Try_GetFrom_Config(V__Varb_7_4_CoolDown_Time, 21f); public static bool Issue_7_4_Disable_OBLITERATION_BEAM_CANNON => Fento_Utils.Try_GetFrom_Config(B__7_4_Disable_OBLITERATION_BEAM_CANNON); public static bool Issue_7_4_Disable_DRONE_SWARM_PROTOCOL => Fento_Utils.Try_GetFrom_Config(B__7_4_Disable_DRONE_SWARM_PROTOCOL); public static bool Issue_7_4_Disable_SUPPORT_DROP_FORCES => Fento_Utils.Try_GetFrom_Config(B__7_4_Disable_SUPPORT_DROP_FORCES); public static bool Issue_7_4_Disable_NUCLEAR_THUNDERBOLT_EMITTER => Fento_Utils.Try_GetFrom_Config(B__7_4_Disable_NUCLEAR_THUNDERBOLT_EMITTER); public static bool Issue_7_4_Disable_CARPET_BOMBING_BATTERY => Fento_Utils.Try_GetFrom_Config(B__7_4_Disable_CARPET_BOMBING_BATTERY); public static bool Issue_7_4_Disable_LASER_GRID => Fento_Utils.Try_GetFrom_Config(B__7_4_Disable_LASER_GRID); public static bool Issue_7_4_Disable_EMP_CHARGE_SERVICES => Fento_Utils.Try_GetFrom_Config(B__7_4_Disable_EMP_CHARGE_SERVICES); } public static class Fento_Core { public static TMP_FontAsset MainFont; public static GameObject[] AllObjs = null; public static Scene CurrentScene; public static int History = 0; public static int ActiveHistory = 0; public static EnemyClass Example_Class = (EnemyClass)0; public static EnemyType Example_Type = (EnemyType)34; public static void Boot_Core() { SceneManager.sceneLoaded += OnSceneLoaded; Fento_Loader._Logger.LogInfo((object)"Fento_Core v2.4.164 - Boot_Core successfully."); } public static void OnSceneLoaded(Scene scene, LoadSceneMode mode) { //IL_000c: 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) History = 0; ActiveHistory = 0; CurrentScene = scene; Fento_Loader._Logger.LogInfo((object)((Scene)(ref scene)).name); string currentScene = SceneHelper.CurrentScene; Fento_Loader._Logger.LogInfo((object)currentScene); AllObjs = Resources.FindObjectsOfTypeAll<GameObject>(); if (Fento_Utils.AllEnemies.RemoveNulls().ToArray().Length <= 40) { Fento_Utils.AllEnemies = (from e in Resources.FindObjectsOfTypeAll<EnemyIdentifier>() where ((Component)e).gameObject.scene != CurrentScene select e).ToArray(); } if ((Object)(object)MainFont == (Object)null) { MainFont = (from e in Resources.FindObjectsOfTypeAll<TMP_FontAsset>() where (Object)(object)e != (Object)null && ((Object)e).name == "VCR_OSD_MONO_1" select e).FirstOrDefault(); } Setup_Levels(currentScene); } public static void Setup_Levels(string levelName) { if (levelName == "Main Menu") { Invoke_Load_FentoLevel(levelName, Fento_LevelLoaders.Main_Menu.SetupFentoLevel); Fento_Utils.Invoke_WithDelay(0.75f, delegate { if ((Object)(object)Fento_Assets.Guttertank.obj == (Object)null || (Object)(object)Fento_Assets.Gutterman.obj == (Object)null || (Object)(object)Fento_Assets.RagePrefab.obj == (Object)null || (Object)(object)Fento_Assets.Insignia.obj == (Object)null) { ((MonoBehaviour)Fento_Loader._Instance).StartCoroutine(Fento_Assets.Fento_LoadAllAssetsGradually()); } }); return; } Fento_Utils.Invoke_NextFrame(delegate { if ((Object)(object)MonoSingleton<FinalRank>.Instance != (Object)null && MonoSingleton<FinalRank>.Instance.toAppear.Length != 0 && (Object)(object)MonoSingleton<FinalRank>.Instance.toAppear[0] != (Object)null && (Object)(object)MonoSingleton<FinalRank>.Instance.toAppear[0].transform.GetChild(1) != (Object)null) { ComponentExtensions.GetOrAddComponent<Add_Fento_Marked>((Component)(object)MonoSingleton<FinalRank>.Instance.toAppear[0].transform.GetChild(1)).Real_Level = false; GameObjectExtensions.GetOrAddComponent<Add_Fento_Skill_Marked>(((Component)MonoSingleton<FinalRank>.Instance.extraInfo).gameObject).Real_Level = false; } }); if (!Difficulty_Options.Global_Disable_Level_Changes) { if (levelName == "Level 0-1") { Invoke_Load_FentoLevel(levelName, Fento_LevelLoaders.Prelude_0_1.SetupFentoLevel); } else if (levelName == "Level 7-4") { Invoke_Load_FentoLevel(levelName, Fento_LevelLoaders.VIOLENCE_7_4.SetupFentoLevel); } } } public static void Invoke_Load_FentoLevel(string levelName, Action levelCaster) { Fento_Utils.Invoke_NextFrame(delegate { if ((Object)(object)MonoSingleton<FinalRank>.Instance != (Object)null && MonoSingleton<FinalRank>.Instance.toAppear.Length != 0 && (Object)(object)MonoSingleton<FinalRank>.Instance.toAppear[0] != (Object)null && (Object)(object)MonoSingleton<FinalRank>.Instance.toAppear[0].transform.GetChild(1) != (Object)null) { ComponentExtensions.GetOrAddComponent<Add_Fento_Marked>((Component)(object)MonoSingleton<FinalRank>.Instance.toAppear[0].transform.GetChild(1)).Real_Level = true; GameObjectExtensions.GetOrAddComponent<Add_Fento_Skill_Marked>(((Component)MonoSingleton<FinalRank>.Instance.extraInfo).gameObject).Real_Level = true; } }); if (levelCaster != null) { Fento_Loader._Logger.LogInfo((object)("!!!---!!! Start Fento LOADER " + levelName + " !!!---!!!")); Fento_Loader._Logger.LogWarning((object)("!!!---!!! Start Fento LOADER " + levelName + " !!!---!!!")); Fento_Loader._Logger.LogInfo((object)("!!!---!!! Start Fento LOADER " + levelName + " !!!---!!!")); levelCaster(); StatsManager instance = MonoSingleton<StatsManager>.Instance; if ((Object)(object)instance != (Object)null && Fento_LevelLoaders.Level_Mults.TryGetValue(levelName, out (float, float, float) value)) { for (int i = 0; i < instance.timeRanks.Length; i++) { instance.timeRanks[i] = (int)((float)instance.timeRanks[i] * value.Item1); } for (int j = 0; j < instance.styleRanks.Length; j++) { instance.styleRanks[j] = (int)((float)instance.styleRanks[j] * value.Item2); } for (int k = 0; k < instance.killRanks.Length; k++) { instance.killRanks[k] = (int)((float)instance.killRanks[k] * value.Item3); } } Fento_Utils.Invoke_NextFrame(delegate { Fento_Utils.Invoke_WithDelay(0.5f, Fento_Utils.Forse_Clear); }); Fento_Loader._Logger.LogInfo((object)("!!!---!!! End Fento LOADER " + levelName + " !!!---!!!")); Fento_Loader._Logger.LogWarning((object)("!!!---!!! End Fento LOADER " + levelName + " !!!---!!!")); Fento_Loader._Logger.LogInfo((object)("!!!---!!! End Fento LOADER " + levelName + " !!!---!!!")); } else { Fento_Loader._Logger.LogWarning((object)("!!!---!!! MISSING Fento Level Loader " + levelName + " !!!---!!!")); Fento_Loader._Logger.LogWarning((object)("!!!---!!! MISSING Fento Level Loader " + levelName + " !!!---!!!")); Fento_Loader._Logger.LogWarning((object)("!!!---!!! MISSING Fento Level Loader " + levelName + " !!!---!!!")); Fento_Loader._Logger.LogWarning((object)("!!!---!!! MISSING Fento Level Loader " + levelName + " !!!---!!!")); Fento_Loader._Logger.LogWarning((object)("!!!---!!! MISSING Fento Level Loader " + levelName + " !!!---!!!")); } } } public static class Fento_Assets { [CompilerGenerated] private sealed class <Fento_LoadAllAssetsGradually>d__7 : IEnumerator<object>, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; private FieldInfo[] <>7__wrap1; private int <>7__wrap2; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Fento_LoadAllAssetsGradually>d__7(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>7__wrap1 = null; <>1__state = -2; } private bool MoveNext() { //IL_00a9: Unknown result type (might be due to invalid IL or missing references) //IL_00b3: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: { <>1__state = -1; Fento_Loader._Logger.LogInfo((object)"[Loader] Loading Assets"); FieldInfo[] fields = typeof(Fento_Assets).GetFields(BindingFlags.Static | BindingFlags.Public); <>7__wrap1 = fields; <>7__wrap2 = 0; goto IL_00d1; } case 1: <>1__state = -1; <>2__current = (object)new WaitForSeconds(0.05f); <>1__state = 2; return true; case 2: { <>1__state = -1; goto IL_00c3; } IL_00d1: if (<>7__wrap2 < <>7__wrap1.Length) { if (<>7__wrap1[<>7__wrap2].GetValue(typeof(Fento_Assets)) is Fento_Utils.AddresableObject addresableObject) { Fento_Loader._Logger.LogInfo((object)"-------------------------------------------------------"); <>2__current = addresableObject.Long_Load(); <>1__state = 1; return true; } goto IL_00c3; } <>7__wrap1 = null; Fento_Loader._Logger.LogInfo((object)"All Fento assets loaded."); return false; IL_00c3: <>7__wrap2++; goto IL_00d1; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } public static Fento_Utils.AddresableObject Guttertank = "Assets/Prefabs/Enemies/Spawners/BombEnemySpawnerGuttertank Variant.prefab"; public static Fento_Utils.AddresableObject Gutterman = "Assets/Prefabs/Enemies/Spawners/BombEnemySpawnerGutterman Variant.prefab"; public static Fento_Utils.AddresableObject RagePrefab = "Assets/Particles/Enemies/RageEffect.prefab"; public static Fento_Utils.AddresableObject Insignia = "Virtue Insignia"; public static Fento_Utils.AddresableObject Bolt = "Assets/Particles/Environment/LightningBoltWindupFollow Variant.prefab"; public static Fento_Utils.AddresableObject BoltExplosion = "Assets/Prefabs/Attacks and Projectiles/Explosions/Lightning Strike Explosive.prefab"; public static Fento_Utils.AddresableObject EnemyRocket = "Assets/Prefabs/Attacks and Projectiles/RocketEnemy.prefab"; [IteratorStateMachine(typeof(<Fento_LoadAllAssetsGradually>d__7))] public static IEnumerator Fento_LoadAllAssetsGradually() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Fento_LoadAllAssetsGradually>d__7(0); } } public static class Fento_LevelLoaders { public static class Main_Menu { public static Fento_Utils.PathObject ExtraText_1 = "Canvas/Main Menu (1)/LeftSide/Text (3)"; public static Fento_Utils.PathObject ExtraText_2 = "Canvas/Main Menu (1)/LeftSide/Text (3)/Text"; public static Fento_Utils.PathObject ExtraText_Christmas = "Canvas/Main Menu (1)/LeftSide/Holiday Greetings/Text (Christmas)"; public static Fento_Utils.PathObject ExtraText_Halloween = "Canvas/Main Menu (1)/LeftSide/Holiday Greetings/Text (Halloween)"; public static Fento_Utils.PathObject ExtraText_Easter = "Canvas/Main Menu (1)/LeftSide/Holiday Greetings/Text (Easter)"; public static TextMeshProUGUI Text_1; public static TextMeshProUGUI Text_2; public static TextMeshProUGUI Text_Christmas; public static TextMeshProUGUI Text_Halloween; public static TextMeshProUGUI Text_Easter; public static void SetupFentoLevel() { if ((Object)(object)ExtraText_1.gameObject != (Object)null) { Text_1 = ExtraText_1.GetComponent<TextMeshProUGUI>(); TryAddFento(Text_1); } if ((Object)(object)ExtraText_2.gameObject != (Object)null) { Text_2 = ExtraText_2.GetComponent<TextMeshProUGUI>(); TryAddFento(Text_2); } if ((Object)(object)ExtraText_Christmas.gameObject != (Object)null) { Text_Christmas = ExtraText_Christmas.GetComponent<TextMeshProUGUI>(); TryAddFento(Text_Christmas); } if ((Object)(object)ExtraText_Halloween.gameObject != (Object)null) { Text_Halloween = ExtraText_Halloween.GetComponent<TextMeshProUGUI>(); TryAddFento(Text_Halloween); } if ((Object)(object)ExtraText_Easter.gameObject != (Object)null) { Text_Easter = ExtraText_Easter.GetComponent<TextMeshProUGUI>(); TryAddFento(Text_Easter); } LevelSelectPanel[] array = Resources.FindObjectsOfTypeAll<LevelSelectPanel>().Where(delegate(LevelSelectPanel L) { //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_000b: Unknown result type (might be due to invalid IL or missing references) Scene scene = ((Component)L).gameObject.scene; return ((Scene)(ref scene)).isLoaded && Changed_Levels.Contains(L.levelNumber); }).ToArray(); foreach (LevelSelectPanel val in array) { if ((Object)(object)val != (Object)null && (Object)(object)((Component)val).transform.GetChild(0) != (Object)null) { GameObjectExtensions.GetOrAddComponent<Add_Fento_Marked>(((Component)((Component)val).transform.GetChild(0)).gameObject).Real_Level = true; } } } public static void TryAddFento(TextMeshProUGUI toAdd) { if (!((Object)(object)toAdd == (Object)null) && !((TMP_Text)toAdd).text.Contains("Fento Modfied")) { ((TMP_Text)toAdd).text = ((TMP_Text)toAdd).text + "<color=#FF0000> + Fento</color> <color=#FF3F00>2.4.164</color> <color=#FF6A00>Modified</color>"; } } } public static class Prelude_0_1 { public static Fento_Utils.PathObject UTRAKILL = "Canvas/HurtScreen/Title Sound/Image"; public static Fento_Utils.PathObject FentoTitle = "Canvas/HurtScreen/Title Sound"; public static TextMeshProUGUI Text; public static Fento_Utils.PathObject A_Wave_1 = "3 - Gun Room/Enemies/Wave 1"; public static Fento_Utils.PathObject A_Wave_2 = "3 - Gun Room/Enemies/Wave 2"; public static Fento_Utils.PathObject A_Trigger_1 = "3 - Gun Room/Enemies/Trigger"; public static ActivateArena A_ActivateArena_1; public static ActivateNextWave A_ActivateNextWave_1; public static Fento_Utils.PathObject B_Wave_1 = "4 - Hallway/4 Stuff/Enemy/Wave 1"; public static Fento_Utils.PathObject B_Trigger_1 = "4 - Hallway/4 Stuff/Enemy/Trigger 1"; public static Fento_Utils.PathObject B_Wave_2 = "4 - Hallway/4 Stuff/Enemy/Wave 2"; public static Fento_Utils.PathObject B_Trigger_2 = "4 - Hallway/4 Stuff/Enemy/Trigger 2"; public static ActivateArena B_ActivateArena_1; public static ActivateArena B_ActivateArena_2; public static Fento_Utils.PathObject C_Wave_1 = "6 - Glass Hallway/6 Content/Enemies"; public static Fento_Utils.PathObject C_Trigger_1 = "6 - Glass Hallway/6 Content/Enemies/Trigger"; public static ActivateArena C_ActivateArena_1; public static Fento_Utils.PathObject D_Wave_1 = "7 - Fan Room/7 Content/Enemies"; public static Fento_Utils.PathObject D_Trigger_1 = "7 - Fan Room/7 Content/Enemies/Cube"; public static Transform[] D_childs_1; public static ActivateArena D_ActivateArena_1; public static Fento_Utils.PathObject D_Wave_1_Clone = "7 - Fan Room/7 Content(Clone)/Enemies"; public static Fento_Utils.PathObject E_Wave_1 = "9 - Projectile Arena/9 Content/Enemies/Projectile Wave"; public static Fento_Utils.PathObject E_Wave_2 = "9 - Projectile Arena/9 Content/Enemies/New Wave"; public static Fento_Utils.PathObject E_Trigger_1 = "9 - Projectile Arena/9 Content/Enemies/Cube"; public static ActivateArena E_ActivateArena_1; public static ActivateNextWave E_ActivateNextWave_1; public static ActivateNextWave E_ActivateNextWave_2; public static Fento_Utils.PathObject E_Wave_1_Clone = "9 - Projectile Arena/9 Content(Clone)/Enemies/Projectile Wave"; public static Fento_Utils.PathObject E_Wave_2_Clone = "9 - Projectile Arena/9 Content(Clone)/Enemies/New Wave"; public static Fento_Utils.PathObject F_Wave_1 = "10 - Combo Hallway/10 Content/Enemies/Wave 1"; public static Fento_Utils.PathObject F_Wave_2 = "10 - Combo Hallway/10 Content/Enemies/Wave 2"; public static Fento_Utils.PathObject F_Trigger_1 = "10 - Combo Hallway/10 Content/Enemies/Trigger 1"; public static Fento_Utils.PathObject F_Trigger_2 = "10 - Combo Hallway/10 Content/Enemies/Trigger 2"; public static ActivateArena F_ActivateArena_1; public static ActivateArena F_ActivateArena_2; public static Fento_Utils.PathObject F_Wave_1_Clone = "10 - Combo Hallway/10 Content(Clone)/Enemies/Wave 1"; public static Fento_Utils.PathObject F_Wave_2_Clone = "10 - Combo Hallway/10 Content(Clone)/Enemies/Wave 2"; public static Fento_Utils.PathObject G_Wave_1 = "11 - Projectile Zombies Room/11 Content/Enemies/Wave 1"; public static Fento_Utils.PathObject G_Wave_2 = "11 - Projectile Zombies Room/11 Content/Enemies/Wave 1/Filth"; public static Fento_Utils.PathObject G_Trigger_1A = "11 - Projectile Zombies Room/11 Content/Enemies/Trigger 1A"; public static Fento_Utils.PathObject G_Trigger_1B = "11 - Projectile Zombies Room/11 Content/Enemies/Trigger 1B"; public static Fento_Utils.PathObject G_Trigger_2 = "11 - Projectile Zombies Room/11 Content/Enemies/Trigger 2"; public static ActivateArena G_ActivateArena_1A; public static ActivateArena G_ActivateArena_1B; public static ActivateArena G_ActivateArena_2; public static Fento_Utils.PathObject G_Wave_1_Clone = "11 - Projectile Zombies Room/11 Content(Clone)/Enemies/Wave 1"; public static Fento_Utils.PathObject G_Wave_2_Clone = "11 - Projectile Zombies Room/11 Content(Clone)/Enemies/Wave 1/Filth"; public static Fento_Utils.PathObject H_Wave_1 = "12 - Boss Hallway/12 Content/Enemies"; public static Fento_Utils.PathObject H_Trigger_1 = "12 - Boss Hallway/12 Content/Enemies/Cube"; public static Transform[] H_childs_1; public static ActivateArena H_ActivateArena_1; public static Fento_Utils.PathObject H_Wave_1_Clone = "12 - Boss Hallway/12 Content(Clone)/Enemies"; public static Fento_Utils.PathObject H_Secret_Wave_1 = "12 - Boss Hallway/12 Content/Secret Area"; public static EnemyIdentifier I_Boss_MaliciousFace; public static List<Idol> I_Idols = new List<Idol>(); public static Fento_Utils.PathObject I_Boss = "13 - Malicious Face Arena/13 Content/Boss/Spider"; public static Fento_Utils.PathObject I_Wave_1 = "13 - Malicious Face Arena/13 Content/Boss"; public static Fento_Utils.PathObject I_Trigger_1 = "13 - Malicious Face Arena/13 Content/Trigger"; public static ObjectActivator I_ObjectActivator_1; public static ActivateNextWave I_ActivateNextWave_1; public static ActivateArena I_ActivateArena_1; public static Fento_Utils.PathObject I_Wave_1_Clone = "13 - Malicious Face Arena/13 Content(Clone)/Boss"; public static List<Machine> A_3_Machines_1 = new List<Machine>(); public static List<Machine> E_9_Machines_2 = new List<Machine>(); public static List<Machine> F_10_Machines_3 = new List<Machine>(); public static List<Machine> G_11_Machines_4 = new List<Machine>(); public static List<Machine> H_12_Machines_5 = new List<Machine>(); public static Fento_Utils.PathObject Hint_1 = "5 - Glass Intro/5 Nonstuff/Cube (2)"; public static HudMessage Message_1; public const string Text_1 = "<color=orange>ENVIRONMENT</color> and <color=orange>TACTICS</color> can be very <color=#89FFFF>USEFUL</color> \n<color=#FF0000>YOU KNOW THE DRIL</color>"; public static Fento_Utils.PathObject Hint_2 = "10 - Combo Hallway/10 Nonstuff/Hint"; public static HudMessage Message_2; public const string Text_2 = "Upon death <color=orange>Radiance Idols</color> now can <color=#89FFFF>INCREASE RADIANCE TIER</color> \n<color=#FF0000>IT'S NOT GONNA HURT</color>"; public static Fento_Utils.PathObject Hint_3 = "11 - Projectile Zombies Room/11 Nonstuff/Hint"; public static HudMessage Message_3; public const string Text_3 = "<color=#FF6A00>SOME ENEMIES</color> now form <color=#89FFFF>UNIQUE SYMBIOTIC PAIRS</color> \n<color=#FF0000>DON'T BE SURPRISED</color>"; public static Fento_Utils.PathObject Hint_4 = "12 - Boss Hallway/12 Nonstuff/Hint"; public static HudMessage Message_4; public const string Text_4 = "<color=#FF0000>GOOD LUCK</color>"; public static void SetupFentoLevel() { //IL_0022: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Unknown result type (might be due to invalid IL or missing references) //IL_0182: Unknown result type (might be due to invalid IL or missing references) //IL_019b: Unknown result type (might be due to invalid IL or missing references) //IL_01b4: Unknown result type (might be due to invalid IL or missing references) //IL_01cd: Unknown result type (might be due to invalid IL or missing references) //IL_01d2: Unknown result type (might be due to invalid IL or missing references) //IL_010a: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Unknown result type (might be due to invalid IL or missing references) //IL_013c: Unknown result type (might be due to invalid IL or missing references) //IL_0155: Unknown result type (might be due to invalid IL or missing references) //IL_015a: Unknown result type (might be due to invalid IL or missing references) //IL_06ac: Unknown result type (might be due to invalid IL or missing references) //IL_06c0: Unknown result type (might be due to invalid IL or missing references) //IL_06e5: Unknown result type (might be due to invalid IL or missing references) //IL_06f9: Unknown result type (might be due to invalid IL or missing references) //IL_071e: Unknown result type (might be due to invalid IL or missing references) //IL_0732: Unknown result type (might be due to invalid IL or missing references) //IL_0757: Unknown result type (might be due to invalid IL or missing references) //IL_076b: Unknown result type (might be due to invalid IL or missing references) //IL_0790: Unknown result type (might be due to invalid IL or missing references) //IL_07a4: Unknown result type (might be due to invalid IL or missing references) //IL_07c8: Unknown result type (might be due to invalid IL or missing references) //IL_07dc: Unknown result type (might be due to invalid IL or missing references) //IL_0800: Unknown result type (might be due to invalid IL or missing references) //IL_0814: Unknown result type (might be due to invalid IL or missing references) //IL_0838: Unknown result type (might be due to invalid IL or missing references) //IL_084c: Unknown result type (might be due to invalid IL or missing references) //IL_0871: Unknown result type (might be due to invalid IL or missing references) //IL_0885: Unknown result type (might be due to invalid IL or missing references) //IL_0d4d: Unknown result type (might be due to invalid IL or missing references) //IL_0d9e: Unknown result type (might be due to invalid IL or missing references) //IL_0db2: Unknown result type (might be due to invalid IL or missing references) //IL_0dd7: Unknown result type (might be due to invalid IL or missing references) //IL_0deb: Unknown result type (might be due to invalid IL or missing references) //IL_0e10: Unknown result type (might be due to invalid IL or missing references) //IL_0e24: Unknown result type (might be due to invalid IL or missing references) //IL_0e48: Unknown result type (might be due to invalid IL or missing references) //IL_0e5c: Unknown result type (might be due to invalid IL or missing references) //IL_0e81: Unknown result type (might be due to invalid IL or missing references) //IL_0e95: Unknown result type (might be due to invalid IL or missing references) //IL_0eba: Unknown result type (might be due to invalid IL or missing references) //IL_0ece: Unknown result type (might be due to invalid IL or missing references) //IL_0ef3: Unknown result type (might be due to invalid IL or missing references) //IL_0f07: Unknown result type (might be due to invalid IL or missing references) //IL_0fd0: Unknown result type (might be due to invalid IL or missing references) //IL_0fe4: Unknown result type (might be due to invalid IL or missing references) //IL_100b: Unknown result type (might be due to invalid IL or missing references) //IL_101f: Unknown result type (might be due to invalid IL or missing references) //IL_1046: Unknown result type (might be due to invalid IL or missing references) //IL_105a: Unknown result type (might be due to invalid IL or missing references) //IL_1081: Unknown result type (might be due to invalid IL or missing references) //IL_1095: Unknown result type (might be due to invalid IL or missing references) //IL_10bc: Unknown result type (might be due to invalid IL or missing references) //IL_10d0: Unknown result type (might be due to invalid IL or missing references) //IL_10f7: Unknown result type (might be due to invalid IL or missing references) //IL_110b: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)UTRAKILL.transform != (Object)null) { UTRAKILL.transform.localScale = Vector3.zero; UTRAKILL.gameObject.SetActive(false); } if ((Object)(object)FentoTitle.transform != (Object)null) { Text = GameObjectExtensions.GetOrAddComponent<TextMeshProUGUI>(FentoTitle.gameObject); if ((Object)(object)Text != (Object)null && ((TMP_Text)Text).text != (Difficulty_Options.Skill_Issue ? "SKILLISSUE" : "FENTOKILL")) { ((TMP_Text)Text).font = Fento_Core.MainFont; ((Graphic)Text).color = new Color(1f, 1f, 1f); if (Difficulty_Options.Skill_Issue) { ((TMP_Text)Text).fontSize = 190f; ((TMP_Text)Text).text = "SKILLISSUE"; ((TMP_Text)Text).colorGradient = new VertexGradient(new Color(0.3f, 1f, 0.3f, 1f), new Color(0.1f, 0.95f, 0.1f, 1f), new Color(0f, 0.5f, 0f, 1f), new Color(0f, 0.15f, 0f, 1f)); } else { ((TMP_Text)Text).colorGradient = new VertexGradient(new Color(1f, 0.3f, 0.3f, 1f), new Color(0.95f, 0.1f, 0.1f, 1f), new Color(0.5f, 0f, 0f, 1f), new Color(0.15f, 0f, 0f, 1f)); if (Difficulty_Options.Extra_Skill_Respect) { ((TMP_Text)Text).fontSize = 190f; ((TMP_Text)Text).text = "FENTOKILL+"; } else { ((TMP_Text)Text).fontSize = 200f; ((TMP_Text)Text).text = "FENTOKILL"; } } ((TMP_Text)Text).fontStyle = (FontStyles)1; ((TMP_Text)Text).enableVertexGradient = true; ((TMP_Text)Text).alignment = (TextAlignmentOptions)514; } } A_3_Machines_1.Clear(); E_9_Machines_2.Clear(); F_10_Machines_3.Clear(); G_11_Machines_4.Clear(); H_12_Machines_5.Clear(); I_Idols.Clear(); I_Boss_MaliciousFace = null; Message_1 = Hint_1.GetComponent<HudMessage>(); Message_1.Set_HudMessage("<color=orange>ENVIRONMENT</color> and <color=orange>TACTICS</color> can be very <color=#89FFFF>USEFUL</color> \n<color=#FF0000>YOU KNOW THE DRIL</color>"); Message_2 = Hint_2.GetComponent<HudMessage>(); Message_2.Set_HudMessage("Upon death <color=orange>Radiance Idols</color> now can <color=#89FFFF>INCREASE RADIANCE TIER</color> \n<color=#FF0000>IT'S NOT GONNA HURT</color>"); Message_3 = Hint_3.GetComponent<HudMessage>(); Message_3.Set_HudMessage("<color=#FF6A00>SOME ENEMIES</color> now form <color=#89FFFF>UNIQUE SYMBIOTIC PAIRS</color> \n<color=#FF0000>DON'T BE SURPRISED</color>"); Message_4 = Hint_4.GetComponent<HudMessage>(); Message_4.Set_HudMessage("<color=#FF0000>GOOD LUCK</color>"); A_ActivateArena_1 = A_Trigger_1.GetComponent<ActivateArena>(); A_ActivateNextWave_1 = A_Wave_1.GetComponent<ActivateNextWave>(); B_ActivateArena_1 = B_Trigger_1.GetComponent<ActivateArena>(); B_ActivateArena_2 = B_Trigger_2.GetComponent<ActivateArena>(); C_ActivateArena_1 = C_Trigger_1.GetComponent<ActivateArena>(); D_childs_1 = D_Wave_1.childs; D_ActivateArena_1 = D_Trigger_1.GetComponent<ActivateArena>(); E_ActivateArena_1 = E_Trigger_1.GetComponent<ActivateArena>(); E_ActivateNextWave_1 = E_Wave_1.GetComponent<ActivateNextWave>(); E_ActivateNextWave_2 = E_Wave_2.GetComponent<ActivateNextWave>(); F_ActivateArena_1 = F_Trigger_1.GetComponent<ActivateArena>(); F_ActivateArena_2 = F_Trigger_2.GetComponent<ActivateArena>(); G_ActivateArena_1A = G_Trigger_1A.GetComponent<ActivateArena>(); G_ActivateArena_1B = G_Trigger_1B.GetComponent<ActivateArena>(); G_ActivateArena_2 = G_Trigger_2.GetComponent<ActivateArena>(); H_childs_1 = H_Wave_1.childs; H_ActivateArena_1 = H_Trigger_1.GetComponent<ActivateArena>(); I_ObjectActivator_1 = I_Trigger_1.GetComponent<ObjectActivator>(); I_ActivateNextWave_1 = I_Wave_1.GetComponent<ActivateNextWave>(); I_ActivateArena_1 = I_Trigger_1.GetComponent<ActivateArena>(); Fento_Utils.Enemy_InStack(A_Wave_1.transform, delegate(EnemyIdentifier enemy) { //IL_0008: Unknown result type (might be due to invalid IL or missing references) //IL_001e: Unknown result type (might be due to invalid IL or missing references) Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Mindflayer, ((Component)enemy).transform, Vector3.up * (5f + Random.value * 15f)); }); Fento_Utils.Enemy_InStack(A_Wave_1.transform, delegate(EnemyIdentifier enemy) { enemy.Sandify(false); }, Hard_Mode_Only: true); Fento_Utils.Update_ActivateArena(A_ActivateArena_1, A_Wave_1.transform); bool mini = false; Fento_Utils.Enemy_InStack(A_Wave_2.transform, delegate(EnemyIdentifier enemy) { //IL_003e: 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_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0029: Unknown result type (might be due to invalid IL or missing references) mini = !mini; if (!mini) { Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.SwordsMachineNonboss, ((Component)enemy).transform, Vector3.up * 0.1f); } else { Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Drone, ((Component)enemy).transform, Vector3.up * (16f + Random.value * 6f)); } }); Fento_Utils.Enemy_InStack(A_Wave_2.transform, delegate(EnemyIdentifier enemy) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Invalid comparison between Unknown and I4 //IL_0026: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Invalid comparison between Unknown and I4 if ((int)enemy.enemyType == 7) { Machine component10 = ((Component)enemy).GetComponent<Machine>(); if ((Object)(object)component10 != (Object)null) { A_3_Machines_1.Add(component10); } } else if ((int)enemy.enemyType == 1) { GameObjectExtensions.GetOrAddComponent<Drone_AntiSoftLock>(((Component)enemy).gameObject); } }); Fento_Utils.Enemy_InStack(A_Wave_2.transform, delegate(EnemyIdentifier enemy) { //IL_0008: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Invalid comparison between Unknown and I4 enemy.immuneToFriendlyFire = true; if ((int)enemy.enemyType == 1) { enemy.radianceTier += 1.1f; enemy.healthBuffModifier += 1.1f; enemy.BuffAll(); } }, Hard_Mode_Only: true); Fento_Utils.Make_List_MachineSymbiote(A_3_Machines_1); Fento_Utils.Update_ActivateNextWave(A_ActivateNextWave_1, A_Wave_2.transform); Fento_Utils.Enemy_InStack(B_Wave_1.transform, delegate(EnemyIdentifier enemy) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0008: Invalid comparison between Unknown and I4 if ((int)enemy.enemyType != 21) { enemy.Sandify(false); enemy.radianceTier += 2f; enemy.healthBuffModifier += 25f; enemy.BuffAll(); } }, Hard_Mode_Only: true); Fento_Utils.Update_ActivateArena(B_ActivateArena_1, B_Wave_1.transform); Fento_Utils.Invoke_NextFrame(delegate { Fento_Utils.Clear_AreaFromClones(((Component)B_ActivateArena_1).transform); }); Fento_Utils.Enemy_InStack(B_Wave_2.transform, delegate(EnemyIdentifier enemy) { //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Cerberus, ((Component)enemy).transform); }); Fento_Utils.Enemy_InStack(B_Wave_2.transform, delegate(EnemyIdentifier enemy) { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Unknown result type (might be due to invalid IL or missing references) Transform transform9 = ((Component)enemy).transform; transform9.localScale *= 0.55f; NavMeshAgent component9 = ((Component)enemy).GetComponent<NavMeshAgent>(); if ((Object)(object)component9 != (Object)null) { component9.acceleration = 50f; component9.speed = 50f; } }); Fento_Utils.Update_ActivateArena(B_ActivateArena_2, B_Wave_2.transform); bool variant = false; Fento_Utils.Enemy_InStack(C_Wave_1.transform, delegate(EnemyIdentifier enemy) { //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0060: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0033: Unknown result type (might be due to invalid IL or missing references) //IL_0036: Unknown result type (might be due to invalid IL or missing references) variant = !variant; Vector3 val; if (!variant) { Transform transform7 = ((Component)enemy).transform; val = new Vector3(Random.value, 0f, Random.value); Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Turret, transform7, ((Vector3)(ref val)).normalized, DestroyOnReplace: false); } else { Transform transform8 = ((Component)enemy).transform; val = new Vector3(Random.value, 0f, Random.value); Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.ShotgunHusk, transform8, ((Vector3)(ref val)).normalized, DestroyOnReplace: false); } GameObjectExtensions.GetOrAddComponent<Fento_DontLoop_Tag>(((Component)enemy).gameObject); }); Fento_Utils.Enemy_InStack(C_Wave_1.transform, delegate(EnemyIdentifier enemy) { //IL_0013: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Invalid comparison between Unknown and I4 enemy.radianceTier += 3.5f; if ((int)enemy.enemyType == 20) { enemy.Sandify(false); enemy.radianceTier -= 1.4f; enemy.healthBuffModifier += 0.55f; } else { enemy.healthBuffModifier += 1.7f; } enemy.damageBuffModifier += 0.5f; enemy.BuffAll(); }, Hard_Mode_Only: true); Fento_Utils.Update_ActivateArena(C_ActivateArena_1, C_Wave_1.transform); Fento_Utils.Custom_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Virtue, D_childs_1[0], new Vector3(10f, 61f, 576f), Quaternion.Euler(0f, 90f, 0f)); Fento_Utils.Custom_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Virtue, D_childs_1[1], new Vector3(60f, -10f, 607f), Quaternion.Euler(0f, 200f, 0f)); Fento_Utils.Custom_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Mindflayer, D_childs_1[2], new Vector3(23f, 25f, 565f), Quaternion.Euler(0f, 45f, 0f)); Fento_Utils.Custom_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Mindflayer, D_childs_1[3], new Vector3(68f, 30f, 597f), Quaternion.Euler(0f, 230f, 0f)); Fento_Utils.Custom_ReplaceEnemy(Fento_Utils.DetectebleEnemies.SwordsMachineNonboss, D_childs_1[4], new Vector3(54f, -6.8762f, 567f), Quaternion.Euler(0f, 270f, 0f)); Fento_Utils.Custom_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Gutterman, D_childs_1[5], new Vector3(40f, 8.0833f, 621f), Quaternion.Euler(0f, 180f, 0f)); Fento_Utils.Custom_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Guttertank, D_childs_1[6], new Vector3(59f, -1.8618f, 585f), Quaternion.Euler(0f, 200f, 0f)); Fento_Utils.Custom_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Guttertank, D_childs_1[7], new Vector3(22f, 8.1667f, 590f), Quaternion.Euler(0f, 125f, 0f)); Fento_Utils.Custom_ReplaceEnemy(Fento_Utils.DetectebleEnemies.CentaurRocketLauncher, D_childs_1[8], new Vector3(67f, 87.5f, 579f), Quaternion.Euler(0f, 180f, 0f)); Fento_Utils.Enemy_InStack(D_Wave_1.transform, delegate(EnemyIdentifier enemy) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0008: Invalid comparison between Unknown and I4 //IL_005a: Unknown result type (might be due to invalid IL or missing references) //IL_0060: Invalid comparison between Unknown and I4 //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_0073: Invalid comparison between Unknown and I4 //IL_0076: Unknown result type (might be due to invalid IL or missing references) //IL_007d: Invalid comparison between Unknown and I4 if ((int)enemy.enemyType == 35) { enemy.Sandify(false); enemy.damageBuffModifier += 0.75f; enemy.healthBuffModifier += 0.25f; enemy.speedBuffModifier += 0.5f; enemy.radianceTier += 2.5f; } if ((int)enemy.enemyType == 5) { enemy.Sandify(false); } else if ((int)enemy.enemyType != 34 && (int)enemy.enemyType != 9) { enemy.radianceTier += 1.25f; enemy.BuffAll(); } enemy.immuneToFriendlyFire = true; }, Hard_Mode_Only: true); Fento_Utils.Update_ActivateArena(D_ActivateArena_1, D_Wave_1.transform); Fento_Utils.Invoke_NextFrame(delegate { Fento_Utils.Clear_AreaFromClones(D_Wave_1_Clone.transform); }); Fento_Utils.Enemy_InStack(E_Wave_1.transform, delegate(EnemyIdentifier enemy) { //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Turret, ((Component)enemy).transform); }); Fento_Utils.Enemy_InStack(E_Wave_1.transform, delegate(EnemyIdentifier enemy) { enemy.Sandify(false); enemy.healthBuffModifier += 0.35f; enemy.radianceTier = 4f; enemy.BuffAll(); NavMeshAgent component8 = ((Component)enemy).GetComponent<NavMeshAgent>(); if ((Object)(object)component8 != (Object)null) { component8.acceleration += 15f; component8.speed += 15f; } }, Hard_Mode_Only: true); Fento_Utils.Update_ActivateArena(E_ActivateArena_1, E_Wave_1.transform); bool idolOnly = false; Fento_Utils.Enemy_InStack(E_Wave_2.transform, delegate(EnemyIdentifier enemy) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Invalid comparison between Unknown and I4 //IL_0087: Unknown result type (might be due to invalid IL or missing references) //IL_008c: Unknown result type (might be due to invalid IL or missing references) //IL_008f: Unknown result type (might be due to invalid IL or missing references) //IL_00a5: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_004f: 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_0057: Unknown result type (might be due to invalid IL or missing references) if ((int)enemy.enemyType == 3) { Object.Destroy((Object)(object)((Component)enemy).gameObject); } else { idolOnly = !idolOnly; Vector3 extraPos; if (idolOnly) { Transform transform4 = ((Component)enemy).transform; extraPos = new Vector3(Random.value * 3.5f, 0f, Random.value * 3.5f); Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Idol, transform4, ((Vector3)(ref extraPos)).normalized); } else { Transform transform5 = ((Component)enemy).transform; extraPos = new Vector3(Random.value * 3.5f, 0f, Random.value * 3.5f); Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Idol, transform5, ((Vector3)(ref extraPos)).normalized, DestroyOnReplace: false); Transform transform6 = ((Component)enemy).transform; extraPos = default(Vector3); Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Sisyphus, transform6, extraPos); } } }); Fento_Utils.Enemy_InStack(E_Wave_2.transform, delegate(EnemyIdentifier enemy) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0008: Invalid comparison between Unknown and I4 if ((int)enemy.enemyType == 19) { Machine component7 = ((Component)enemy).GetComponent<Machine>(); if ((Object)(object)component7 != (Object)null) { E_9_Machines_2.Add(component7); } } }); Fento_Utils.Enemy_InStack(E_Wave_2.transform, delegate(EnemyIdentifier enemy) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0008: Invalid comparison between Unknown and I4 //IL_0011: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Unknown result type (might be due to invalid IL or missing references) if ((int)enemy.enemyType == 21) { Transform transform3 = ((Component)enemy).transform; transform3.localScale *= 0.6f; GameObjectExtensions.GetOrAddComponent<Idol_Buff_Radiance>(((Component)enemy).gameObject).TierToAdd = 0.15f; enemy.BuffAll(); enemy.Sandify(false); } }, Hard_Mode_Only: true); Fento_Utils.Make_List_MachineSymbiote(E_9_Machines_2); Fento_Utils.Update_ActivateNextWave(E_ActivateNextWave_1, E_Wave_2.transform); E_ActivateNextWave_2.enemyCount = 6; Fento_Utils.Invoke_NextFrame(delegate { Fento_Utils.Clear_AreaFromClones(E_Wave_1_Clone.transform); Fento_Utils.Clear_AreaFromClones(E_Wave_2_Clone.transform); }); Fento_Utils.Enemy_InStack(F_Wave_1.transform, delegate(EnemyIdentifier enemy) { //IL_0017: 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_0033: Unknown result type (might be due to invalid IL or missing references) Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Idol, ((Component)enemy).transform, new Vector3(2f, 0f, 0f), DestroyOnReplace: false); Fento_Utils.Base_ReplaceEnemy(Fento_Utils.DetectebleEnemies.Streetcleaner, ((Component)enemy).transform); }); Fento_Utils.Enemy_InStack(F_Wave_1.transform, delegate(EnemyIdentifier enemy) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Invalid comparison between Unknown and I4 //IL_0042: Unknown result type (might be due to invalid IL or missing references) //IL_0049: Invalid comparison between Unknown and I4 //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) if ((int)enemy.enemyType == 6) { enemy.healthBuffModifier += 8f; enemy.damageBuffModifier += 0.25f; enemy.radianceTier += 2.5f; } else if ((int)enemy.enemyType == 21) { GameObjectExtensions.GetOrAddComponent<Idol_Buff_Radiance>(((Component)enemy).