Decompiled source of FentoKill v3.6.286
FentoKill.dll
Decompiled 3 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 HarmonyLib; using PluginConfig.API; using PluginConfig.API.Decorators; using PluginConfig.API.Fields; using Sandbox; using TMPro; using Unity.AI.Navigation; 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, Gabriel, Gabriel2ndVariant, 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")); } else { Fento_Loader._Logger.LogError((object)("[Long_Load] - Failed load asset 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); } _ = (Object)(object)obj == (Object)null; 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; } } public class Filth_Rage_IQ : MonoBehaviour { public ZombieMelee zomb; public EnemyIdentifier eid; public Animator anim; public Rigidbody rb; public NavMeshAgent nma; public float JumpTimer; public float Timer; public float ExplodeTimer = 1f; public void Start() { zomb = ((Component)this).GetComponent<ZombieMelee>(); eid = ((Component)this).GetComponent<EnemyIdentifier>(); anim = ((Component)this).GetComponent<Animator>(); rb = ((Component)this).GetComponent<Rigidbody>(); nma = ((Component)this).GetComponent<NavMeshAgent>(); if (Object.op_Implicit((Object)(object)zomb)) { zomb.SetField("defaultCoolDown", 0.5f); } } public void FixedUpdate() { //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_008b: Unknown result type (might be due to invalid IL or missing references) //IL_0090: Unknown result type (might be due to invalid IL or missing references) //IL_0095: Unknown result type (might be due to invalid IL or missing references) //IL_0187: Unknown result type (might be due to invalid IL or missing references) //IL_0192: Unknown result type (might be due to invalid IL or missing references) //IL_0197: 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_01a5: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Unknown result type (might be due to invalid IL or missing references) //IL_01bb: Unknown result type (might be due to invalid IL or missing references) //IL_01c0: Unknown result type (might be due to invalid IL or missing references) //IL_01ca: Unknown result type (might be due to invalid IL or missing references) //IL_01cf: 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_02a8: Unknown result type (might be due to invalid IL or missing references) //IL_02b8: Unknown result type (might be due to invalid IL or missing references) //IL_01ef: Unknown result type (might be due to invalid IL or missing references) //IL_02d8: Unknown result type (might be due to invalid IL or missing references) //IL_02e3: Unknown result type (might be due to invalid IL or missing references) //IL_021f: Unknown result type (might be due to invalid IL or missing references) //IL_0224: Unknown result type (might be due to invalid IL or missing references) //IL_0229: Unknown result type (might be due to invalid IL or missing references) //IL_0234: Unknown result type (might be due to invalid IL or missing references) //IL_0239: Unknown result type (might be due to invalid IL or missing references) //IL_023e: Unknown result type (might be due to invalid IL or missing references) //IL_0242: Unknown result type (might be due to invalid IL or missing references) //IL_0247: Unknown result type (might be due to invalid IL or missing references) //IL_0250: Unknown result type (might be due to invalid IL or missing references) //IL_0255: Unknown result type (might be due to invalid IL or missing references) //IL_025c: Unknown result type (might be due to invalid IL or missing references) //IL_0261: Unknown result type (might be due to invalid IL or missing references) //IL_0282: Unknown result type (might be due to invalid IL or missing references) //IL_0287: Unknown result type (might be due to invalid IL or missing references) //IL_028e: Unknown result type (might be due to invalid IL or missing references) //IL_0293: Unknown result type (might be due to invalid IL or missing references) //IL_00ec: Unknown result type (might be due to invalid IL or missing references) //IL_00f3: Unknown result type (might be due to invalid IL or missing references) //IL_010e: Unknown result type (might be due to invalid IL or missing references) //IL_0113: Unknown result type (might be due to invalid IL or missing references) //IL_011e: Unknown result type (might be due to invalid IL or missing references) //IL_03e5: Unknown result type (might be due to invalid IL or missing references) //IL_03fb: Unknown result type (might be due to invalid IL or missing references) //IL_02fd: Unknown result type (might be due to invalid IL or missing references) //IL_0302: Unknown result type (might be due to invalid IL or missing references) //IL_0307: Unknown result type (might be due to invalid IL or missing references) //IL_0317: Unknown result type (might be due to invalid IL or missing references) //IL_0322: Unknown result type (might be due to invalid IL or missing references) //IL_0327: Unknown result type (might be due to invalid IL or missing references) //IL_032c: Unknown result type (might be due to invalid IL or missing references) //IL_0331: Unknown result type (might be due to invalid IL or missing references) //IL_0341: Unknown result type (might be due to invalid IL or missing references) //IL_0346: Unknown result type (might be due to invalid IL or missing references) //IL_034b: Unknown result type (might be due to invalid IL or missing references) //IL_0356: Unknown result type (might be due to invalid IL or missing references) //IL_035b: Unknown result type (might be due to invalid IL or missing references) //IL_0360: Unknown result type (might be due to invalid IL or missing references) //IL_036b: Unknown result type (might be due to invalid IL or missing references) //IL_0427: Unknown result type (might be due to invalid IL or missing references) //IL_042c: Unknown result type (might be due to invalid IL or missing references) //IL_0430: Unknown result type (might be due to invalid IL or missing references) //IL_0440: 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_044f: Unknown result type (might be due to invalid IL or missing references) //IL_0453: Unknown result type (might be due to invalid IL or missing references) //IL_045d: Unknown result type (might be due to invalid IL or missing references) //IL_0462: Unknown result type (might be due to invalid IL or missing references) //IL_0477: Unknown result type (might be due to invalid IL or missing references) //IL_047c: Unknown result type (might be due to invalid IL or missing references) //IL_047e: Unknown result type (might be due to invalid IL or missing references) //IL_048f: Unknown result type (might be due to invalid IL or missing references) //IL_0494: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)zomb == (Object)null || eid.target == null) { return; } JumpTimer += Time.fixedDeltaTime * 0.1f; Timer += Time.fixedDeltaTime; ExplodeTimer += Time.fixedDeltaTime; if (zomb.diving) { Vector3 val = eid.target.position - ((Component)this).transform.position; if (ExplodeTimer > 2f && rb.velocity.y > -5f && ((Vector3)(ref val)).magnitude < 3.5f) { ExplodeTimer = 0f; Explosion[] componentsInChildren = Object.Instantiate<GameObject>(Fento_Assets.ExplosionBig.gameObject, ((Component)this).transform.position + ((Vector3)(ref val)).normalized * Mathf.Clamp(((Vector3)(ref val)).magnitude, 0f, 4f), ((Component)this).transform.rotation).GetComponentsInChildren<Explosion>(); foreach (Explosion obj in componentsInChildren) { obj.toIgnore.Add((EnemyType)3); obj.enemy = true; obj.damage = (int)((float)obj.damage / 1.3f); } } } if (!(Timer > 0.5f)) { return; } Timer = 0f; Rigidbody obj2 = rb; Vector3 velocity = obj2.velocity; Vector3 val2 = rb.velocity; obj2.velocity = velocity + ((Vector3)(ref val2)).normalized * 5f; Rigidbody obj3 = rb; obj3.velocity += Vector3.up * -10f; if (zomb.diving && rb.velocity.y > 1f) { zomb.DamageStart(); Vector3 val3 = eid.target.PredictTargetPosition(0.1f, true) + Vector3.up - ((Component)this).transform.position; Vector3 normalized = ((Vector3)(ref val3)).normalized; Rigidbody obj4 = rb; obj4.velocity += normalized * 30f; normalized.y *= 0.1f; Rigidbody obj5 = rb; obj5.velocity += normalized * 20f; } if (eid.target.position.y > ((Component)this).transform.position.y + 4f && Vector3.Distance(eid.target.position, ((Component)this).transform.position) > 10f) { if (!Physics.Raycast(((Component)this).transform.position + Vector3.up, eid.target.position - (((Component)this).transform.position + Vector3.up), Vector3.Distance(eid.target.position + Vector3.up, ((Component)this).transform.position + Vector3.up), LayerMask.op_Implicit(LayerMaskDefaults.Get((LMD)1)))) { if (zomb.diving) { zomb.JumpAttack(); } else if (Random.value < 0.5f * Mathf.Clamp01(JumpTimer)) { JumpTimer = 0f; zomb.JumpAttack(); } } } else { if (!zomb.zmb.grounded || !(Vector3.Distance(((Component)this).transform.position, eid.target.PredictTargetPosition(0.1f, false)) > 7.5f)) { return; } ((Behaviour)nma).enabled = false; rb.isKinematic = false; val2 = Random.insideUnitSphere; val2 = ((Vector3)(ref val2)).normalized + ((Component)eid).transform.TransformDirection(Vector3.forward); Vector3 val4 = ((Vector3)(ref val2)).normalized * 100f; val4.y = 0f; Rigidbody obj6 = rb; obj6.velocity += val4; Vector3 ogPos = ((Component)this).transform.position; Invoke_WithDelay(0.05f, delegate { //IL_005f: Unknown result type (might be due to invalid IL or missing references) if (Object.op_Implicit((Object)(object)this)) { ((Behaviour)nma).enabled = true; rb.isKinematic = true; } if (((Behaviour)nma).enabled && !nma.isOnNavMesh) { ((Component)this).transform.position = ogPos; } }); } } } public class Husk_Shoot_Range_IQ : MonoBehaviour { public ZombieProjectiles zomb; public Zombie zmb; public EnemyIdentifier eid; public Animator anim; public Rigidbody rb; public NavMeshAgent nma; public float Timer; public void Start() { zomb = ((Component)this).GetComponent<ZombieProjectiles>(); zmb = ((Component)this).GetComponent<Zombie>(); eid = ((Component)this).GetComponent<EnemyIdentifier>(); anim = ((Component)this).GetComponent<Animator>(); rb = ((Component)this).GetComponent<Rigidbody>(); nma = ((Component)this).GetComponent<NavMeshAgent>(); } public void FixedUpdate() { //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00a4: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Unknown result type (might be due to invalid IL or missing references) //IL_00d5: 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_014c: Unknown result type (might be due to invalid IL or missing references) //IL_014f: Unknown result type (might be due to invalid IL or missing references) //IL_0159: Unknown result type (might be due to invalid IL or missing references) //IL_015e: Unknown result type (might be due to invalid IL or missing references) //IL_0171: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)zomb == (Object)null || zomb.stationary || eid.target == null || ((Behaviour)nma).enabled) { return; } Timer += Time.fixedDeltaTime; if (!(Timer > 0.25f)) { return; } Timer = 0f; if (zmb.falling || (((Behaviour)nma).enabled && !nma.isOnNavMesh)) { return; } Vector3 ogPos = ((Component)this).transform.position; Invoke_WithDelay(0.11f, delegate { //IL_0042: Unknown result type (might be due to invalid IL or missing references) if (zmb.falling || (((Behaviour)nma).enabled && !nma.isOnNavMesh)) { ((Component)this).transform.position = ogPos; } }); if (Vector3.Distance(((Component)this).transform.position, eid.target.position) < 13f) { Timer = -1f; zomb.MoveForward(-5f / anim.speed / eid.totalSpeedModifier); ((MonoBehaviour)zomb).Invoke("StopMoveForward", 0.1f); return; } ((Behaviour)nma).enabled = false; rb.isKinematic = false; Vector3 insideUnitSphere = Random.insideUnitSphere; Vector3 velocity = ((Vector3)(ref insideUnitSphere)).normalized * 35f; velocity.y = 0f; rb.velocity = velocity; ((MonoBehaviour)zomb).Invoke("StopMoveForward", 0.1f); } } public class Shoot_OneTime_Protect_IQ : MonoBehaviour { public EnemyIdentifier eid; public void Start() { //IL_001e: Unknown result type (might be due to invalid IL or missing references) //IL_0028: Expected O, but got Unknown eid = ((Component)this).GetComponent<EnemyIdentifier>(); eid.onDeath.AddListener((UnityAction)delegate { if (Object.op_Implicit((Object)(object)this)) { Object.Destroy((Object)(object)this); } }); if ((Object)(object)eid == (Object)null) { Object.Destroy((Object)(object)this); } } public void FixedUpdate() { //IL_002b: Unknown result type (might be due to invalid IL or missing references) //IL_003b: Unknown result type (might be due to invalid IL or missing references) //IL_0055: Unknown result type (might be due to invalid IL or missing references) //IL_005a: Unknown result type (might be due to invalid IL or missing references) //IL_005f: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_007a: Unknown result type (might be due to invalid IL or missing references) //IL_007f: 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_0089: 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_00a4: Unknown result type (might be due to invalid IL or missing references) //IL_00a9: Unknown result type (might be due to invalid IL or missing references) //IL_00ae: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00d9: Unknown result type (might be due to invalid IL or missing references) //IL_00e0: Invalid comparison between Unknown and I4 //IL_0208: Unknown result type (might be due to invalid IL or missing references) //IL_0212: Unknown result type (might be due to invalid IL or missing references) //IL_0108: Unknown result type (might be due to invalid IL or missing references) //IL_010f: Invalid comparison between Unknown and I4 //IL_0115: Unknown result type (might be due to invalid IL or missing references) //IL_011c: Invalid comparison between Unknown and I4 //IL_0122: Unknown result type (might be due to invalid IL or missing references) //IL_0128: Invalid comparison between Unknown and I4 //IL_012e: Unknown result type (might be due to invalid IL or missing references) //IL_0135: Invalid comparison between Unknown and I4 //IL_017b: Unknown result type (might be due to invalid IL or missing references) //IL_0185: Unknown result type (might be due to invalid IL or missing references) if (eid.target == null || !eid.target.isPlayer || !(Vector3.Distance(((Component)this).transform.position, eid.target.position) < 8f) || Physics.Raycast(((Component)this).transform.position + Vector3.up, eid.target.position - (((Component)this).transform.position + Vector3.up), Vector3.Distance(eid.target.position, ((Component)this).transform.position + Vector3.up), LayerMask.op_Implicit(LayerMaskDefaults.Get((LMD)1)))) { return; } Object.Destroy((Object)(object)this); if ((int)eid.enemyType == 14) { EnemyIdentifier[] array = Object.FindObjectsOfType<EnemyIdentifier>(); foreach (EnemyIdentifier val in array) { if (val.dead || (int)val.enemyType == 21 || (int)val.enemyType == 10 || (int)val.enemyType == 8 || (int)val.enemyType == 22 || (Object)(object)val == (Object)(object)eid) { continue; } EnemyIdentifier idol = val.Make_IdolMerged(enableIdol: true); idol.idol.overrideTarget = eid; Transform transform = ((Component)idol).transform; transform.localScale *= 0.4f; idol.Make_Puppet_OnStart(); ComponentExtensions.GetOrAddComponent<Ignore_UltraEnraged>((Component)(object)idol); Invoke_WithDelay(6f, delegate { if ((Object)(object)idol != (Object)null && (Object)(object)idol.idol != (Object)null) { idol.idol.Death(); if (Object.op_Implicit((Object)(object)idol) && ((Component)idol).gameObject.activeSelf) { idol.idol.Death(); } } }); ComponentExtensions.GetOrAddComponent<AAD_Keep_Obj_Near_Enemy>((Component)(object)val).To_Keep = ((Component)idol).gameObject; } return; } EnemyIdentifier idol2 = eid.Make_IdolMerged(enableIdol: true); Transform transform2 = ((Component)idol2).transform; transform2.localScale *= 0.6f; idol2.Make_Puppet_OnStart(); ComponentExtensions.GetOrAddComponent<Ignore_UltraEnraged>((Component)(object)idol2); Invoke_WithDelay(8f, delegate { if ((Object)(object)idol2 != (Object)null && (Object)(object)idol2.idol != (Object)null) { idol2.idol.Death(); if (Object.op_Implicit((Object)(object)idol2) && ((Component)idol2).gameObject.activeSelf) { idol2.idol.Death(); } } }); ComponentExtensions.GetOrAddComponent<AAD_Keep_Obj_Near_Enemy>((Component)(object)eid).To_Keep = ((Component)idol2).gameObject; } } public class Soldier_AutoAir_IQ : MonoBehaviour { [CompilerGenerated] private sealed class <EMP_Services>d__7 : IEnumerator<object>, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; public Soldier_AutoAir_IQ <>4__this; private NewMovement <newMovement>5__2; private bool <iframes>5__3; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <EMP_Services>d__7(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <newMovement>5__2 = null; <>1__state = -2; } private bool MoveNext() { //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Unknown result type (might be due to invalid IL or missing references) //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0081: Unknown result type (might be due to invalid IL or missing references) //IL_008b: Unknown result type (might be due to invalid IL or missing references) //IL_00a6: Unknown result type (might be due to invalid IL or missing references) //IL_036d: Unknown result type (might be due to invalid IL or missing references) //IL_0377: Expected O, but got Unknown //IL_03ba: Unknown result type (might be due to invalid IL or missing references) //IL_03c4: Expected O, but got Unknown //IL_0416: Unknown result type (might be due to invalid IL or missing references) //IL_041b: Unknown result type (might be due to invalid IL or missing references) //IL_00ce: Unknown result type (might be due to invalid IL or missing references) //IL_00d3: Unknown result type (might be due to invalid IL or missing references) //IL_00dd: Unknown result type (might be due to invalid IL or missing references) //IL_00e2: Unknown result type (might be due to invalid IL or missing references) //IL_00e7: Unknown result type (might be due to invalid IL or missing references) //IL_00f9: Unknown result type (might be due to invalid IL or missing references) //IL_0103: Unknown result type (might be due to invalid IL or missing references) //IL_011e: Unknown result type (might be due to invalid IL or missing references) //IL_0146: Unknown result type (might be due to invalid IL or missing references) //IL_014b: 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_015f: Unknown result type (might be due to invalid IL or missing references) //IL_0171: Unknown result type (might be due to invalid IL or missing references) //IL_017b: Unknown result type (might be due to invalid IL or missing references) //IL_0196: 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_01c3: 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_01d7: Unknown result type (might be due to invalid IL or missing references) //IL_01e9: Unknown result type (might be due to invalid IL or missing references) //IL_01f3: Unknown result type (might be due to invalid IL or missing references) //IL_020e: Unknown result type (might be due to invalid IL or missing references) //IL_0236: Unknown result type (might be due to invalid IL or missing references) //IL_023b: Unknown result type (might be due to invalid IL or missing references) //IL_0245: Unknown result type (might be due to invalid IL or missing references) //IL_024a: Unknown result type (might be due to invalid IL or missing references) //IL_024f: Unknown result type (might be due to invalid IL or missing references) //IL_0261: Unknown result type (might be due to invalid IL or missing references) //IL_026b: Unknown result type (might be due to invalid IL or missing references) //IL_0286: Unknown result type (might be due to invalid IL or missing references) //IL_030e: Unknown result type (might be due to invalid IL or missing references) //IL_0318: Expected O, but got Unknown //IL_02ae: Unknown result type (might be due to invalid IL or missing references) //IL_02b3: Unknown result type (might be due to invalid IL or missing references) //IL_02bd: 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_02d9: Unknown result type (might be due to invalid IL or missing references) //IL_02e3: Unknown result type (might be due to invalid IL or missing references) //IL_02fe: Unknown result type (might be due to invalid IL or missing references) int num = <>1__state; Soldier_AutoAir_IQ soldier_AutoAir_IQ = <>4__this; switch (num) { default: return false; case 0: { <>1__state = -1; GameObject val = MonoSingleton<DefaultReferenceManager>.Instance.unparryableFlash; if ((Object)(object)val != (Object)null) { val = Object.Instantiate<GameObject>(MonoSingleton<DefaultReferenceManager>.Instance.unparryableFlash, soldier_AutoAir_IQ.eid.target.position + Vector3.up * 5f, Quaternion.identity); Transform transform = val.transform; transform.localScale *= 15f; val.transform.LookAt(soldier_AutoAir_IQ.eid.target.position); } if ((Object)(object)val != (Object)null) { val = Object.Instantiate<GameObject>(MonoSingleton<DefaultReferenceManager>.Instance.unparryableFlash, soldier_AutoAir_IQ.eid.target.position + Vector3.down * 5f, Quaternion.identity); Transform transform2 = val.transform; transform2.localScale *= 15f; val.transform.LookAt(soldier_AutoAir_IQ.eid.target.position); } if ((Object)(object)val != (Object)null) { val = Object.Instantiate<GameObject>(MonoSingleton<DefaultReferenceManager>.Instance.unparryableFlash, soldier_AutoAir_IQ.eid.target.position + Vector3.right * 5f, Quaternion.identity); Transform transform3 = val.transform; transform3.localScale *= 15f; val.transform.LookAt(soldier_AutoAir_IQ.eid.target.position); } if ((Object)(object)val != (Object)null) { val = Object.Instantiate<GameObject>(MonoSingleton<DefaultReferenceManager>.Instance.unparryableFlash, soldier_AutoAir_IQ.eid.target.position + Vector3.left * 5f, Quaternion.identity); Transform transform4 = val.transform; transform4.localScale *= 15f; val.transform.LookAt(soldier_AutoAir_IQ.eid.target.position); } if ((Object)(object)val != (Object)null) { val = Object.Instantiate<GameObject>(MonoSingleton<DefaultReferenceManager>.Instance.unparryableFlash, soldier_AutoAir_IQ.eid.target.position + Vector3.forward * 5f, Quaternion.identity); Transform transform5 = val.transform; transform5.localScale *= 15f; val.transform.LookAt(soldier_AutoAir_IQ.eid.target.position); } if ((Object)(object)val != (Object)null) { val = Object.Instantiate<GameObject>(MonoSingleton<DefaultReferenceManager>.Instance.unparryableFlash, soldier_AutoAir_IQ.eid.target.position + Vector3.back * 5f, Quaternion.identity); Transform transform6 = val.transform; transform6.localScale *= 15f; val.transform.LookAt(soldier_AutoAir_IQ.eid.target.position); } <>2__current = (object)new WaitForSeconds(0.23f); <>1__state = 1; return true; } case 1: <>1__state = -1; <newMovement>5__2 = MonoSingleton<NewMovement>.Instance; <iframes>5__3 = false; if (soldier_AutoAir_IQ.eid.target.isPlayer && ((Component)<newMovement>5__2).gameObject.layer == 15) { <iframes>5__3 = true; } <>2__current = (object)new WaitForSeconds(0.06f); <>1__state = 2; return true; case 2: <>1__state = -1; if (soldier_AutoAir_IQ.eid.target.isPlayer && ((Component)<newMovement>5__2).gameObject.layer == 15) { <iframes>5__3 = true; } <>2__current = (object)new WaitForSeconds(0.06f); <>1__state = 3; return true; case 3: <>1__state = -1; if (soldier_AutoAir_IQ.eid.target.isPlayer && ((Component)<newMovement>5__2).gameObject.layer == 15) { <iframes>5__3 = true; } Object.Instantiate<GameObject>(MonoSingleton<DefaultReferenceManager>.Instance.zapImpactParticle, soldier_AutoAir_IQ.eid.target.position, Quaternion.identity); if (soldier_AutoAir_IQ.eid.target.isPlayer && !<iframes>5__3) { int num2 = 25; if (<newMovement>5__2.hp > num2) { <newMovement>5__2.GetHurt(num2, true, 1f, false, false, 1f, false); } else { <newMovement>5__2.GetHurt(<newMovement>5__2.hp - 1, true, 1f, false, false, 1f, false); } NewMovement obj = <newMovement>5__2; obj.boostCharge *= 0.25f; WeaponCharges instance = MonoSingleton<WeaponCharges>.Instance; instance.raicharge *= 0.25f; } 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 EnemyIdentifier eid; public Animator anim; public ZombieProjectiles proj; public float Timer; public float ExplodeTimer = 1f; public void Start() { //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_0040: Expected O, but got Unknown eid = ((Component)this).GetComponent<EnemyIdentifier>(); anim = ((Component)this).GetComponent<Animator>(); proj = ((Component)this).GetComponent<ZombieProjectiles>(); eid.onDeath.AddListener((UnityAction)delegate { Object.Destroy((Object)(object)this); }); if ((Object)(object)eid == (Object)null) { Object.Destroy((Object)(object)this); } } public void FixedUpdate() { //IL_003d: 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_004d: Unknown result type (might be due to invalid IL or missing references) //IL_0052: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Unknown result type (might be due to invalid IL or missing references) //IL_00ca: Unknown result type (might be due to invalid IL or missing references) //IL_00cf: Unknown result type (might be due to invalid IL or missing references) //IL_00df: Unknown result type (might be due to invalid IL or missing references) //IL_00ea: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Unknown result type (might be due to invalid IL or missing references) //IL_00f4: Unknown result type (might be due to invalid IL or missing references) //IL_00f9: Unknown result type (might be due to invalid IL or missing references) //IL_0109: Unknown result type (might be due to invalid IL or missing references) //IL_0114: Unknown result type (might be due to invalid IL or missing references) //IL_0119: Unknown result type (might be due to invalid IL or missing references) //IL_011e: Unknown result type (might be due to invalid IL or missing references) //IL_0129: Unknown result type (might be due to invalid IL or missing references) if (eid.dead) { return; } Timer += Time.fixedDeltaTime; ExplodeTimer += Time.fixedDeltaTime; Vector3 val = eid.target.position - ((Component)this).transform.position; if (ExplodeTimer > 2f && ((Vector3)(ref val)).magnitude < 3.5f) { ExplodeTimer = 0f; ((MonoBehaviour)this).StartCoroutine(EMP_Services()); } if (Timer > 2f) { Timer = 0f; if (eid.target != null && !(((Vector3)(ref val)).magnitude < 40f) && !Physics.Raycast(((Component)this).transform.position + Vector3.up, eid.target.position - (((Component)this).transform.position + Vector3.up), Vector3.Distance(eid.target.position, ((Component)this).transform.position + Vector3.up), LayerMask.op_Implicit(LayerMaskDefaults.Get((LMD)1)))) { Timer = -3f; proj.MoveForward(25f); anim.Play("RollShoot", -1, 0f); } } } [IteratorStateMachine(typeof(<EMP_Services>d__7))] public IEnumerator EMP_Services() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <EMP_Services>d__7(0) { <>4__this = this }; } } public class Stalker_Rage_Passive : MonoBehaviour { public class AfterExplode : MonoBehaviour { public void OnDisable() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) //IL_0022: Unknown result type (might be due to invalid IL or missing references) //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_0047: Unknown result type (might be due to invalid IL or missing references) //IL_006d: Unknown result type (might be due to invalid IL or missing references) //IL_0077: Expected O, but got Unknown GameObject megaBoom = Object.Instantiate<GameObject>(Fento_Assets.ExplosionSisyphusPrimeAnimation.gameObject, ((Component)this).transform.position, ((Component)this).transform.rotation); Transform transform = megaBoom.transform; transform.localScale *= 2f; megaBoom.GetComponent<ObjectActivator>().events.onActivate.AddListener((UnityAction)delegate { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_0025: Unknown result type (might be due to invalid IL or missing references) Explosion[] componentsInChildren = Object.Instantiate<GameObject>(Fento_Assets.ExplosionSisyphusPrime.gameObject, megaBoom.transform.position, megaBoom.transform.rotation).GetComponentsInChildren<Explosion>(); foreach (Explosion obj in componentsInChildren) { obj.toIgnore.Add((EnemyType)12); obj.enemy = true; obj.enemyDamageMultiplier *= 0f; } }); } } public EnemyIdentifier eid; public NavMeshAgent nm; public float Timer; public float AttackTimer; public void Start() { //IL_002a: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Expected O, but got Unknown eid = ((Component)this).GetComponent<EnemyIdentifier>(); nm = ((Component)this).GetComponent<NavMeshAgent>(); eid.onDeath.AddListener((UnityAction)delegate { //IL_0016: 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_0032: Unknown result type (might be due to invalid IL or missing references) //IL_003c: Unknown result type (might be due to invalid IL or missing references) //IL_0059: Unknown result type (might be due to invalid IL or missing references) //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Expected O, but got Unknown GameObject obj = Object.Instantiate<GameObject>(Fento_Assets.ExplosionSisyphusPrimeAnimation.gameObject, ((Component)this).transform.position, ((Component)this).transform.rotation); Transform transform = obj.transform; transform.localScale *= 2f; _ = eid.target; Vector3 pos = ((Component)this).transform.position; Quaternion rot = ((Component)this).transform.rotation; obj.GetComponent<ObjectActivator>().events.onActivate.AddListener((UnityAction)delegate { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Unknown result type (might be due to invalid IL or missing references) //IL_0062: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_007a: 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_0188: Unknown result type (might be due to invalid IL or missing references) //IL_00e7: Unknown result type (might be due to invalid IL or missing references) //IL_00f7: Unknown result type (might be due to invalid IL or missing references) Explosion[] componentsInChildren = Object.Instantiate<GameObject>(Fento_Assets.ExplosionSuper.gameObject, pos, rot).GetComponentsInChildren<Explosion>(); foreach (Explosion obj2 in componentsInChildren) { obj2.toIgnore.Add((EnemyType)12); obj2.enemy = true; obj2.enemyDamageMultiplier *= 0f; } GameObject val = Object.Instantiate<GameObject>(Fento_Assets.BlackHole_Enemy.gameObject, pos, rot); Transform transform2 = val.transform; transform2.localScale *= 3f; GameObjectExtensions.GetOrAddComponent<AfterExplode>(val); GameObjectExtensions.GetOrAddComponent<Obj_Keep_Near_Player>(val); if ((Object)(object)Fento_Assets.RagePrefab.gameObject != (Object)null) { GameObject val2 = Object.Instantiate<GameObject>(Fento_Assets.RagePrefab.gameObject, val.transform); if ((Object)(object)val2 != (Object)null) { val2.transform.SetParent(val.transform); val2.transform.localPosition = Vector3.zero; val2.transform.localScale = Vector3.one; AudioSource[] components = val2.GetComponents<AudioSource>(); if (components != null) { AudioSource val3 = components.Last(); if ((Object)(object)val3 != (Object)null) { val3.pitch *= 0.75f; } } } AudioSource[] componentsInChildren2 = val2.GetComponentsInChildren<AudioSource>(); foreach (AudioSource val4 in componentsInChildren2) { if ((Object)(object)val4 != (Object)null) { val4.spatialize = true; } } } BlackHoleProjectile component = val.GetComponent<BlackHoleProjectile>(); component.target = EnemyTarget.TrackPlayer(); component.speed *= 2.85f; component.safeType = (EnemyType)12; component.Activate(); ((MonoBehaviour)component).Invoke("Explode", 14f); }); }); } public void FixedUpdate() { //IL_0074: Unknown result type (might be due to invalid IL or missing references) //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Unknown result type (might be due to invalid IL or missing references) //IL_0089: 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_00a3: Unknown result type (might be due to invalid IL or missing references) if (eid.dead || eid.target == null) { return; } Timer += Time.fixedDeltaTime; AttackTimer += Time.fixedDeltaTime; _ = AttackTimer; _ = 10f; if (!(Timer > 2f)) { return; } Timer = 0f; Transform transform = Object.Instantiate<GameObject>(Fento_Assets.ExplosionSand.gameObject, ((Component)this).transform.position + Vector3.up, ((Component)this).transform.rotation).transform; transform.localScale *= 3.25f; Invoke_WithDelay(0.1f, delegate { if (Object.op_Implicit((Object)(object)nm)) { NavMeshAgent obj = nm; obj.speed += 15f; NavMeshAgent obj2 = nm; obj2.acceleration += 15f; NavMeshAgent obj3 = nm; obj3.angularSpeed += 15f; NavMeshAgent obj4 = nm; obj4.speed *= 1.1f; NavMeshAgent obj5 = nm; obj5.acceleration *= 1.1f; NavMeshAgent obj6 = nm; obj6.angularSpeed *= 1.1f; } }); } } public class Sisyphus_Rage_IQ : MonoBehaviour { public EnemyIdentifier eid; public float SpawnGasTimer; public void Start() { eid = ((Component)this).GetComponent<EnemyIdentifier>(); SpawnGasTimer = 19f; } public void FixedUpdate() { if (Object.op_Implicit((Object)(object)eid) && !eid.dead && eid.target != null) { SpawnGasTimer += Time.fixedDeltaTime; if (SpawnGasTimer > 20f) { SpawnGasTimer = Random.value; SpawnGas(); } } } public void SpawnGas() { //IL_0010: 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) //IL_0024: 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_0059: Unknown result type (might be due to invalid IL or missing references) //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) GameObject obj = Object.Instantiate<GameObject>(Fento_Assets.GoopCloudLong.gameObject, ((Component)this).transform.TransformPoint(Vector3.up * 6.5f), Quaternion.identity, ((Component)this).transform); obj.transform.localScale = new Vector3(0.4f, 0.75f, 0.4f); Make_Colored(obj.transform, Color.yellow + Color.red); HurtZone componentInChildren = obj.GetComponentInChildren<HurtZone>(); if ((Object)(object)componentInChildren != (Object)null) { componentInChildren.hurtCooldown *= 2f; componentInChildren.bounceForce = 200f; componentInChildren.enemyDamageOverride = 0.0001f; componentInChildren.ignoredEnemyTypes.Add((EnemyType)19); } } } public class Ferryman_Rage_IQ : MonoBehaviour { public EnemyIdentifier eid; public float StartHealth; public float BeamTimer; public float HolySwordsTimer; public float RangeTimer; public void Start() { eid = ((Component)this).GetComponent<EnemyIdentifier>(); StartHealth = eid.health; BeamTimer = 20f; HolySwordsTimer = Random.value * 16f; RangeTimer = Random.value * 1f; } public void FixedUpdate() { //IL_00d2: Unknown result type (might be due to invalid IL or missing references) //IL_00dd: Unknown result type (might be due to invalid IL or missing references) //IL_00e2: Unknown result type (might be due to invalid IL or missing references) //IL_00e7: Unknown result type (might be due to invalid IL or missing references) //IL_0122: Unknown result type (might be due to invalid IL or missing references) //IL_0127: 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_013c: 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_014c: Unknown result type (might be due to invalid IL or missing references) //IL_0151: Unknown result type (might be due to invalid IL or missing references) //IL_0156: Unknown result type (might be due to invalid IL or missing references) //IL_015d: Unknown result type (might be due to invalid IL or missing references) if (!Object.op_Implicit((Object)(object)eid) || eid.dead || eid.target == null) { return; } bool num = eid.health < StartHealth * 0.5f; float num2 = (num ? 1.25f : 1f); HolySwordsTimer += Time.fixedDeltaTime * num2; if (num) { BeamTimer += Time.fixedDeltaTime * num2; if (BeamTimer > 20f) { BeamTimer = Random.value * 5f * num2; SpawnBeams(); } } if (HolySwordsTimer > 16f) { HolySwordsTimer = Random.value * 5f * num2; SpawnSummonedSwords(); } float num3 = Vector3.Distance(eid.target.position, ((Component)this).transform.position + Vector3.up); if (num3 > 30f) { RangeTimer += Time.fixedDeltaTime; if (RangeTimer > 3f && !Physics.Raycast(((Component)this).transform.position + Vector3.up, eid.target.position - (((Component)this).transform.position + Vector3.up), num3, LayerMask.op_Implicit(LayerMaskDefaults.Get((LMD)1)))) { RangeTimer = (0f - Random.value) * 2f; ShootCannon(); } } } public void SpawnBeams() { if (!Object.op_Implicit((Object)(object)eid) || eid.dead || eid.target == null) { return; } for (int i = 0; i < 8; i++) { if (Object.op_Implicit((Object)(object)this)) { Invoke_WithDelay(0.65f + (float)i * 0.65f, delegate { CastBeam(); }); } } } public void CastBeam() { //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_0042: Unknown result type (might be due to invalid IL or missing references) //IL_0059: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_0074: Unknown result type (might be due to invalid IL or missing references) //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_00bc: Unknown result type (might be due to invalid IL or missing references) //IL_00c1: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: Unknown result type (might be due to invalid IL or missing references) //IL_00d2: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Unknown result type (might be due to invalid IL or missing references) //IL_00f6: 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_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Unknown result type (might be due to invalid IL or missing references) if (Object.op_Implicit((Object)(object)eid) && !eid.dead && eid.target != null) { GameObject val = Object.Instantiate<GameObject>(Fento_Assets.Insignia.gameObject, eid.target.position, Quaternion.identity); val.Setup_GoreZone_Obj(eid); Vector2 val2 = Random.insideUnitCircle * 10f; Vector3 velocity = eid.target.GetVelocity(); velocity.y = 0f; if (((Vector3)(ref velocity)).magnitude > 0f) { val.transform.LookAt(eid.target.position + velocity); } Transform transform = val.transform; transform.position += new Vector3(val2.x, 0f, val2.y); val.transform.localScale = new Vector3(1.15f, 1f, 1.15f); VirtueInsignia val3 = default(VirtueInsignia); if (val.TryGetComponent<VirtueInsignia>(ref val3)) { val3.predictive = false; val3.noTracking = true; val3.otherParent = ((Component)this).transform; VirtueInsignia obj = val3; obj.windUpSpeedMultiplier *= 0.5f; val3.damage = 35; val3.target = eid.target; val3.predictiveVersion = null; } } } public void SpawnSummonedSwords() { //IL_0038: Unknown result type (might be due to invalid IL or missing references) //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0079: Expected O, but got Unknown if (!Object.op_Implicit((Object)(object)eid) || eid.dead || eid.target == null) { return; } GameObject obj = Object.Instantiate<GameObject>(Fento_Assets.AroundGabrielSummonedSwords.gameObject, ((Component)this).transform.position, Quaternion.identity); obj.transform.SetParent(((Component)this).transform.parent, true); SummonedSwords val = default(SummonedSwords); if (obj.TryGetComponent<SummonedSwords>(ref val)) { val.target = new EnemyTarget(((Component)this).transform); SummonedSwords obj2 = val; obj2.speed *= eid.totalSpeedModifier; val.targetEnemy = eid.target; } Projectile[] componentsInChildren = obj.GetComponentsInChildren<Projectile>(); foreach (Projectile val2 in componentsInChildren) { val2.target = eid.target; if (eid.totalDamageModifier != 1f) { val2.damage *= eid.totalDamageModifier; } } } public void ShootCannon() { //IL_0038: 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_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_005d: 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_006a: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0074: Unknown result type (might be due to invalid IL or missing references) //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008f: Unknown result type (might be due to invalid IL or missing references) //IL_00a9: Unknown result type (might be due to invalid IL or missing references) if (!Object.op_Implicit((Object)(object)eid) || eid.dead || eid.target == null) { return; } GameObject gameObject = Fento_Assets.V2UnParry.gameObject; Vector3 position = ((Component)this).transform.position; Vector3 val = eid.target.position - ((Component)this).transform.position; GameObject obj = Object.Instantiate<GameObject>(gameObject, position + ((Vector3)(ref val)).normalized * 3f, Quaternion.identity); Transform transform = obj.transform; transform.localScale *= 10f; obj.transform.LookAt(eid.target.position); Invoke_WithDelay(0.5f, delegate { //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0020: 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_0030: Unknown result type (might be due to invalid IL or missing references) //IL_0035: 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_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) //IL_0053: Unknown result type (might be due to invalid IL or missing references) //IL_00a1: 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_00c3: 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_00d2: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Unknown result type (might be due to invalid IL or missing references) //IL_00f8: Unknown result type (might be due to invalid IL or missing references) //IL_00fd: Unknown result type (might be due to invalid IL or missing references) //IL_0107: Unknown result type (might be due to invalid IL or missing references) //IL_010c: Unknown result type (might be due to invalid IL or missing references) //IL_011d: 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_0132: Unknown result type (might be due to invalid IL or missing references) //IL_0137: Unknown result type (might be due to invalid IL or missing references) //IL_0190: Unknown result type (might be due to invalid IL or missing references) //IL_019a: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Unknown result type (might be due to invalid IL or missing references) //IL_01b0: Unknown result type (might be due to invalid IL or missing references) //IL_01b5: Unknown result type (might be due to invalid IL or missing references) //IL_01e4: Unknown result type (might be due to invalid IL or missing references) //IL_01e9: Unknown result type (might be due to invalid IL or missing references) //IL_01f3: Unknown result type (might be due to invalid IL or missing references) //IL_01f8: Unknown result type (might be due to invalid IL or missing references) GameObject gameObject2 = Fento_Assets.Railcannon_Fire.gameObject; Vector3 position2 = ((Component)this).transform.position; Vector3 val2 = eid.target.position - ((Component)this).transform.position; AudioSource val3 = default(AudioSource); if (Object.Instantiate<GameObject>(gameObject2, position2 + ((Vector3)(ref val2)).normalized * 2.5f, ((Component)this).transform.rotation).TryGetComponent<AudioSource>(ref val3)) { val3.clip = Fento_Assets.RocketFire_Default.obj; val3.pitch = Random.Range(0.6f, 0.8f); val3.Play(); } GameObject val4 = Object.Instantiate<GameObject>(Fento_Assets.Cannonball.gameObject, ((Component)this).transform.position, ((Component)this).transform.rotation); val4.transform.position = ((Component)this).transform.position + Vector3.up * 2f; val4.transform.LookAt(eid.target.PredictTargetPosition(0.1f, false) + Vector3.up * 2f); Transform transform2 = val4.transform; transform2.position += val4.transform.forward * 4f; val4.Setup_GoreZone_Obj(eid); ((Component)this).transform.DissableColliders(val4.transform.root); Cannonball val5 = default(Cannonball); if (val4.TryGetComponent<Cannonball>(ref val5)) { val5.sourceWeapon = ((Component)((Component)this).transform).gameObject; } Rigidbody val6 = default(Rigidbody); if (val4.TryGetComponent<Rigidbody>(ref val6)) { val6.velocity = ((Component)val6).transform.forward * 200f; Vector3 position3 = ((Component)this).transform.position; val2 = val6.velocity; float num = PredictTime(position3, ((Vector3)(ref val2)).magnitude, eid.target); ((Component)this).transform.LookAt(eid.target.PredictTargetPosition(num, false) + Vector3.up * 2f); } }); } } public class MalFace_Rage_IQ : MonoBehaviour { public EnemyIdentifier eid; public SpiderBody spider; public BossHealthBar bossHealthBar; public float Timer; public float OgHealth = 10f; public void Start() { //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_0072: Unknown result type (might be due to invalid IL or missing references) //IL_0095: Unknown result type (might be due to invalid IL or missing references) //IL_009a: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00d0: Unknown result type (might be due to invalid IL or missing references) //IL_00d6: Expected O, but got Unknown //IL_00fd: Unknown result type (might be due to invalid IL or missing references) //IL_010d: Unknown result type (might be due to invalid IL or missing references) //IL_0117: Unknown result type (might be due to invalid IL or missing references) //IL_011c: Unknown result type (might be due to invalid IL or missing references) eid = ((Component)this).GetComponent<EnemyIdentifier>(); spider = ((Component)this).GetComponent<SpiderBody>(); bossHealthBar = ((Component)this).GetComponent<BossHealthBar>(); Timer = Random.value * 10f; OgHealth = eid.Health; Transform transform = ((Component)((Component)eid).transform.Find("MaliciousFace/Mouth")).transform; GameObject val = Object.Instantiate<GameObject>(Fento_Assets.CentaurBrainBeam.gameObject, transform.position, transform.rotation, transform); eid.destroyOnDeath.Add(val); Make_Colored(val.transform, Color.red + Color.yellow); val.GetComponent<ContinuousBeam>().ignoreInvincibility = false; GameObject val2 = new GameObject("Follower " + ((Object)((Component)this).transform).name); val2.transform.SetParent(((Component)eid).transform); val2.transform.position = ((Component)eid).transform.position + ((Component)eid).transform.forward * 10f; Obj_Follow_Eid_Target orAddComponent = ComponentExtensions.GetOrAddComponent<Obj_Follow_Eid_Target>((Component)(object)val2.transform); orAddComponent.eid = eid; orAddComponent.Speed = 10f; GameObjectExtensions.GetOrAddComponent<Obj_Always_Look_At>(val).Target = val2; } public void FixedUpdate() { if (!Object.op_Implicit((Object)(object)eid) || eid.dead || !(eid.health < OgHealth * 0.5f)) { return; } EnemyIdentifier idole = eid.Make_IdolMerged(enableIdol: true); idole.BuffAll(); idole.Make_Puppet_OnStart(); ComponentExtensions.GetOrAddComponent<Ignore_UltraEnraged>((Component)(object)idole); ComponentExtensions.GetOrAddComponent<Idol_Buff_Radiance>((Component)(object)idole).TierToAdd *= 0.75f; Invoke_WithDelay(6f, delegate { if ((Object)(object)idole != (Object)null && (Object)(object)idole.idol != (Object)null) { idole.idol.Death(); if (Object.op_Implicit((Object)(object)idole) && ((Component)idole).gameObject.activeSelf) { idole.idol.Death(); } } }); if (eid.isBoss || Object.op_Implicit((Object)(object)bossHealthBar)) { OgHealth = eid.health * 0.9f; } else { Object.Destroy((Object)(object)this); } } } public class Statue_Rage_Buff_OnEnable : MonoBehaviour { [CompilerGenerated] private sealed class <Revive>d__2 : IEnumerator<object>, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; public Transform gz; private NewMovement <newMovement>5__2; private Vector3 <newPos1>5__3; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Revive>d__2(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <newMovement>5__2 = null; <>1__state = -2; } private bool MoveNext() { //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_0035: 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_0047: Unknown result type (might be due to invalid IL or missing references) //IL_004c: 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_005e: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Unknown result type (might be due to invalid IL or missing references) //IL_0075: Unknown result type (might be due to invalid IL or missing references) //IL_007a: Unknown result type (might be due to invalid IL or missing references) //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008f: Expected O, but got Unknown //IL_00ba: 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) switch (<>1__state) { default: return false; case 0: { <>1__state = -1; <newMovement>5__2 = MonoSingleton<NewMovement>.Instance; Vector3 position = ((Component)<newMovement>5__2).transform.position; <newPos1>5__3 = GetRandomNavMeshPoint(position, Random.Range(15f, 35f)); break; } case 1: <>1__state = -1; break; } if (<newPos1>5__3 == Vector3.zero) { Vector3 position = ((Component)<newMovement>5__2).transform.position; <newPos1>5__3 = GetRandomNavMeshPoint(position, Random.Range(15f, 35f)); <>2__current = (object)new WaitForSeconds(0.25f); <>1__state = 1; return true; } EnemyIdentifier obj = Integrate_Enemy(DetectebleEnemies.Cerberus, gz, active: true, <newPos1>5__3, Quaternion.Euler(0f, Random.value * 360f, 0f)); obj.dontCountAsKills = true; obj.immuneToFriendlyFire = true; ComponentExtensions.GetOrAddComponent<Make_Puppet_OnStart>((Component)(object)obj); ComponentExtensions.GetOrAddComponent<Ignore_UltraEnraged>((Component)(object)obj); obj.Set_Health(obj.health + 15f); obj.BuffAll(); 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 float Dist = 50f; public void OnEnable() { //IL_006b: Unknown result type (might be due to invalid IL or missing references) //IL_00d3: Unknown result type (might be due to invalid IL or missing references) //IL_00df: Unknown result type (might be due to invalid IL or missing references) //IL_018e: Unknown result type (might be due to invalid IL or missing references) //IL_0198: Expected O, but got Unknown float num = 0.5f; foreach (KeyValuePair<Transform, UltraEnrage_Movement> item in UltraEnrage_Movement.Dictionary) { if ((Object)(object)item.Value != (Object)null && (Object)(object)item.Value.eid != (Object)null && !item.Value.eid.dead && (int)item.Value.eid.enemyType == 0) { num += 0.5f; } } float num2 = 1f; if (num > 1f) { num2 = num; } EnemyIdentifier[] array = Object.FindObjectsOfType<EnemyIdentifier>(); foreach (EnemyIdentifier val in array) { if (((Component)val).gameObject.activeInHierarchy && !val.dead && !(Vector3.Distance(((Component)this).transform.position, ((Component)val).transform.position) > Dist)) { val.Set_Health(val.health + 2.5f / num2); val.radianceTier += 0.75f / num2; val.BuffAll(); } } EnemyIdentifier eid0 = ((Component)this).GetComponentInParent<EnemyIdentifier>(); if (Object.op_Implicit((Object)(object)eid0) && (eid0.isBoss || Object.op_Implicit((Object)(object)((Component)eid0).GetComponent<BossHealthBar>()))) { GoreZone gz = ((Component)eid0).GetComponentInParent<GoreZone>(); eid0.onDeath.AddListener((UnityAction)delegate { ((MonoBehaviour)gz).StartCoroutine(Revive(eid0, ((Component)gz).transform)); ((MonoBehaviour)gz).StartCoroutine(Revive(eid0, ((Component)gz).transform)); }); } } [IteratorStateMachine(typeof(<Revive>d__2))] public IEnumerator Revive(EnemyIdentifier eid0, Transform gz) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Revive>d__2(0) { gz = gz }; } } public class Idol_Rage_IQ : MonoBehaviour { public GameObject Beam; public EnemyIdentifier LastFound; private Idol Idol; public void OnEnable() { if (Fento_Difficulty_Options.Mech_Disable_RadIdols_Buff) { Object.Destroy((Object)(object)this); } else { Idol = ((Component)this).GetComponent<Idol>(); } } public void FixedUpdate() { //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_006d: Unknown result type (might be due to invalid IL or missing references) //IL_0072: 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) //IL_0165: Unknown result type (might be due to invalid IL or missing references) //IL_0107: Unknown result type (might be due to invalid IL or missing references) //IL_0114: Unknown result type (might be due to invalid IL or missing references) //IL_0119: Unknown result type (might be due to invalid IL or missing references) //IL_011c: Unknown result type (might be due to invalid IL or missing references) //IL_0127: Unknown result type (might be due to invalid IL or missing references) //IL_0132: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)Idol == (Object)null || !((Object)(object)Idol.target != (Object)null) || !((Object)(object)Idol.target != (Object)(object)LastFound)) { return; } LastFound = Idol.target; ContinuousBeam beam = Object.Instantiate<GameObject>(Fento_Assets.ProjectileBeam.gameObject, ((Component)this).transform.position + Vector3.up, Quaternion.identity, ((Component)this).transform).GetComponent<ContinuousBeam>(); beam.canHitEnemy = false; beam.cancelIfEndPointBlocked = false; Invoke_WithDelay(0.1f, delegate { //IL_000c: Unknown result type (might be due to invalid IL or missing references) beam.SetField("environmentMask", LayerMaskDefaults.Get((LMD)0)); }); beam.endPoint = ((Component)LastFound).transform; Collider val = default(Collider); if (((Component)Idol.target).TryGetComponent<Collider>(ref val)) { Transform val2 = ((Component)this).transform.Find("Beam Offset Idol"); if (!Object.op_Implicit((Object)(object)val2)) { val2 = new GameObject("Beam Offset Idol").transform; Transform obj = val2; Bounds bounds = val.bounds; obj.localPosition = ((Bounds)(ref bounds)).center; val2.localRotation = Quaternion.identity; val2.localScale = Vector3.one; val2.SetParent(((Component)LastFound).transform, true); } beam.endPoint = val2; } Make_Colored(((Component)beam).transform, Color.yellow); } public void OnDisable() { if ((Object)(object)Beam != (Object)null) { Object.Destroy((Object)(object)Beam); } } } public class Manneq_Rage_IQ : MonoBehaviour { public Mannequin Manneq; public EnemyIdentifier eid; public NavMeshAgent nma; public Machine mach; public float Timer; public void Start() { Manneq = ((Component)this).GetComponent<Mannequin>(); eid = ((Component)this).GetComponent<EnemyIdentifier>(); nma = ((Component)this).GetComponent<NavMeshAgent>(); mach = eid.machine; } public void FixedUpdate() { //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_0089: Unknown result type (might be due to invalid IL or missing references) //IL_00ae: Unknown result type (might be due to invalid IL or missing references) //IL_00a1: Unknown result type (might be due to invalid IL or missing references) Timer += Time.fixedDeltaTime; if (!(Timer > 2.5f)) { return; } Timer = 0f; if (!Manneq.inAction && eid.target != null && ((Behaviour)nma).enabled && mach.gc.onGround && nma.isOnNavMesh) { if (Vector3.Distance(((Component)this).transform.position, eid.target.position) > 15f) { Manneq.behavior = (MannequinBehavior)2; } else { Manneq.behavior = (MannequinBehavior)0; } } } } public class SwordsMachine_Rage_IQ : MonoBehaviour { public SwordsMachine swm; public EnemyIdentifier eid; public float Timer; public void Start() { eid = ((Component)this).GetComponent<EnemyIdentifier>(); swm = ((Component)this).GetComponent<SwordsMachine>(); } public void FixedUpdate() { //IL_0066: Unknown result type (might be due to invalid IL or missing references) //IL_0076: Unknown result type (might be due to invalid IL or missing references) //IL_0096: Unknown result type (might be due to invalid IL or missing references) //IL_00a1: Unknown result type (might be due to invalid IL or missing references) //IL_00bb: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Unknown result type (might be due to invalid IL or missing references) //IL_00d5: Unknown result type (might be due to invalid IL or missing references) //IL_00e0: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_00ea: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Unknown result type (might be due to invalid IL or missing references) //IL_00ff: 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_010f: Unknown result type (might be due to invalid IL or missing references) //IL_0114: Unknown result type (might be due to invalid IL or missing references) //IL_011f: Unknown result type (might be due to invalid IL or missing references) Timer += Time.fixedDeltaTime; if (!(Timer < 1f)) { Timer = 0f; if (!swm.inAction && !eid.dead && eid.target != null && eid.target.position.y > ((Component)this).transform.position.y + 4f && Vector3.Distance(eid.target.position, ((Component)this).transform.position) > 10f && !Physics.Raycast(((Component)this).transform.position + Vector3.up, eid.target.position - (((Component)this).transform.position + Vector3.up), Vector3.Distance(eid.target.position, ((Component)this).transform.position + Vector3.up), LayerMask.op_Implicit(LayerMaskDefaults.Get((LMD)1)))) { ((Component)((Component)eid).transform).SendMessage("SwordThrow", (SendMessageOptions)1); Timer = -10f; } } } } public class Drone_Rage_IQ : MonoBehaviour { public class SiveUp : MonoBehaviour { public float Size; public AudioSource audioSource; public void Update() { //IL_0018: 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) Size += Time.deltaTime; ((Component)this).transform.localScale = Vector3.one * Mathf.Clamp01(Size); if (Object.op_Implicit((Object)(object)audioSource)) { audioSource.volume = Mathf.Clamp01(Size); } if (Size > 1f) { Object.Destroy((Object)(object)this); } } } public EnemyIdentifier eid; public Mandalore mandalore; public Drone drone; public Rigidbody rb; public float Timer; public bool SlowDown; public void Start() { //IL_0060: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Unknown result type (might be due to invalid IL or missing references) eid = ((Component)this).GetComponent<EnemyIdentifier>(); mandalore = ((Component)this).GetComponent<Mandalore>(); drone = ((Component)this).GetComponent<Drone>(); rb = ((Component)this).GetComponent<Rigidbody>(); Timer = Random.value * 10f; if (Object.op_Implicit((Object)(object)mandalore)) { Leviathan_Rage_Shoot orAddComponent = GameObjectExtensions.GetOrAddComponent<Leviathan_Rage_Shoot>(((Component)this).gameObject); orAddComponent.safeEnemyType = eid.enemyType; orAddComponent.shootPoint = ((Component)this).transform; orAddComponent.eid = eid; } } public void FixedUpdate() { //IL_0051: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_00c9: Unknown result type (might be due to invalid IL or missing references) //IL_00ce: Unknown result type (might be due to invalid IL or missing references) //IL_00d3: Unknown result type (might be due to invalid IL or missing references) //IL_00e3: Unknown result type (might be due to invalid IL or missing references) //IL_00ee: Unknown result type (might be due to invalid IL or missing references) //IL_00f3: Unknown result type (might be due to invalid IL or missing references) //IL_00f8: Unknown result type (might be due to invalid IL or missing references) //IL_00fd: Unknown result type (might be due to invalid IL or missing references) //IL_010d: Unknown result type (might be due to invalid IL or missing references) //IL_0118: Unknown result type (might be due to invalid IL or missing references) //IL_011d: Unknown result type (might be due to invalid IL or missing references) //IL_0122: 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_0166: Unknown result type (might be due to invalid IL or missing references) //IL_0171: Unknown result type (might be due to invalid IL or missing references) //IL_0191: Unknown result type (might be due to invalid IL or missing references) //IL_01a7: Unknown result type (might be due to invalid IL or missing references) //IL_01b7: Unknown result type (might be due to invalid IL or missing references) //IL_01bc: 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) if (!Object.op_Implicit((Object)(object)eid) || eid.dead || eid.target == null) { return; } if (SlowDown && !eid.dead && eid.target != null) { Rigidbody obj = rb; obj.velocity *= 0.25f; } Timer += Time.fixedDeltaTime * (float)((!Object.op_Implicit((Object)(object)mandalore)) ? 1 : 2); if (Timer < 10f) { return; } Timer = 0f; if (eid.dead || eid.target == null || Physics.Raycast(((Component)this).transform.position + Vector3.up, eid.target.position - (((Component)this).transform.position + Vector3.up), Vector3.Distance(eid.target.position, ((Component)this).transform.position + Vector3.up), LayerMask.op_Implicit(LayerMaskDefaults.Get((LMD)1)))) { return; } SlowDown = true; GameObject sound = Object.Instantiate<GameObject>(Fento_Assets.MaliciousChargeEffect.gameObject, ((Component)this).transform.position, ((Component)this).transform.rotation); sound.transform.position = ((Component)this).transform.position; Transform transform = sound.transform; transform.position += ((Component)this).gameObject.transform.forward; sound.transform.LookAt(eid.target.PredictTargetPosition(0.01f, false)); SiveUp orAddComponent = GameObjectExtensions.GetOrAddComponent<SiveUp>(sound); AudioSource val = default(AudioSource); if (sound.TryGetComponent<AudioSource>(ref val)) { val.pitch = 2f; orAddComponent.audioSource = val; } Invoke_WithDelay(1.5f * (Object.op_Implicit((Object)(object)mandalore) ? 0.75f : 1f), delegate { //IL_0064: Unknown result type (might be due to invalid IL or missing references) //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_0089: Unknown result type (might be due to invalid IL or missing references) //IL_008e: Unknown result type (might be due to invalid IL or missing references) //IL_0093: Unknown result type (might be due to invalid IL or missing references) //IL_0096: 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_00b5: Unknown result type (might be due to invalid IL or missing references) //IL_00c6: Unknown result type (might be due to invalid IL or missing references) //IL_00d0: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Unknown result type (might be due to invalid IL or missing references) if (Object.op_Implicit((Object)(object)this) && Object.op_Implicit((Object)(object)eid) && eid.target != null && !eid.dead) { GameObject gameObject = Fento_Assets.V2UnParry.gameObject; Vector3 position = ((Component)this).transform.position; Vector3 val2 = eid.target.position - ((Component)this).transform.position; GameObject obj2 = Object.Instantiate<GameObject>(gameObject, position + ((Vector3)(ref val2)).normalized * 2.5f, ((Component)this).transform.rotation); Transform transform2 = obj2.transform; transform2.localScale *= 10f; obj2.transform.LookAt(eid.target.position); } Invoke_WithDelay(0.4f * (Object.op_Implicit((Object)(object)mandalore) ? 0.75f : 1f), delegate { //IL_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_00bb: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: 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_00fe: Unknown result type (might be due to invalid IL or missing references) //IL_0103: Unknown result type (might be due to invalid IL or missing references) //IL_0129: Unknown result type (might be due to invalid IL or missing references) //IL_013e: Unknown result type (might be due to invalid IL or missing references) if (Object.op_Implicit((Object)(object)sound)) { Object.Destroy((Object)(object)sound); } Invoke_WithDelay(0.2f * (Object.op_Implicit((Object)(object)mandalore) ? 0.75f : 1f), delegate { if (Object.op_Implicit((Object)(object)this)) { SlowDown = false; } }); if (Object.op_Implicit((Object)(object)this) && Object.op_Implicit((Object)(object)eid) && eid.target != null && !eid.dead) { GameObject obj3 = Object.Instantiate<GameObject>(Fento_Assets.MaliciousBeam.gameObject, ((Component)this).transform.position, ((Component)this).transform.rotation); Transform transform3 = obj3.transform; transform3.position += ((Component)this).gameObject.transform.forward * (float)(Object.op_Implicit((Object)(object)mandalore) ? 10 : 3); obj3.transform.LookAt(eid.target.PredictTargetPosition(0.01f, false)); RevolverBeam val3 = default(RevolverBeam); if (obj3.TryGetComponent<RevolverBeam>(ref val3)) { val3.ignoreEnemyType = (EnemyType)1; } } }); }); } } public class StreetCleaner_Rage_Hook_IQ : MonoBehaviour { public GameObject DisabledObj; public EnemyIdentifier eid; public float Timer; public float Gasoline_Charge; public bool Gasoline_Fire; public void Start() { //IL_001d: Unknown result type (might be due to invalid IL or missing references) //IL_0027: Expected O, but got Unknown //IL_004f: Unknown result type (might be due to invalid IL or missing references) //IL_0056: Invalid comparison between Unknown and I4 //IL_007a: 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_0089: Unknown result type (might be due to invalid IL or missing references) //IL_0093: Unknown result type (might be due to invalid IL or missing references) //IL_0098: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_00ad: Unknown result type (might be due to invalid IL or missing references) //IL_00c2: Unknown result type (might be due to invalid IL or missing references) Timer = Random.value; eid = ((Component)this).GetComponent<EnemyIdentifier>(); DisabledObj = new GameObject("DisabledObj"); DisabledObj.SetActive(false); DisabledObj.transform.SetParent(((Component)this).transform); if ((int)eid.enemyType == 35) { DisabledObj.transform.localPosition = Vector3.zero; } else { DisabledObj.transform.localPosition = Vector3.forward * 1.5f + Vector3.up * 2.5f; } DisabledObj.transform.localScale = Vector3.one; DisabledObj.transform.localRotation = Quaternion.identity; } public void FixedUpdate() { //IL_027e: Unknown result type (might be due to invalid IL or missing references) //IL_028e: 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_0059: Unknown result type (might be due to invalid IL or missing references) //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_0066: 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) //IL_0082: Unknown result type (might be due to invalid IL or missing references) //IL_02ae: Unknown result type (might be due to invalid IL or missing references) //IL_02b9: Unknown result type (might be due to invalid IL or missing references) //IL_00b8: Unknown result type (might be due to invalid IL or missing references) //IL_00bd: Unknown result type (might be due to invalid IL or missing references) //IL_00c3: 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_00d3: Unknown result type (might be due to invalid IL or missing references) //IL_00ee: Unknown result type (might be due to invalid IL or missing references) //IL_00f3: Unknown result type (might be due to invalid IL or missing references) //IL_00fd: 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_011e: 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_02d3: Unknown result type (might be due to invalid IL or missing references) //IL_02d8: Unknown result type (might be due to invalid IL or missing references) //IL_02dd: Unknown result type (might be due to invalid IL or missing references) //IL_02ed: Unknown result type (might be due to invalid IL or missing references) //IL_02f8: Unknown result type (might be due to invalid IL or missing references) //IL_02fd: Unknown result type (might be due to invalid IL or missing references) //IL_0302: Unknown result type (might be due to invalid IL or missing references) //IL_0307: Unknown result type (might be due to invalid IL or missing references) //IL_0317: Unknown result type (might be due to invalid IL or missing references) //IL_0322: Unknown result type (might be due to invalid IL or missing references) //IL_0327: Unknown result type (might be due to invalid IL or missing references) //IL_032c: Unknown result type (might be due to invalid IL or missing references) //IL_0337: Unknown result type (might be due to invalid IL or missing references) //IL_0207: Unknown result type (might be due to invalid IL or missing references) //IL_020e: Expected O, but got Unknown if (!Object.op_Implicit((Object)(object)eid) || eid.dead || eid.target == null) { return; } if (Gasoline_Fire) { if (Gasoline_Charge >= 0.01f) { Vector3 val = eid.target.position - ((Component)this).transform.position; Vector3 normalized = ((Vector3)(ref val)).normalized; if (Vector3.Distance(eid.target.position, ((Component)this).transform.position) > 9f) { Gasoline_Charge -= 0.01f; GameObject obj = Object.Instantiate<GameObject>(Fento_Assets.GasolineProjectile.gameObject, ((Component)this).transform.position + normalized * 5f, ((Component)this).transform.rotation); obj.transform.LookAt(eid.target.position + Random.insideUnitSphere * 6f); GameObjectExtensions.GetOrAddComponent<V2_Boss_Buff.V2_Fire_Gasoline>(obj); Rigidbody component = obj.GetComponent<Rigidbody>(); component.velocity = ((Component)component).transform.forward * 200f; } } else { foreach (Flammable flammable in eid.flammables) { flammable.heat *= 0.01f; flammable.fuel *= 0.01f; } float num = 0f; foreach (Flammable flammable2 in eid.flammables) { num = Mathf.Max(num, flammable2.fuel); } Renderer[] componentsInChildren = ((Component)this).GetComponentsInChildren<Renderer>(); foreach (Renderer val2 in componentsInChildren) { if (!eid.buffUnaffectedRenderers.Contains(val2) && !(val2 is ParticleSystemRenderer)) { MaterialPropertyBlock val3 = new MaterialPropertyBlock(); val2.GetPropertyBlock(val3); val3.SetFloat("_OiledAmount", num / 5f); val2.SetPropertyBlock(val3); } } Gasoline_Fire = false; } } Timer += Time.fixedDeltaTime; if (!(Timer < 1f)) { Timer = 0f; if (eid.target.position.y > ((Component)this).transform.position.y + 4f && Vector3.Distance(eid.target.position, ((Component)this).transform.position) > 20f && !Physics.Raycast(((Component)this).transform.position + Vector3.up, eid.target.position - (((Component)this).transform.position + Vector3.up), Vector3.Distance(eid.target.position, ((Component)this).transform.position + Vector3.up), LayerMask.op_Implicit(LayerMaskDefaults.Get((LMD)1)))) { ShootSpear(); Timer = -4f + Random.value; } } } public void ShootSpear() { //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Unknown result type (might be due to invalid IL or missing references) //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_003b: Unknown result type (might be due to invalid IL or missing references) //IL_004c: Unknown result type (might be due to invalid IL or missing references) //IL_005c: 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_0081: Unknown result type (might be due to invalid IL or missing references) GameObject obj = Object.Instantiate<GameObject>(Fento_Assets.MassWindup.gameObject, ((Component)this).transform.position, ((Component)this).transform.rotation); obj.transform.position = ((Component)this).transform.position + Vector3.up; Transform transform = obj.transform; transform.position += ((Component)this).gameObject.transform.forward; obj.transform.LookAt(eid.target.PredictTargetPosition(0.01f, false)); Invoke_WithDelay(0.9f, delegate { //IL_0039: 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_0054: Unknown result type (might be due to invalid IL or missing references) //IL_0059: Unknown result type (might be due to invalid IL or missing references) //IL_005e: 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_006b: Unknown result type (might be due to invalid IL or missing references) //IL_0070: Unknown result type (might be due to invalid IL or missing references) //IL_007b: Unknown result type (might be due to invalid IL or missing references) //IL_008c: Unknown result type (might be due to invalid IL or missing references) //IL_0096: Unknown result type (might be due to invalid IL or missing references) //IL_00b0: Unknown result type (might be due to invalid IL or missing references) //IL_00cf: Unknown result type (might be due to invalid IL or missing references) //IL_00da: Unknown result type (might be due to invalid IL or missing references) //IL_00ea: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Unknown result type (might be due to invalid IL or missing references) //IL_00f4: Unknown result type (might be due to invalid IL or missing references) //IL_00f7: Unknown result type (might be due to invalid IL or missing references) //IL_0101: Unknown result type (might be due to invalid IL or missing references) //IL_0106: Unknown result type (might be due to invalid IL or missing references) //IL_0111: Unknown result type (might be due to invalid IL or missing references) //IL_0122: 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_0146: Unknown result type (might be due to invalid IL or missing references) if (!((Object)(object)eid == (Object)null) && !eid.dead && eid.target != null) { GameObject gameObject = Fento_Assets.V2UnParry.gameObject; Vector3 position = ((Component)this).transform.position; Vector3 val = eid.target.position - ((Component)this).transform.position; GameObject obj2 = Object.Instantiate<GameObject>(gameObject, position + ((Vector3)(ref val)).normalized * 2.5f, ((Component)this).transform.rotation); Transform transform2 = obj2.transform; transform2.localScale *= 10f; obj2.transform.LookAt(eid.target.position); GameObject gameObject2 = Fento_Assets.V2UnParry.gameObject; Vector3 position2 = eid.target.position; val = ((Component)this).transform.position - eid.target.position; GameObject obj3 = Object.Instantiate<GameObject>(gameObject2, position2 + ((Vector3)(ref val)).normalized * 2.5f, ((Component)this).transform.rotation); Transform transform3 = obj3.transform; transform3.localScale *= 10f; obj3.transform.LookAt(eid.target.position); Invoke_WithDelay(0.38f, delegate { //IL_0052: Unknown result type (might be due to invalid IL or missing references) //IL_0062: Unknown result type (might be due to invalid IL or missing references) //IL_006d: Unknown result type (might be due to invalid IL or missing references) //IL_0072: 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) //IL_007a: 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_0089: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_00b0: Unknown result type (might be due to invalid IL or missing references) //IL_0177: Unknown result type (might be due to invalid IL or missing references) //IL_017c: Unknown result type (might be due to invalid IL or missing references) //IL_0181: Unknown result type (might be due to invalid IL or missing references) //IL_018e: Unknown result type (might be due to invalid IL or missing references) //IL_0193: Unknown result type (might be due to invalid IL or missing references) //IL_0198: Unknown result type (might be due to invalid IL or missing references) //IL_01b8: Unknown result type (might be due to invalid IL or missing references) if (!((Object)(object)eid == (Object)null) && !eid.dead && eid.target != null && Object.op_Implicit((Object)(object)Fento_Assets.MassSpearHook.gameObject)) { GameObject gameObject3 = Fento_Assets.MassSpearHook.gameObject; Vector3 position3 = DisabledObj.transform.position; Vector3 val2 = eid.target.position - ((Component)this).transform.position; GameObject val3 = Object.Instantiate<GameObject>(gameObject3, position3 + ((Vector3)(ref val2)).normalized * 5f, ((Component)this).transform.rotation); val3.transform.LookAt(eid.target.position); val3.Setup_GoreZone_Obj(eid); val3.transform.DissableColliders(((Component)eid).transform); MassSpear val4 = default(MassSpear); if (val3.TryGetComponent<MassSpear>(ref val4)) { val4.target = eid.target; val4.originPoint = DisabledObj.transform; MassSpear obj4 = val4; obj4.spearHealth *= 1.25f; float num = MonoSingleton<PrefsManager>.Instance.GetInt("difficulty", 0); float num2 = 100f; if (num == 1f) { num2 = 75f; } if (num == 2f) { num2 = 200f; } else if (num >= 3f) { num2 = 250f; } num2 *= val4.speedMultiplier; Vector2 val5 = Vector2.op_Implicit(((Component)this).transform.position); float num3 = Vector2.Distance(Vector2.op_Implicit(eid.target.position), val5) / num2; val3.transform.LookAt(eid.target.PredictTargetPosition(num3, false)); } GameObjectExtensions.GetOrAddComponent<V2_Boss_Buff.V2_PullHook>(val3).eid = eid; eid.destroyOnDeath.Add(val3); } }); } }); } } public class Mindflayer_Rage_IQ : MonoBehaviour { [CompilerGenerated] private sealed class <ShootDeath>d__9 : IEnumerator<object>, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; public Mindflayer_Rage_IQ <>4__this; private Vector3 <pos>5__2; private EnemyTarget <target>5__3; private GoreZone <gz>5__4; private int <i>5__5; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <ShootDeath>d__9(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <target>5__3 = null; <gz>5__4 = null; <>1__state = -2; } private bool MoveNext() { //IL_0028: Unknown result type (might be due to invalid IL or missing references) //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_007f: 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_0089: Unknown result type (might be due to invalid IL or missing references) //IL_008e: Unknown result type (might be due to invalid IL or missing references) //IL_00ce: Unknown result type (might be due to invalid IL or missing references) //IL_00d3: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00e4: Unknown result type (might be due to invalid IL or missing references) //IL_0133: Unknown result type (might be due to invalid IL or missing references) //IL_013d: Expected O, but got Unknown int num = <>1__state; Mindflayer_Rage_IQ mindflayer_Rage_IQ = <>4__this; switch (num) { default: return false; case 0: <>1__state = -1; <pos>5__2 = ((Component)mindflayer_Rage_IQ).transform.positio