Decompiled source of FentoKill v2.5.216
FentoKill.dll
Decompiled 6 days 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 CustomRay; 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.Events; using UnityEngine.InputSystem; using UnityEngine.ResourceManagement.AsyncOperations; 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")] namespace FentoKill; public static class Fento_Utils { public enum DetectebleEnemies { Flith, Stray, Schism, Soldier, Stalker, Sisyphus, Ferryman, Cerberus, CerberusStatue, CerberusStatueWhite, Mannequin, MannequinPoserWithEnemy, MaliciousFace, HideousMass, Idol, Puppet, Swordsmachine, SwordsMachineNonboss, Swordsmachine_Agony, Swordsmachine_Tundra, Guttertank, BombEnemySpawnerGuttertank, Gutterman, BombEnemySpawnerGutterman, Streetcleaner, Turret, Mindflayer, CentaurTower, CentaurMortar, CentaurRocketLauncher, CentaurRocketLauncherStand, Drone, DroneFlesh, DroneSkull_Variant, DroneFleshCamera_Variant, DroneGhostFromCorpse, Virtue, Big_Johninator, Flesh_Prison, Flesh_Panopticon, Mandalore } public class AddresableObject<TObject> { [CompilerGenerated] private sealed class <Long_Load>d__5 : IEnumerator<object>, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; public AddresableObject<TObject> <>4__this; private AsyncOperationHandle<TObject> <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__5(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<TObject>); <>1__state = -2; } private bool MoveNext() { //IL_0053: Unknown result type (might be due to invalid IL or missing references) //IL_0058: Unknown result type (might be due to invalid IL or missing references) //IL_005f: Unknown result type (might be due to invalid IL or missing references) //IL_0084: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Invalid comparison between Unknown and I4 int num = <>1__state; AddresableObject<TObject> addresableObject = <>4__this; switch (num) { default: return false; case 0: <>1__state = -1; if (addresableObject.obj != null) { Fento_Loader._Logger.LogWarning((object)("[Long_Load] - " + addresableObject.path + " Already Loaded - !!!")); return false; } <handle>5__2 = Addressables.LoadAssetAsync<TObject>((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 TObject obj; public TObject Object { get { //IL_0035: Unknown result type (might be due to invalid IL or missing references) //IL_003a: Unknown result type (might be due to invalid IL or missing references) if (obj == null) { Fento_Loader._Logger.LogInfo((object)("[Fast_Load] - Loading " + path)); fast_load = true; obj = Addressables.LoadAssetAsync<TObject>((object)path).WaitForCompletion(); } return obj; } } public Transform[] childs => GetAllChilds(transform); public Transform transform { get { if ((Object)(object)gameObject != (Object)null) { return gameObject.transform; } return null; } } public GameObject gameObject { get { object obj = Object; return (GameObject)((obj is GameObject) ? obj : null); } } [IteratorStateMachine(typeof(AddresableObject<>.<Long_Load>d__5))] public IEnumerator Long_Load() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Long_Load>d__5(0) { <>4__this = this }; } public T GetComponent<T>() { if ((Object)(object)gameObject != (Object)null) { return gameObject.GetComponent<T>(); } return default(T); } 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; } public static implicit operator AddresableObject<TObject>(string path) { return new AddresableObject<TObject>(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__4 : 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__4(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__3 : 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__3(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 Dictionary<DetectebleEnemies, AddresableObject<GameObject>> AllEnemies = new Dictionary<DetectebleEnemies, AddresableObject<GameObject>> { [DetectebleEnemies.Flith] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Zombie.prefab"), [DetectebleEnemies.Stray] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Projectile Zombie.prefab"), [DetectebleEnemies.Schism] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Super Projectile Zombie.prefab"), [DetectebleEnemies.Soldier] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/ShotgunHusk.prefab"), [DetectebleEnemies.Stalker] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Stalker.prefab"), [DetectebleEnemies.Sisyphus] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Sisyphus.prefab"), [DetectebleEnemies.Ferryman] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Ferryman.prefab"), [DetectebleEnemies.Cerberus] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Cerberus.prefab"), [DetectebleEnemies.CerberusStatue] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/CerberusStatue.prefab"), [DetectebleEnemies.CerberusStatueWhite] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/CerberusStatueWhite.prefab"), [DetectebleEnemies.Mannequin] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Mannequin.prefab"), [DetectebleEnemies.MannequinPoserWithEnemy] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/MannequinPoserWithEnemy.prefab"), [DetectebleEnemies.MaliciousFace] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Spider.prefab"), [DetectebleEnemies.HideousMass] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Mass.prefab"), [DetectebleEnemies.Idol] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Idol.prefab"), [DetectebleEnemies.Puppet] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Puppet.prefab"), [DetectebleEnemies.SwordsMachineNonboss] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/SwordsMachineNonboss.prefab"), [DetectebleEnemies.Swordsmachine_Agony] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/SwordsMachine Agony.prefab"), [DetectebleEnemies.Swordsmachine_Tundra] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/SwordsMachine Tundra.prefab"), [DetectebleEnemies.Gutterman] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Gutterman.prefab"), [DetectebleEnemies.BombEnemySpawnerGutterman] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Spawners/BombEnemySpawnerGutterman Variant.prefab"), [DetectebleEnemies.Guttertank] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Guttertank.prefab"), [DetectebleEnemies.BombEnemySpawnerGuttertank] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Spawners/BombEnemySpawnerGuttertank Variant.prefab"), [DetectebleEnemies.Streetcleaner] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Streetcleaner.prefab"), [DetectebleEnemies.Turret] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Turret.prefab"), [DetectebleEnemies.Mindflayer] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Mindflayer.prefab"), [DetectebleEnemies.CentaurTower] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/CentaurTower.prefab"), [DetectebleEnemies.CentaurMortar] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/CentaurMortar.prefab"), [DetectebleEnemies.CentaurRocketLauncher] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/CentaurRocketLauncher.prefab"), [DetectebleEnemies.CentaurRocketLauncherStand] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/CentaurRocketLauncherStand.prefab"), [DetectebleEnemies.Drone] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Drone.prefab"), [DetectebleEnemies.DroneFlesh] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/DroneFlesh.prefab"), [DetectebleEnemies.DroneSkull_Variant] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/DroneSkull Variant.prefab"), [DetectebleEnemies.DroneFleshCamera_Variant] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/DroneFleshCamera Variant.prefab"), [DetectebleEnemies.DroneGhostFromCorpse] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/DroneGhostFromCorpse.prefab"), [DetectebleEnemies.Virtue] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Virtue.prefab"), [DetectebleEnemies.Big_Johninator] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Big Johninator.prefab"), [DetectebleEnemies.Flesh_Prison] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Flesh Prison.prefab"), [DetectebleEnemies.Flesh_Panopticon] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Flesh Prison 2.prefab"), [DetectebleEnemies.Mandalore] = new AddresableObject<GameObject>("Assets/Prefabs/Enemies/Mandalore.prefab") }; public static BindingFlags allBindingFlags = BindingFlags.IgnoreCase | BindingFlags.DeclaredOnly | BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.FlattenHierarchy | BindingFlags.InvokeMethod | BindingFlags.CreateInstance | BindingFlags.GetField | BindingFlags.SetField | BindingFlags.GetProperty | BindingFlags.SetProperty | BindingFlags.PutDispProperty | BindingFlags.PutRefDispProperty | BindingFlags.ExactBinding | BindingFlags.SuppressChangeType | BindingFlags.OptionalParamBinding | BindingFlags.IgnoreReturn; public static void Activate_WithDelay(float time, GameObject activate, bool state = true) { //IL_0019: 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) //IL_002b: Expected O, but got Unknown //IL_0030: 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, delegate { activate.SetActive(state); })); } 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__3))] public static IEnumerator Next_FrameCoroutine(Action action) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Next_FrameCoroutine>d__3(0) { action = action }; } [IteratorStateMachine(typeof(<Delay_Coroutine>d__4))] public static IEnumerator Delay_Coroutine(float time, Action action) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Delay_Coroutine>d__4(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_002a: Unknown result type (might be due to invalid IL or missing references) //IL_002b: 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_001a: Unknown result type (might be due to invalid IL or missing references) //IL_006b: Unknown result type (might be due to invalid IL or missing references) //IL_0077: Unknown result type (might be due to invalid IL or missing references) EnemyIdentifier val = FindEnemyByType(enemy); GameObject val2 = null; val2 = ((enemy == DetectebleEnemies.CentaurRocketLauncher) ? ((Component)Object.Instantiate<EnemyIdentifier>(val, Pos, Quart)).gameObject : ((Component)Object.Instantiate<Transform>(((Component)val).transform.root, Pos, Quart)).gameObject); if (enemy == DetectebleEnemies.BombEnemySpawnerGutterman) { ((Component)val2.transform.GetChild(2)).gameObject.SetActive(true); } val2.transform.root.parent = Parent; val2.transform.position = Pos; val2.transform.rotation = Quart; val2.SetActive(active); GameObjectExtensions.GetOrAddComponent<Fento_DontLoop_Tag>(val2).eid = val; 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>(true); } 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 ActivateArena Create_ActivateArena(this GameObject obj, bool activated, GameObject[] enemies, Door[] doors) { ActivateArena obj2 = obj.gameObject.AddComponent<ActivateArena>(); obj2.activated = activated; obj2.enemies = enemies; obj2.doors = doors; return obj2; } public static ActivateNextWave Create_ActivateNextWave(this GameObject obj, int enemyCount, bool activated, bool lastWave, GameObject[] toActivate, GameObject[] nextEnemies, Door[] doors) { ActivateNextWave obj2 = obj.gameObject.AddComponent<ActivateNextWave>(); obj2.activated = activated; obj2.lastWave = lastWave; obj2.enemyCount = enemyCount; obj2.toActivate = toActivate; obj2.nextEnemies = nextEnemies; obj2.doors = doors; obj2.doorForward = doors.FirstOrDefault(); return obj2; } public static string ParseRealName(string input) { return input?.Replace('_', ' '); } public static EnemyIdentifier FindEnemyByType(DetectebleEnemies enemy) { if (AllEnemies.TryGetValue(enemy, out var value)) { EnemyIdentifier component = value.GetComponent<EnemyIdentifier>(); if ((Object)(object)component != (Object)null) { return component; } component = value.gameObject.GetComponentInChildren<EnemyIdentifier>(true); if ((Object)(object)component != (Object)null) { return component; } component = value.gameObject.GetComponentInParent<EnemyIdentifier>(true); if ((Object)(object)component != (Object)null) { return component; } } return null; } 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 DissableColliders(this Transform trf, Transform trc, bool ignore = true) { Collider2D[] componentsInChildren = ((Component)trf).GetComponentsInChildren<Collider2D>(); Collider2D[] componentsInChildren2 = ((Component)trc).GetComponentsInChildren<Collider2D>(); Collider2D[] array = componentsInChildren; foreach (Collider2D val in array) { Collider2D[] array2 = componentsInChildren2; foreach (Collider2D val2 in array2) { Physics2D.IgnoreCollision(val, val2, ignore); } } } 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; } public static void SetField(this object obj, string nameField, object value) { Type type = obj.GetType(); IEnumerable<FieldInfo> source = from field in type.GetFields(allBindingFlags) where field.Name == nameField select field; if (source.Count() > 0) { source.FirstOrDefault().SetValue(obj, value); return; } IEnumerable<MethodInfo> source2 = from method in type.GetMethods(allBindingFlags) where method.Name == "set_" + nameField select method; if (source2.Count() > 0) { source2.FirstOrDefault().Invoke(obj, new object[1] { value }); } } public static object GetField(this object obj, string nameField) { Type type = obj.GetType(); IEnumerable<FieldInfo> source = from field in type.GetFields(allBindingFlags) where field.Name == nameField select field; if (source.Count() > 0) { return source.FirstOrDefault().GetValue(obj); } IEnumerable<MethodInfo> source2 = from method in type.GetMethods(allBindingFlags) where method.Name == "get_" + nameField select method; if (source2.Count() > 0) { return source2.FirstOrDefault().Invoke(obj, Array.Empty<object>()); } return null; } public static T GetField<T>(this object obj, string nameField) { return (T)obj.GetField(nameField); } public static object InvokeMethod(this object obj, string nameMethod, params object[] args) { return obj.GetType().GetMethod(nameMethod, allBindingFlags).Invoke(obj, args); } } [BepInPlugin("com.enragedone.fentokill", "FentoKill", "2.5.216")] public class Fento_Loader : BaseUnityPlugin { public const string GUID = "com.enragedone.fentokill"; public const string Name = "FentoKill"; public const string Version = "2.5.216"; 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_0167: Unknown result type (might be due to invalid IL or missing references) //IL_0171: Expected O, but got Unknown //IL_0187: Unknown result type (might be due to invalid IL or missing references) //IL_0191: Expected O, but got Unknown //IL_01a3: Unknown result type (might be due to invalid IL or missing references) //IL_01b9: Unknown result type (might be due to invalid IL or missing references) //IL_01be: Unknown result type (might be due to invalid IL or missing references) //IL_01dd: Unknown result type (might be due to invalid IL or missing references) //IL_01e2: Unknown result type (might be due to invalid IL or missing references) //IL_01ef: Expected O, but got Unknown //IL_01ea: Unknown result type (might be due to invalid IL or missing references) //IL_0200: Unknown result type (might be due to invalid IL or missing references) //IL_0205: 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_0220: Expected O, but got Unknown //IL_021b: Unknown result type (might be due to invalid IL or missing references) //IL_0225: Expected O, but got Unknown //IL_0225: Unknown result type (might be due to invalid IL or missing references) //IL_0236: Expected O, but got Unknown //IL_0231: Unknown result type (might be due to invalid IL or missing references) //IL_023b: Expected O, but got Unknown //IL_023b: Unknown result type (might be due to invalid IL or missing references) //IL_024c: Expected O, but got Unknown //IL_0247: Unknown result type (might be due to invalid IL or missing references) //IL_0251: Expected O, but got Unknown //IL_0251: Unknown result type (might be due to invalid IL or missing references) //IL_0266: Expected O, but got Unknown //IL_0261: Unknown result type (might be due to invalid IL or missing references) //IL_026b: Expected O, but got Unknown //IL_026b: Unknown result type (might be due to invalid IL or missing references) //IL_0280: Expected O, but got Unknown //IL_027b: Unknown result type (might be due to invalid IL or missing references) //IL_0285: Expected O, but got Unknown //IL_0299: Expected O, but got Unknown //IL_0294: Unknown result type (might be due to invalid IL or missing references) //IL_029e: Expected O, but got Unknown //IL_02b0: Unknown result type (might be due to invalid IL or missing references) //IL_02c2: Unknown result type (might be due to invalid IL or missing references) //IL_02c7: Unknown result type (might be due to invalid IL or missing references) //IL_02e6: Unknown result type (might be due to invalid IL or missing references) //IL_02eb: Unknown result type (might be due to invalid IL or missing references) //IL_02f8: Expected O, but got Unknown //IL_02f3: Unknown result type (might be due to invalid IL or missing references) //IL_0305: Unknown result type (might be due to invalid IL or missing references) //IL_030a: Unknown result type (might be due to invalid IL or missing references) //IL_0314: Unknown result type (might be due to invalid IL or missing references) //IL_0325: Expected O, but got Unknown //IL_0320: Unknown result type (might be due to invalid IL or missing references) //IL_032a: Expected O, but got Unknown //IL_032a: Unknown result type (might be due to invalid IL or missing references) //IL_033b: Expected O, but got Unknown //IL_0336: Unknown result type (might be due to invalid IL or missing references) //IL_0340: Expected O, but got Unknown //IL_0350: Expected O, but got Unknown //IL_034b: Unknown result type (might be due to invalid IL or missing references) //IL_0355: Expected O, but got Unknown //IL_0367: Unknown result type (might be due to invalid IL or missing references) //IL_037c: Unknown result type (might be due to invalid IL or missing references) //IL_0381: Unknown result type (might be due to invalid IL or missing references) //IL_03a0: Unknown result type (might be due to invalid IL or missing references) //IL_03a5: Unknown result type (might be due to invalid IL or missing references) //IL_03b2: Expected O, but got Unknown //IL_03ad: Unknown result type (might be due to invalid IL or missing references) //IL_03c2: Unknown result type (might be due to invalid IL or missing references) //IL_03c7: Unknown result type (might be due to invalid IL or missing references) //IL_03d1: Unknown result type (might be due to invalid IL or missing references) //IL_03e2: Expected O, but got Unknown //IL_03dd: Unknown result type (might be due to invalid IL or missing references) //IL_03e7: Expected O, but got Unknown //IL_03f7: Expected O, but got Unknown //IL_03f2: Unknown result type (might be due to invalid IL or missing references) //IL_03fc: Expected O, but got Unknown //IL_040e: Unknown result type (might be due to invalid IL or missing references) //IL_0421: Unknown result type (might be due to invalid IL or missing references) //IL_0426: Unknown result type (might be due to invalid IL or missing references) //IL_0445: Unknown result type (might be due to invalid IL or missing references) //IL_044a: Unknown result type (might be due to invalid IL or missing references) //IL_0457: Expected O, but got Unknown //IL_0452: Unknown result type (might be due to invalid IL or missing references) //IL_0465: Unknown result type (might be due to invalid IL or missing references) //IL_046a: Unknown result type (might be due to invalid IL or missing references) //IL_0474: 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_048e: Expected O, but got Unknown //IL_048e: Unknown result type (might be due to invalid IL or missing references) //IL_04a3: Expected O, but got Unknown //IL_049e: Unknown result type (might be due to invalid IL or missing references) //IL_04a8: Expected O, but got Unknown //IL_04bc: Expected O, but got Unknown //IL_04b7: Unknown result type (might be due to invalid IL or missing references) //IL_04c1: Expected O, but got Unknown //IL_04d3: Unknown result type (might be due to invalid IL or missing references) //IL_04e6: Unknown result type (might be due to invalid IL or missing references) //IL_04eb: Unknown result type (might be due to invalid IL or missing references) //IL_050a: Unknown result type (might be due to invalid IL or missing references) //IL_050f: Unknown result type (might be due to invalid IL or missing references) //IL_051c: Expected O, but got Unknown //IL_0517: Unknown result type (might be due to invalid IL or missing references) //IL_052a: Unknown result type (might be due to invalid IL or missing references) //IL_052f: Unknown result type (might be due to invalid IL or missing references) //IL_0539: Unknown result type (might be due to invalid IL or missing references) //IL_054a: Expected O, but got Unknown //IL_0545: Unknown result type (might be due to invalid IL or missing references) //IL_054f: Expected O, but got Unknown //IL_054f: Unknown result type (might be due to invalid IL or missing references) //IL_0560: Expected O, but got Unknown //IL_055b: Unknown result type (might be due to invalid IL or missing references) //IL_0565: Expected O, but got Unknown //IL_0565: Unknown result type (might be due to invalid IL or missing references) //IL_057a: Expected O, but got Unknown //IL_0575: Unknown result type (might be due to invalid IL or missing references) //IL_057f: Expected O, but got Unknown //IL_057f: Unknown result type (might be due to invalid IL or missing references) //IL_0594: Expected O, but got Unknown //IL_058f: Unknown result type (might be due to invalid IL or missing references) //IL_0599: Expected O, but got Unknown //IL_0599: Unknown result type (might be due to invalid IL or missing references) //IL_05ae: Expected O, but got Unknown //IL_05a9: Unknown result type (might be due to invalid IL or missing references) //IL_05b3: Expected O, but got Unknown //IL_05b3: Unknown result type (might be due to invalid IL or missing references) //IL_05c0: Expected O, but got Unknown //IL_05bb: Unknown result type (might be due to invalid IL or missing references) //IL_05ce: Unknown result type (might be due to invalid IL or missing references) //IL_05d3: Unknown result type (might be due to invalid IL or missing references) //IL_05dd: Unknown result type (might be due to invalid IL or missing references) //IL_05ee: Expected O, but got Unknown //IL_05e9: Unknown result type (might be due to invalid IL or missing references) //IL_05f3: Expected O, but got Unknown //IL_05f3: Unknown result type (might be due to invalid IL or missing references) //IL_0604: Expected O, but got Unknown //IL_05ff: Unknown result type (might be due to invalid IL or missing references) //IL_0609: Expected O, but got Unknown //IL_0609: Unknown result type (might be due to invalid IL or missing references) //IL_061a: Expected O, but got Unknown //IL_0615: Unknown result type (might be due to invalid IL or missing references) //IL_061f: Expected O, but got Unknown //IL_061f: Unknown result type (might be due to invalid IL or missing references) //IL_0630: Expected O, but got Unknown //IL_062b: Unknown result type (might be due to invalid IL or missing references) //IL_0635: Expected O, but got Unknown //IL_0635: Unknown result type (might be due to invalid IL or missing references) //IL_0646: Expected O, but got Unknown //IL_0641: Unknown result type (might be due to invalid IL or missing references) //IL_064b: Expected O, but got Unknown //IL_064b: Unknown result type (might be due to invalid IL or missing references) //IL_065c: Expected O, but got Unknown //IL_0657: Unknown result type (might be due to invalid IL or missing references) //IL_0661: Expected O, but got Unknown //IL_0671: Expected O, but got Unknown //IL_066c: Unknown result type (might be due to invalid IL or missing references) //IL_0676: Expected O, but got Unknown _Instance = this; _Logger = ((BaseUnityPlugin)this).Logger; _Logger.LogInfo((object)"Fento_Loader v2.5.216 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)); Difficulty_Options.B__Global_Enable_Modify_Everyone = new BoolField(config.rootPanel, "Modify Every Enemy With Changes Below", "com.enragedone.fentokill.settings.B__Global_Enable_Modify_Everyone", false); Difficulty_Options.B__Global_Disable_Level_Changes = new BoolField(config.rootPanel, "Disable Level Changes<color=#FF0000>+</color>", "com.enragedone.fentokill.settings.B__Global_Disable_Level_Changes", 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 val = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val, "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(val, "Make Friendly Fire Weaker", "com.enragedone.fentokill.settings.B__Buff_Forse_All_ImmuneFriendly", false); Difficulty_Options.B__Buff_Forse_All_PreSanded = new BoolField(val, "Make Every Enemy Pre Sanded", "com.enragedone.fentokill.settings.B__Buff_Forse_All_PreSanded", false); Difficulty_Options.B__Buff_Forse_All_Radiance = new BoolField(val, "Make Every Enemy Radiant", "com.enragedone.fentokill.settings.B__Buff_Forse_All_Radiance", false); Difficulty_Options.V__Varb_Multiply_HardDamage = new FloatField(val, "Change Hard Damage Multiplier", "com.enragedone.fentokill.settings.V__Varb_Multiply_HardDamage", 1f); Difficulty_Options.V__Varb_Multiply_Radiance_Tier = new FloatField(val, "Change Radiance Tier Multiplier", "com.enragedone.fentokill.settings.V__Varb_Multiply_Radiance_Tier", 1f); Difficulty_Options.V__Varb_Add_Radiance_Tier = new FloatField(val, "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 val2 = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val2, "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(val2, "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(val2, "Disable Pre Sanded Buff", "com.enragedone.fentokill.settings.B__Issue_Disable_PreSanded", false); Difficulty_Options.B__Issue_Disable_Radiance = new BoolField(val2, "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 val3 = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val3, "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(val3, "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(val3, "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 val4 = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val4, "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(val4, "Change Radiance Health Multiplier", "com.enragedone.fentokill.settings.V__Varb_Extra_Rad_Health_Mult", 1f); Difficulty_Options.V__Varb_Radiance_Damage_Mult = new FloatField(val4, "Change Radiance Damage Multiplier", "com.enragedone.fentokill.settings.V__Varb_Extra_Rad_Damage_Mult", 1f); Difficulty_Options.V__Varb_Radiance_Speed_Mult = new FloatField(val4, "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 val5 = new ConfigPanel(config.rootPanel, "Edit", "com.enragedone.fentokill.settings.extra_change"); new ConfigHeader(val5, "[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(val5, "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(val5, "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(val5, "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(val5, "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(val5, "Change Cooldown Time", "com.enragedone.fentokill.settings.V__Varb_7_4_CoolDown_Time", 21f); new ConfigHeader(val5, "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(val5, "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(val5, "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(val5, "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(val5, "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(val5, "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(val5, "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(val5, "Disable E.M.P. CHARGE SERVICES", "com.enragedone.fentokill.settings.B__7_4_Disable_EMP_CHARGE_SERVICES", false); _Logger.LogInfo((object)"Config v2.5.216 loaded successfully"); Confing_Loaded = true; } catch { _Logger.LogError((object)"Fento_Loader v2.5.216 !!!---!!! ERROR With PluginConfigurator Init"); } Fento_Core.Boot_Core(); _Harmony.PatchAll(typeof(Enemy_Patches)); _Harmony.PatchAll(typeof(Other_Patches)); _Harmony.PatchAll(typeof(Issue_Patches)); _Logger.LogInfo((object)"Fento_Loader v2.5.216 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.5.216 - 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 ((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_LoadAllAssets_Gradually()); } }); 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) { if (levelName != "Level 4-4") { 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_LoadAllAssets_Gradually>d__23 : IEnumerator<object>, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; private Type <type>5__2; private FieldInfo[] <>7__wrap2; private int <>7__wrap3; private Dictionary<Fento_Utils.DetectebleEnemies, Fento_Utils.AddresableObject<GameObject>>.Enumerator <>7__wrap4; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Fento_LoadAllAssets_Gradually>d__23(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { int num = <>1__state; if (num == -3 || (uint)(num - 5) <= 1u) { try { } finally { <>m__Finally1(); } } <type>5__2 = null; <>7__wrap2 = null; <>7__wrap4 = default(Dictionary<Fento_Utils.DetectebleEnemies, Fento_Utils.AddresableObject<GameObject>>.Enumerator); <>1__state = -2; } private bool MoveNext() { //IL_00d3: Unknown result type (might be due to invalid IL or missing references) //IL_00dd: Expected O, but got Unknown //IL_0137: Unknown result type (might be due to invalid IL or missing references) //IL_0141: Expected O, but got Unknown //IL_01df: Unknown result type (might be due to invalid IL or missing references) //IL_01e9: Expected O, but got Unknown try { switch (<>1__state) { default: return false; case 0: { <>1__state = -1; Fento_Loader._Logger.LogInfo((object)"[Loader] Loading Assets"); <type>5__2 = typeof(Fento_Assets); FieldInfo[] fields = <type>5__2.GetFields(BindingFlags.Static | BindingFlags.Public); <>7__wrap2 = fields; <>7__wrap3 = 0; goto IL_0164; } case 1: <>1__state = -1; <>2__current = (object)new WaitForSeconds(0.01f); <>1__state = 2; return true; case 2: <>1__state = -1; goto IL_0156; case 3: <>1__state = -1; <>2__current = (object)new WaitForSeconds(0.01f); <>1__state = 4; return true; case 4: <>1__state = -1; goto IL_0156; case 5: <>1__state = -3; <>2__current = (object)new WaitForSeconds(0.01f); <>1__state = 6; return true; case 6: { <>1__state = -3; break; } IL_0164: if (<>7__wrap3 < <>7__wrap2.Length) { object value = <>7__wrap2[<>7__wrap3].GetValue(<type>5__2); if (value is Fento_Utils.AddresableObject<GameObject> addresableObject) { Fento_Loader._Logger.LogInfo((object)"-------------------------------------------------------"); <>2__current = addresableObject.Long_Load(); <>1__state = 1; return true; } if (value is Fento_Utils.AddresableObject<AudioClip> addresableObject2) { Fento_Loader._Logger.LogInfo((object)"-------------------------------------------------------"); <>2__current = addresableObject2.Long_Load(); <>1__state = 3; return true; } goto IL_0156; } <>7__wrap2 = null; <>7__wrap4 = Fento_Utils.AllEnemies.GetEnumerator(); <>1__state = -3; break; IL_0156: <>7__wrap3++; goto IL_0164; } if (<>7__wrap4.MoveNext()) { KeyValuePair<Fento_Utils.DetectebleEnemies, Fento_Utils.AddresableObject<GameObject>> current = <>7__wrap4.Current; Fento_Loader._Logger.LogInfo((object)"-------------------------------------------------------"); <>2__current = current.Value.Long_Load(); <>1__state = 5; return true; } <>m__Finally1(); <>7__wrap4 = default(Dictionary<Fento_Utils.DetectebleEnemies, Fento_Utils.AddresableObject<GameObject>>.Enumerator); Fento_Loader._Logger.LogInfo((object)"All Fento assets loaded."); return false; } catch { //try-fault ((IDisposable)this).Dispose(); throw; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } private void <>m__Finally1() { <>1__state = -1; ((IDisposable)<>7__wrap4).Dispose(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } public static Fento_Utils.AddresableObject<GameObject> Explosion = "Assets/Prefabs/Attacks and Projectiles/Explosions/Explosion.prefab"; public static Fento_Utils.AddresableObject<GameObject> V2UnParry = "Assets/Particles/Flashes/V2FlashUnparriable.prefab"; public static Fento_Utils.AddresableObject<GameObject> RocketLauncher = "Assets/Prefabs/Weapons/Rocket Launcher Cannonball.prefab"; public static Fento_Utils.AddresableObject<GameObject> Cannonball = "Assets/Prefabs/Attacks and Projectiles/Cannonball.prefab"; public static Fento_Utils.AddresableObject<GameObject> Railcannon_Beam = "Assets/Prefabs/Attacks and Projectiles/Hitscan Beams/Railcannon Beam.prefab"; public static Fento_Utils.AddresableObject<GameObject> Railcannon_Fire = "Assets/Particles/SoundBubbles/RailcannonFire.prefab"; public static Fento_Utils.AddresableObject<GameObject> Railcannon_Charge = "Assets/Particles/SoundBubbles/RailcannonFullCharge.prefab"; public static Fento_Utils.AddresableObject<GameObject> NailAltFodder = "Assets/Prefabs/Attacks and Projectiles/NailAltFodder.prefab"; public static Fento_Utils.AddresableObject<AudioClip> Punch_heavy = "Assets/Sounds/Weapons/punch_heavy.wav"; public static Fento_Utils.AddresableObject<AudioClip> RocketFire_Default = "Assets/Sounds/Weapons/RocketFire5.wav"; public static Fento_Utils.AddresableObject<GameObject> LavaBox = "Assets/Prefabs/Sandbox/Lava.prefab"; public static Fento_Utils.AddresableObject<AudioClip> Vase_Break = "Assets/Sounds/Environment/VaseBreak.wav"; public static Fento_Utils.AddresableObject<AudioClip> bigRock_Break = "Assets/Sounds/Environment/bigRockBreak.wav"; public static Fento_Utils.AddresableObject<AudioClip> P2_OST = "Assets/Music/P-2.wav"; public static Fento_Utils.AddresableObject<AudioClip> E_1_Jazz_OST = "Assets/Music/Encores/1-E Jazz.wav"; public static Fento_Utils.AddresableObject<AudioClip> E_1_Ambiance_OST = "Assets/Music/Encores/1-E Ambiance.wav"; public static Fento_Utils.AddresableObject<GameObject> Guttertank = "Assets/Prefabs/Enemies/Spawners/BombEnemySpawnerGuttertank Variant.prefab"; public static Fento_Utils.AddresableObject<GameObject> Gutterman = "Assets/Prefabs/Enemies/Spawners/BombEnemySpawnerGutterman Variant.prefab"; public static Fento_Utils.AddresableObject<GameObject> RagePrefab = "Assets/Particles/Enemies/RageEffect.prefab"; public static Fento_Utils.AddresableObject<GameObject> Insignia = "Virtue Insignia"; public static Fento_Utils.AddresableObject<GameObject> Bolt = "Assets/Particles/Environment/LightningBoltWindupFollow Variant.prefab"; public static Fento_Utils.AddresableObject<GameObject> BoltExplosion = "Assets/Prefabs/Attacks and Projectiles/Explosions/Lightning Strike Explosive.prefab"; public static Fento_Utils.AddresableObject<GameObject> EnemyRocket = "Assets/Prefabs/Attacks and Projectiles/RocketEnemy.prefab"; [IteratorStateMachine(typeof(<Fento_LoadAllAssets_Gradually>d__23))] public static IEnumerator Fento_LoadAllAssets_Gradually() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Fento_LoadAllAssets_Gradually>d__23(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.5.216</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_07c9: Unknown result type (might be due to invalid IL or missing references) //IL_07dd: Unknown result type (might be due to invalid IL or missing references) //IL_0802: Unknown result type (might be due to invalid IL or missing references) //IL_0816: Unknown result type (might be due to invalid IL or missing references) //IL_083b: Unknown result type (might be due to invalid IL or missing references) //IL_084f: Unknown result type (might be due to invalid IL or missing references) //IL_0874: Unknown result type (might be due to invalid IL or missing references) //IL_0888: Unknown result type (might be due to invalid IL or missing references) //IL_0d50: Unknown result type (might be due to invalid IL or missing references) //IL_0da1: Unknown result type (might be due to invalid IL or missing references) //IL_0db5: Unknown result type (might be due to invalid IL or missing references) //IL_0dda: Unknown result type (might be due to invalid IL or missing references) //IL_0dee: Unknown result type (might be due to invalid IL or missing references) //IL_0e12: Unknown result type (might be due to invalid IL or missing references) //IL_0e26: Unknown result type (might be due to invalid IL or missing references) //IL_0e4b: Unknown result type (might be due to invalid IL or missing references) //IL_0e5f: Unknown result type (might be due to invalid IL or missing references) //IL_0e84: Unknown result type (might be due to invalid IL or missing references) //IL_0e98: Unknown result type (might be due to invalid IL or missing references) //IL_0ebc: Unknown result type (might be due to invalid IL or missing references) //IL_0ed0: Unknown result type (might be due to invalid IL or missing references) //IL_0ef5: Unknown result type (might be due to invalid IL or missing references) //IL_0f09: Unknown result type (might be due to invalid IL or missing references) //IL_0fd1: Unknown result type (might be due to invalid IL or missing references) //IL_0fe5: 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 += 2