Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of ThreadspunWraithPhantomOverhaul v0.1.1
ThreadspunWraithPhantomOverhaul.dll
Decompiled 4 months 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.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using BepInEx.Logging; using HarmonyLib; using HutongGames.PlayMaker; using HutongGames.PlayMaker.Actions; using Microsoft.CodeAnalysis; using Silksong.AssetHelper.ManagedAssets; using Silksong.FsmUtil; using TeamCherry.Localization; using TeamCherry.SharedUtils; using UnityEngine; using UnityEngine.SceneManagement; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("ThreadspunWraithPhantomOverhaul")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("0.1.1.0")] [assembly: AssemblyInformationalVersion("0.1.1+34ff701926fc811922ac2d0000f1b498a2ab0a82")] [assembly: AssemblyProduct("ThreadspunWraithPhantomOverhaul")] [assembly: AssemblyTitle("ThreadspunWraithPhantomOverhaul")] [assembly: AssemblyMetadata("RepositoryUrl", "https://github.com/CCArchive878/ThreadspunWraithPhantomOverhaul")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("0.1.1.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)] internal sealed class NullableAttribute : Attribute { public readonly byte[] NullableFlags; public NullableAttribute(byte P_0) { NullableFlags = new byte[1] { P_0 }; } public NullableAttribute(byte[] P_0) { NullableFlags = P_0; } } [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)] internal sealed class NullableContextAttribute : Attribute { public readonly byte Flag; public NullableContextAttribute(byte P_0) { Flag = P_0; } } [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)] internal sealed class RefSafetyRulesAttribute : Attribute { public readonly int Version; public RefSafetyRulesAttribute(int P_0) { Version = P_0; } } } namespace BepInEx { [AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = false)] [Conditional("CodeGeneration")] internal sealed class BepInAutoPluginAttribute : Attribute { public BepInAutoPluginAttribute(string? id = null, string? name = null, string? version = null) { } } } namespace BepInEx.Preloader.Core.Patching { [AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = false)] [Conditional("CodeGeneration")] internal sealed class PatcherAutoPluginAttribute : Attribute { public PatcherAutoPluginAttribute(string? id = null, string? name = null, string? version = null) { } } } namespace ThreadspunWraithPhantomOverhaul { internal static class AssetManager { private static readonly Dictionary<Type, Dictionary<string, Object>> Assets = new Dictionary<Type, Dictionary<string, Object>>(); private static void TryAdd<T>(T asset) where T : Object { string name = ((Object)asset).name; if (Has(name)) { return; } Type type = ((object)asset).GetType(); if (Assets.ContainsKey(type)) { Dictionary<string, Object> dictionary = Assets[type]; if (dictionary != null) { if (dictionary.ContainsKey(name)) { Object val = dictionary[name]; if (!(val != (Object)null)) { Assets[type][name] = (Object)(object)asset; } } else { Assets[type].Add(name, (Object)(object)asset); } } else { Assets.Add(type, new Dictionary<string, Object>()); } } else { Assets.Add(type, new Dictionary<string, Object> { [name] = (Object)(object)asset }); } } internal static void LoadTextures() { //IL_0083: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Expected O, but got Unknown Assembly executingAssembly = Assembly.GetExecutingAssembly(); string[] manifestResourceNames = executingAssembly.GetManifestResourceNames(); foreach (string text in manifestResourceNames) { using Stream stream = executingAssembly.GetManifestResourceStream(text); if (stream == null) { continue; } byte[] array = new byte[stream.Length]; int num = 0; for (int j = 0; j < array.Length; j += num) { num = stream.Read(array.AsSpan(j)); if (num == 0) { break; } } Texture2D val = new Texture2D(2, 2); string name = text.Split('.')[^2]; ((Object)val).name = name; ImageConversion.LoadImage(val, array); TryAdd<Texture2D>(val); } } private static bool Has(string assetName) { foreach (var (_, dictionary2) in Assets) { foreach (var (text2, val2) in dictionary2) { if (assetName == text2 && Object.op_Implicit(val2)) { return true; } } } return false; } internal static T? Get<T>(string assetName) where T : Object { Type typeFromHandle = typeof(T); if (Assets.ContainsKey(typeFromHandle)) { Dictionary<string, Object> dictionary = Assets[typeFromHandle]; if (dictionary != null) { if (dictionary.ContainsKey(assetName)) { Object val = dictionary[assetName]; if (val != (Object)null) { return (T)(object)((val is T) ? val : null); } return default(T); } return default(T); } return default(T); } return default(T); } } public class InvokeCoroutine : FsmStateAction { [CompilerGenerated] private sealed class <Coroutine>d__3 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public InvokeCoroutine <>4__this; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Coroutine>d__3(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { switch (<>1__state) { default: return false; case 0: <>1__state = -1; <>2__current = <>4__this._coroutine(); <>1__state = 1; return true; case 1: <>1__state = -1; ((FsmStateAction)<>4__this).Finish(); 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(); } } private readonly Func<IEnumerator> _coroutine; private readonly bool _wait; public InvokeCoroutine(Func<IEnumerator> coroutine, bool wait) { _coroutine = coroutine; _wait = wait; ((FsmStateAction)this)..ctor(); } [IteratorStateMachine(typeof(<Coroutine>d__3))] private IEnumerator Coroutine() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Coroutine>d__3(0) { <>4__this = this }; } public override void OnEnter() { ((FsmStateAction)this).Fsm.Owner.StartCoroutine(_wait ? Coroutine() : _coroutine()); if (!_wait) { ((FsmStateAction)this).Finish(); } } } public class InvokeMethod : FsmStateAction { private readonly Action _action; public InvokeMethod(Action action) { _action = action; } public override void OnEnter() { _action(); ((FsmStateAction)this).Finish(); } } internal class FleetingWraith : MonoBehaviour { [CompilerGenerated] private sealed class <AddDragoonWraiths>d__39 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public FleetingWraith <>4__this; private GameObject <WraithPrefab>5__1; private GameObject <One>5__2; private GameObject <Two>5__3; private GameObject <Three>5__4; private GameObject <Four>5__5; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <AddDragoonWraiths>d__39(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <WraithPrefab>5__1 = null; <One>5__2 = null; <Two>5__3 = null; <Three>5__4 = null; <Four>5__5 = null; <>1__state = -2; } private bool MoveNext() { //IL_0212: Unknown result type (might be due to invalid IL or missing references) //IL_0217: Unknown result type (might be due to invalid IL or missing references) //IL_0228: Unknown result type (might be due to invalid IL or missing references) //IL_0243: Unknown result type (might be due to invalid IL or missing references) //IL_0254: Unknown result type (might be due to invalid IL or missing references) //IL_0264: Unknown result type (might be due to invalid IL or missing references) //IL_0279: Expected O, but got Unknown //IL_028a: Unknown result type (might be due to invalid IL or missing references) //IL_028f: Unknown result type (might be due to invalid IL or missing references) //IL_02a0: Unknown result type (might be due to invalid IL or missing references) //IL_02bb: Unknown result type (might be due to invalid IL or missing references) //IL_02cc: Unknown result type (might be due to invalid IL or missing references) //IL_02dc: Unknown result type (might be due to invalid IL or missing references) //IL_02f1: Expected O, but got Unknown //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_0318: Unknown result type (might be due to invalid IL or missing references) //IL_0333: Unknown result type (might be due to invalid IL or missing references) //IL_0344: Unknown result type (might be due to invalid IL or missing references) //IL_0354: Unknown result type (might be due to invalid IL or missing references) //IL_0369: Expected O, but got Unknown //IL_0394: Unknown result type (might be due to invalid IL or missing references) //IL_03a9: Unknown result type (might be due to invalid IL or missing references) //IL_03cf: Unknown result type (might be due to invalid IL or missing references) //IL_03e4: Unknown result type (might be due to invalid IL or missing references) //IL_03ee: Unknown result type (might be due to invalid IL or missing references) //IL_0414: Unknown result type (might be due to invalid IL or missing references) //IL_0429: Unknown result type (might be due to invalid IL or missing references) //IL_0433: Unknown result type (might be due to invalid IL or missing references) //IL_0459: Unknown result type (might be due to invalid IL or missing references) //IL_046e: Unknown result type (might be due to invalid IL or missing references) //IL_0478: Unknown result type (might be due to invalid IL or missing references) //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_0174: Unknown result type (might be due to invalid IL or missing references) //IL_0179: Unknown result type (might be due to invalid IL or missing references) //IL_018a: 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_01a6: Unknown result type (might be due to invalid IL or missing references) //IL_01ab: 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_01cb: Expected O, but got Unknown //IL_01cb: Unknown result type (might be due to invalid IL or missing references) //IL_01dc: Unknown result type (might be due to invalid IL or missing references) //IL_01ec: Unknown result type (might be due to invalid IL or missing references) //IL_0201: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <WraithPrefab>5__1 = <>4__this.spawnedWraith; if ((Object)(object)<WraithPrefab>5__1 == (Object)null) { <>4__this.l.LogWarning((object)"Wraith Prefab was not located successfully!"); return false; } <WraithPrefab>5__1.transform.position = Vector3.zero; <One>5__2 = Object.Instantiate<GameObject>(((Component)<WraithPrefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <Two>5__3 = Object.Instantiate<GameObject>(((Component)<WraithPrefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <Three>5__4 = Object.Instantiate<GameObject>(((Component)<WraithPrefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <Four>5__5 = Object.Instantiate<GameObject>(((Component)<WraithPrefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <One>5__2.gameObject.SetActive(false); <Two>5__3.gameObject.SetActive(false); <Three>5__4.gameObject.SetActive(false); <Four>5__5.gameObject.SetActive(false); <>2__current = (object)new SpawnObjectFromGlobalPoolDelay { gameObject = FsmGameObject.op_Implicit(<One>5__2), spawnPoint = FsmGameObject.op_Implicit(((Component)<>4__this._control).gameObject), position = new FsmVector3 { Value = new Vector3(0f, 0f, 0f) }, storeObject = FsmGameObject.op_Implicit(<One>5__2), delayMin = FsmFloat.op_Implicit(0.4f), delayMax = FsmFloat.op_Implicit(0.8f) }; <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = (object)new SpawnObjectFromGlobalPoolDelay { gameObject = FsmGameObject.op_Implicit(<Two>5__3), spawnPoint = FsmGameObject.op_Implicit(((Component)<>4__this._control).gameObject), storeObject = FsmGameObject.op_Implicit(<Two>5__3), delayMin = FsmFloat.op_Implicit(0.4f), delayMax = FsmFloat.op_Implicit(0.8f) }; <>1__state = 2; return true; case 2: <>1__state = -1; <>2__current = (object)new SpawnObjectFromGlobalPoolDelay { gameObject = FsmGameObject.op_Implicit(<Three>5__4), spawnPoint = FsmGameObject.op_Implicit(((Component)<>4__this._control).gameObject), storeObject = FsmGameObject.op_Implicit(<Three>5__4), delayMin = FsmFloat.op_Implicit(0.4f), delayMax = FsmFloat.op_Implicit(0.8f) }; <>1__state = 3; return true; case 3: <>1__state = -1; <>2__current = (object)new SpawnObjectFromGlobalPoolDelay { gameObject = FsmGameObject.op_Implicit(<Four>5__5), spawnPoint = FsmGameObject.op_Implicit(((Component)<>4__this._control).gameObject), storeObject = FsmGameObject.op_Implicit(<Four>5__5), delayMin = FsmFloat.op_Implicit(0.4f), delayMax = FsmFloat.op_Implicit(0.8f) }; <>1__state = 4; return true; case 4: <>1__state = -1; <One>5__2.transform.position = new Vector3(76.1666f, <One>5__2.transform.position.y + 20f, 0.0064f); <Two>5__3.transform.position = new Vector3(80.3333f, <One>5__2.transform.position.y, <One>5__2.transform.position.z); <Three>5__4.transform.position = new Vector3(88.6667f, <One>5__2.transform.position.y, <One>5__2.transform.position.z); <Four>5__5.transform.position = new Vector3(92.8334f, <One>5__2.transform.position.y, <One>5__2.transform.position.z); <One>5__2.gameObject.SetActive(true); <Two>5__3.gameObject.SetActive(true); <Three>5__4.gameObject.SetActive(true); <Four>5__5.gameObject.SetActive(true); return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [CompilerGenerated] private sealed class <AddWraith>d__42 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public FleetingWraith <>4__this; private GameObject <WraithPrefab>5__1; private GameObject <WraithClone>5__2; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <AddWraith>d__42(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <WraithPrefab>5__1 = null; <WraithClone>5__2 = null; <>1__state = -2; } private bool MoveNext() { //IL_0068: 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_00b0: Unknown result type (might be due to invalid IL or missing references) //IL_00d0: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <WraithPrefab>5__1 = <>4__this.spawnedWraith; if ((Object)(object)<WraithPrefab>5__1 == (Object)null) { <>4__this.l.LogWarning((object)"Wraith Prefab was not located successfully!"); return false; } <WraithPrefab>5__1.transform.position = Vector3.zero; <WraithClone>5__2 = Object.Instantiate<GameObject>(((Component)<WraithPrefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <>2__current = (object)new SpawnObjectFromGlobalPoolV2 { gameObject = FsmGameObject.op_Implicit(<WraithClone>5__2), spawnPoint = FsmGameObject.op_Implicit(((Component)<>4__this._control).gameObject) }; <>1__state = 1; return true; case 1: <>1__state = -1; <WraithClone>5__2.SetActive(true); return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [CompilerGenerated] private sealed class <FocusProcess>d__74 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public FleetingWraith <>4__this; private Transform <f>5__1; private GameObject <focusGO>5__2; private GameObject <C1>5__3; private GameObject <C2>5__4; private GameObject <C3>5__5; private GameObject <C4>5__6; private FsmInt <c>5__7; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <FocusProcess>d__74(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <f>5__1 = null; <focusGO>5__2 = null; <C1>5__3 = null; <C2>5__4 = null; <C3>5__5 = null; <C4>5__6 = null; <c>5__7 = null; <>1__state = -2; } private bool MoveNext() { //IL_0448: Unknown result type (might be due to invalid IL or missing references) //IL_0452: Expected O, but got Unknown //IL_0475: Unknown result type (might be due to invalid IL or missing references) //IL_047f: Expected O, but got Unknown //IL_0173: 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_01bd: Unknown result type (might be due to invalid IL or missing references) //IL_01e2: Unknown result type (might be due to invalid IL or missing references) //IL_0224: Unknown result type (might be due to invalid IL or missing references) //IL_0249: Unknown result type (might be due to invalid IL or missing references) //IL_026e: 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_041b: Unknown result type (might be due to invalid IL or missing references) //IL_0425: Expected O, but got Unknown //IL_02d7: Unknown result type (might be due to invalid IL or missing references) //IL_02fc: Unknown result type (might be due to invalid IL or missing references) //IL_0321: 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_038a: Unknown result type (might be due to invalid IL or missing references) //IL_03af: Unknown result type (might be due to invalid IL or missing references) //IL_03d4: Unknown result type (might be due to invalid IL or missing references) //IL_03f9: Unknown result type (might be due to invalid IL or missing references) switch (<>1__state) { default: return false; case 0: <>1__state = -1; <f>5__1 = ((Component)<>4__this._control).transform.GetChild(12); <focusGO>5__2 = ((Component)<f>5__1).gameObject; if ((Object)(object)<focusGO>5__2 == (Object)null) { <>4__this.l.LogWarning((object)"Dragoon Focus GameObject not found!"); } <C1>5__3 = Object.Instantiate<GameObject>(<focusGO>5__2); <C1>5__3.GetComponent<DeactivateAfterDelay>().time = 0.8f; <C2>5__4 = Object.Instantiate<GameObject>(<focusGO>5__2); <C2>5__4.GetComponent<DeactivateAfterDelay>().time = 0.55f; <C3>5__5 = Object.Instantiate<GameObject>(<focusGO>5__2); <C3>5__5.GetComponent<DeactivateAfterDelay>().time = 0.55f; <C4>5__6 = Object.Instantiate<GameObject>(<focusGO>5__2); <C4>5__6.GetComponent<DeactivateAfterDelay>().time = 0.7f; <c>5__7 = FsmUtil.GetIntVariable(<>4__this._control, "Combo Picked"); if (<c>5__7.Value == 0) { <C1>5__3.transform.position = new Vector3(76f, 104.185f, -0.0067f); <C2>5__4.transform.position = new Vector3(75f, 104.185f, -0.0067f); <C3>5__5.transform.position = new Vector3(92.5f, 104.185f, -0.0067f); <C4>5__6.transform.position = new Vector3(79f, 104.185f, -0.0067f); } else if (<c>5__7.Value == 1) { <C1>5__3.transform.position = new Vector3(88.5f, 104.185f, -0.0067f); <C2>5__4.transform.position = new Vector3(76.5f, 104.185f, -0.0067f); <C3>5__5.transform.position = new Vector3(89.5f, 104.185f, -0.0067f); <C4>5__6.transform.position = new Vector3(92f, 104.185f, -0.0067f); } else if (<c>5__7.Value == 2) { <C1>5__3.transform.position = new Vector3(76f, 104.2494f, -0.0067f); <C2>5__4.transform.position = new Vector3(80f, 104.2494f, -0.0067f); <C3>5__5.transform.position = new Vector3(88f, 104.2494f, -0.0067f); <C4>5__6.transform.position = new Vector3(92f, 104.2494f, -0.0067f); } else if (<c>5__7.Value == 3) { <C1>5__3.transform.position = new Vector3(92f, 104.185f, -0.0067f); <C2>5__4.transform.position = new Vector3(88f, 104.185f, -0.0067f); <C3>5__5.transform.position = new Vector3(80f, 104.185f, -0.0067f); <C4>5__6.transform.position = new Vector3(76f, 104.185f, -0.0067f); } <C1>5__3.SetActive(true); <>2__current = (object)new WaitForSeconds(0.8f); <>1__state = 1; return true; case 1: <>1__state = -1; <C2>5__4.SetActive(true); <>2__current = (object)new WaitForSeconds(0.55f); <>1__state = 2; return true; case 2: <>1__state = -1; <C3>5__5.SetActive(true); <>2__current = (object)new WaitForSeconds(0.55f); <>1__state = 3; return true; case 3: <>1__state = -1; <C4>5__6.SetActive(true); return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [CompilerGenerated] private sealed class <GrindFetcher>d__60 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public FleetingWraith <>4__this; private GameObject <GrindPrefab>5__1; private GameObject <Grind>5__2; private Vector3 <PTP>5__3; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <GrindFetcher>d__60(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <GrindPrefab>5__1 = null; <Grind>5__2 = null; <>1__state = -2; } private bool MoveNext() { //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_012f: Unknown result type (might be due to invalid IL or missing references) //IL_014a: Unknown result type (might be due to invalid IL or missing references) //IL_0160: Expected O, but got Unknown //IL_0186: Unknown result type (might be due to invalid IL or missing references) //IL_018b: 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_01d2: Unknown result type (might be due to invalid IL or missing references) //IL_01dc: 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_00b5: Unknown result type (might be due to invalid IL or missing references) //IL_00ba: 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_00d1: 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: Expected O, but got Unknown //IL_00dd: Unknown result type (might be due to invalid IL or missing references) //IL_00e9: Unknown result type (might be due to invalid IL or missing references) //IL_00f5: Unknown result type (might be due to invalid IL or missing references) //IL_00fc: Unknown result type (might be due to invalid IL or missing references) //IL_0108: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <GrindPrefab>5__1 = <>4__this.spawnedGrind; if ((Object)(object)<GrindPrefab>5__1 == (Object)null) { <>4__this.l.LogWarning((object)"Grind Prefab was not located successfully!"); return false; } <GrindPrefab>5__1.transform.position = Vector3.zero; <Grind>5__2 = Object.Instantiate<GameObject>(((Component)<GrindPrefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <Grind>5__2.SetActive(false); <>2__current = (object)new ActivateGameObject { gameObject = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(<Grind>5__2), ownerOption = (OwnerDefaultOption)1 }, activate = FsmBool.op_Implicit(true), recursive = FsmBool.op_Implicit(false), resetOnExit = true, everyFrame = false }; <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = (object)new SpawnObjectFromGlobalPoolV2 { gameObject = FsmGameObject.op_Implicit(<Grind>5__2), spawnPoint = FsmGameObject.op_Implicit(((Component)<>4__this._control).gameObject), storeObject = FsmGameObject.op_Implicit(<Grind>5__2) }; <>1__state = 2; return true; case 2: <>1__state = -1; <PTP>5__3 = ((Component)<>4__this._control).gameObject.transform.position; <Grind>5__2.transform.position = new Vector3(<PTP>5__3.x - 0.75f, <Grind>5__2.transform.position.y + 2.25f, <Grind>5__2.transform.position.z); <Grind>5__2.SetActive(true); return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [CompilerGenerated] private sealed class <JudgeExplodeFetcher>d__68 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public FleetingWraith <>4__this; private GameObject <PinProj>5__1; private GameObject <BombPrefab>5__2; private GameObject <ExplosionClone>5__3; private GameObject <damager>5__4; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <JudgeExplodeFetcher>d__68(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <PinProj>5__1 = null; <BombPrefab>5__2 = null; <ExplosionClone>5__3 = null; <damager>5__4 = null; <>1__state = -2; } private bool MoveNext() { //IL_0078: 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_00dc: Unknown result type (might be due to invalid IL or missing references) //IL_00ed: 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_010e: 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_0133: Expected O, but got Unknown //IL_016b: Unknown result type (might be due to invalid IL or missing references) //IL_0180: Unknown result type (might be due to invalid IL or missing references) //IL_0195: Unknown result type (might be due to invalid IL or missing references) //IL_019f: Unknown result type (might be due to invalid IL or missing references) switch (<>1__state) { default: return false; case 0: <>1__state = -1; <PinProj>5__1 = GameObject.Find("Pin Projectile"); <BombPrefab>5__2 = <>4__this.spawnedExplosion; if ((Object)(object)<BombPrefab>5__2 == (Object)null) { <>4__this.l.LogWarning((object)"Last Judge Explosion Prefab was not located successfully!"); return false; } <BombPrefab>5__2.transform.position = Vector3.zero; Object.Destroy((Object)(object)<BombPrefab>5__2.GetComponentInChildren<DamageEnemies>()); <ExplosionClone>5__3 = Object.Instantiate<GameObject>(((Component)<BombPrefab>5__2.transform).gameObject, ((Component)<>4__this).transform); <ExplosionClone>5__3.transform.SetParent(<PinProj>5__1.transform); <>2__current = (object)new SpawnObjectFromGlobalPoolV2 { gameObject = FsmGameObject.op_Implicit(<ExplosionClone>5__3), spawnPoint = FsmGameObject.op_Implicit(<PinProj>5__1), position = FsmVector3.op_Implicit(new Vector3(5.6f, 0f, 0f)), setParent = FsmGameObject.op_Implicit(<PinProj>5__1) }; <>1__state = 1; return true; case 1: <>1__state = -1; <ExplosionClone>5__3.transform.SetParent((Transform)null); <ExplosionClone>5__3.transform.position = new Vector3(<PinProj>5__1.transform.position.x, <PinProj>5__1.transform.position.y, <ExplosionClone>5__3.transform.position.z); ((Behaviour)<ExplosionClone>5__3.GetComponent<Animator>()).enabled = true; ((Behaviour)<ExplosionClone>5__3.GetComponent<AutoRecycleSelf>()).enabled = true; ((Behaviour)<ExplosionClone>5__3.GetComponent<AudioSource>()).enabled = true; <damager>5__4 = ((Component)<ExplosionClone>5__3.transform.GetChild(4)).gameObject; ((Behaviour)<damager>5__4.GetComponent<CircleCollider2D>()).enabled = true; ((Behaviour)<damager>5__4.GetComponent<DamageHero>()).enabled = true; return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [CompilerGenerated] private sealed class <JudgeStompFetcher>d__66 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public FleetingWraith <>4__this; private GameObject <StompWavePrefab>5__1; private GameObject <StWaveClone>5__2; private GameObject <StompWvClone>5__3; private PlayMakerFSM <stompControl>5__4; private FsmStateAction[] <>s__5; private int <>s__6; private FsmStateAction <action>5__7; private AccelerateToX <aX>5__8; private FsmStateAction[] <>s__9; private int <>s__10; private FsmStateAction <action>5__11; private AccelerateToX <accelerateToX>5__12; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <JudgeStompFetcher>d__66(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <StompWavePrefab>5__1 = null; <StWaveClone>5__2 = null; <StompWvClone>5__3 = null; <stompControl>5__4 = null; <>s__5 = null; <action>5__7 = null; <aX>5__8 = null; <>s__9 = null; <action>5__11 = null; <accelerateToX>5__12 = null; <>1__state = -2; } private bool MoveNext() { //IL_01c2: Unknown result type (might be due to invalid IL or missing references) //IL_01dc: Unknown result type (might be due to invalid IL or missing references) //IL_01e6: 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_0365: Unknown result type (might be due to invalid IL or missing references) //IL_036f: 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_02dd: Unknown result type (might be due to invalid IL or missing references) //IL_02e2: Unknown result type (might be due to invalid IL or missing references) //IL_02f3: Unknown result type (might be due to invalid IL or missing references) //IL_0313: Expected O, but got Unknown //IL_0154: 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_016a: Unknown result type (might be due to invalid IL or missing references) //IL_018a: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <StompWavePrefab>5__1 = <>4__this.spawnedWave; if ((Object)(object)<StompWavePrefab>5__1 == (Object)null) { <>4__this.l.LogWarning((object)"Stomp Wave Prefab was not located successfully!"); return false; } <StompWavePrefab>5__1.transform.position = Vector3.zero; <StWaveClone>5__2 = Object.Instantiate<GameObject>(((Component)<StompWavePrefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <>s__5 = FsmUtil.GetState(FSMUtility.LocateMyFSM(<StWaveClone>5__2, "Control"), "Move").Actions; for (<>s__6 = 0; <>s__6 < <>s__5.Length; <>s__6++) { <action>5__7 = <>s__5[<>s__6]; ref AccelerateToX reference2 = ref <aX>5__8; FsmStateAction obj2 = <action>5__7; reference2 = (AccelerateToX)(object)((obj2 is AccelerateToX) ? obj2 : null); if (<aX>5__8 != null) { <aX>5__8.targetSpeed = FsmFloat.op_Implicit(100f); } <aX>5__8 = null; <action>5__7 = null; } <>s__5 = null; <>2__current = (object)new SpawnObjectFromGlobalPoolV2 { gameObject = FsmGameObject.op_Implicit(<StWaveClone>5__2), spawnPoint = FsmGameObject.op_Implicit(((Component)<>4__this._control).gameObject) }; <>1__state = 1; return true; case 1: <>1__state = -1; <StWaveClone>5__2.transform.SetParent((Transform)null); <StWaveClone>5__2.transform.position = new Vector3(<StWaveClone>5__2.transform.position.x, 103f, <StWaveClone>5__2.transform.position.z); <StWaveClone>5__2.SetActive(true); <StompWvClone>5__3 = Object.Instantiate<GameObject>(((Component)<StompWavePrefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <stompControl>5__4 = FSMUtility.LocateMyFSM(<StompWvClone>5__3, "Control"); <>s__9 = FsmUtil.GetState(<stompControl>5__4, "Move").Actions; for (<>s__10 = 0; <>s__10 < <>s__9.Length; <>s__10++) { <action>5__11 = <>s__9[<>s__10]; ref AccelerateToX reference = ref <accelerateToX>5__12; FsmStateAction obj = <action>5__11; reference = (AccelerateToX)(object)((obj is AccelerateToX) ? obj : null); if (<accelerateToX>5__12 != null) { <accelerateToX>5__12.targetSpeed = FsmFloat.op_Implicit(-100f); } <accelerateToX>5__12 = null; <action>5__11 = null; } <>s__9 = null; <>2__current = (object)new SpawnObjectFromGlobalPoolV2 { gameObject = FsmGameObject.op_Implicit(<StompWvClone>5__3), spawnPoint = FsmGameObject.op_Implicit(((Component)<>4__this._control).gameObject) }; <>1__state = 2; return true; case 2: <>1__state = -1; <StompWvClone>5__3.transform.SetParent((Transform)null); <StompWvClone>5__3.transform.position = new Vector3(<StompWvClone>5__3.transform.position.x, 103f, <StompWvClone>5__3.transform.position.z); <StompWvClone>5__3.SetActive(true); return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [CompilerGenerated] private sealed class <PierceBomb>d__62 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public FleetingWraith <>4__this; private GameObject <Prefab>5__1; private int <b>5__2; private GameObject <Clone>5__3; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <PierceBomb>d__62(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <Prefab>5__1 = null; <Clone>5__3 = null; <>1__state = -2; } private bool MoveNext() { //IL_012f: 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) //IL_015c: Unknown result type (might be due to invalid IL or missing references) //IL_0166: Expected O, but got Unknown //IL_0076: 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_00c6: 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_00f7: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <Prefab>5__1 = <>4__this.spawnedBomb; if ((Object)(object)<Prefab>5__1 == (Object)null) { <>4__this.l.LogWarning((object)"Wave Prefab was not located successfully!"); return false; } <Prefab>5__1.transform.position = Vector3.zero; <b>5__2 = 5; break; case 1: <>1__state = -1; <Clone>5__3.transform.SetParent((Transform)null); <Clone>5__3.transform.position = new Vector3(<Clone>5__3.transform.position.x, 103f); <Clone>5__3.SetActive(true); <>2__current = (object)new WaitForSeconds(0.06f); <>1__state = 2; return true; case 2: <>1__state = -1; <Clone>5__3 = null; <b>5__2--; break; } if (<b>5__2 > 0) { <Clone>5__3 = Object.Instantiate<GameObject>(((Component)<Prefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <Clone>5__3.AddComponent<BombPrep>(); <>2__current = (object)new SpawnObjectFromGlobalPoolV2 { gameObject = FsmGameObject.op_Implicit(<Clone>5__3), spawnPoint = FsmGameObject.op_Implicit(((Component)<>4__this._control).gameObject) }; <>1__state = 1; return true; } return false; } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [CompilerGenerated] private sealed class <SpawnAssetRoutine>d__19 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public FleetingWraith <>4__this; private GameObject <spawnedEx>5__1; private GameObject <justInCase>5__2; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <SpawnAssetRoutine>d__19(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <spawnedEx>5__1 = null; <justInCase>5__2 = null; <>1__state = -2; } private bool MoveNext() { //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_003f: Unknown result type (might be due to invalid IL or missing references) //IL_0050: 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_0072: Unknown result type (might be due to invalid IL or missing references) //IL_0083: Unknown result type (might be due to invalid IL or missing references) //IL_009b: Unknown result type (might be due to invalid IL or missing references) //IL_00a5: Expected O, but got Unknown //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_0115: Unknown result type (might be due to invalid IL or missing references) //IL_011a: Unknown result type (might be due to invalid IL or missing references) //IL_00f0: Unknown result type (might be due to invalid IL or missing references) //IL_00f5: Unknown result type (might be due to invalid IL or missing references) //IL_016a: Unknown result type (might be due to invalid IL or missing references) //IL_016f: Unknown result type (might be due to invalid IL or missing references) //IL_0145: Unknown result type (might be due to invalid IL or missing references) //IL_014a: Unknown result type (might be due to invalid IL or missing references) //IL_01c1: Unknown result type (might be due to invalid IL or missing references) //IL_01c6: Unknown result type (might be due to invalid IL or missing references) //IL_019c: Unknown result type (might be due to invalid IL or missing references) //IL_01a1: Unknown result type (might be due to invalid IL or missing references) //IL_0218: Unknown result type (might be due to invalid IL or missing references) //IL_021d: 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) //IL_026f: Unknown result type (might be due to invalid IL or missing references) //IL_0274: 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_02a1: Unknown result type (might be due to invalid IL or missing references) //IL_02a6: Unknown result type (might be due to invalid IL or missing references) switch (<>1__state) { default: return false; case 0: <>1__state = -1; <>4__this._wraith.Load(); <>4__this._explosion.Load(); <>4__this._stompWave.Load(); <>4__this._chargeBomb.Load(); <>4__this._chargeGrind.Load(); <>4__this._flintEffects.Load(); <>2__current = (object)new WaitUntil((Func<bool>)(() => <>4__this._wraith.IsLoaded && <>4__this._explosion.IsLoaded && <>4__this._stompWave.IsLoaded && <>4__this._chargeBomb.IsLoaded && <>4__this._chargeGrind.IsLoaded && <>4__this._flintEffects.IsLoaded)); <>1__state = 1; return true; case 1: <>1__state = -1; if (<>4__this._wraith.Handle.OperationException != null) { <>4__this.l.LogError((object)$"Error loading asset: {<>4__this._wraith.Handle.OperationException}"); return false; } if (<>4__this._explosion.Handle.OperationException != null) { <>4__this.l.LogError((object)$"Error loading asset: {<>4__this._explosion.Handle.OperationException}"); return false; } if (<>4__this._stompWave.Handle.OperationException != null) { <>4__this.l.LogError((object)$"Error loading asset: {<>4__this._stompWave.Handle.OperationException}"); return false; } if (<>4__this._chargeBomb.Handle.OperationException != null) { <>4__this.l.LogError((object)$"Error loading asset: {<>4__this._chargeBomb.Handle.OperationException}"); return false; } if (<>4__this._chargeGrind.Handle.OperationException != null) { <>4__this.l.LogError((object)$"Error loading asset: {<>4__this._chargeGrind.Handle.OperationException}"); return false; } if (<>4__this._flintEffects.Handle.OperationException != null) { <>4__this.l.LogError((object)$"Error loading asset: {<>4__this._flintEffects.Handle.OperationException}"); return false; } <>4__this.spawnedWraith = ManagedAssetExtensions.InstantiateAsset<GameObject>(<>4__this._wraith); <>4__this.spawnedBomb = ManagedAssetExtensions.InstantiateAsset<GameObject>(<>4__this._chargeBomb); <>4__this.spawnedWave = ManagedAssetExtensions.InstantiateAsset<GameObject>(<>4__this._stompWave); <>4__this.spawnedGrind = ManagedAssetExtensions.InstantiateAsset<GameObject>(<>4__this._chargeGrind); <>4__this.spawnedFlint = ManagedAssetExtensions.InstantiateAsset<GameObject>(<>4__this._flintEffects); Object.Destroy((Object)(object)<>4__this.spawnedFlint.GetComponent<AutoRecycleSelf>()); ((Object)<>4__this.spawnedFlint).name = "Cutscene Flint"; <spawnedEx>5__1 = ManagedAssetExtensions.InstantiateAsset<GameObject>(<>4__this._explosion); <spawnedEx>5__1.SetActive(false); <justInCase>5__2 = Object.Instantiate<GameObject>(<spawnedEx>5__1); ((Behaviour)<justInCase>5__2.GetComponent<AutoRecycleSelf>()).enabled = false; <justInCase>5__2.SetActive(true); ((Object)<>4__this.spawnedWraith).name = "Mist Wraith"; ((Object)<justInCase>5__2).name = "Throw Explosion"; <>4__this.spawnedExplosion = <justInCase>5__2; ((Object)<>4__this.spawnedBomb).name = "Charge Bomb"; ((Object)<>4__this.spawnedWave).name = "Stomp Wave"; ((Object)<>4__this.spawnedGrind).name = "Charge Grind"; <>4__this.spawnedGrind.SetActive(true); <>4__this.BombPrep(); <>4__this.spawnedWraith.SetActive(false); <>4__this.spawnedWraith.AddComponent<WraithAdds>(); <>4__this.spawnedBomb.SetActive(false); <>4__this.spawnedWave.SetActive(false); <>4__this.spawnedGrind.SetActive(false); return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [CompilerGenerated] private sealed class <ThrowBomb>d__64 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public FleetingWraith <>4__this; private GameObject <Prefab>5__1; private GameObject <Longpin>5__2; private FsmStateAction[] <>s__3; private int <>s__4; private FsmStateAction <action>5__5; private DecelerateV2 <decel>5__6; private int <b>5__7; private GameObject <Clone>5__8; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <ThrowBomb>d__64(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <Prefab>5__1 = null; <Longpin>5__2 = null; <>s__3 = null; <action>5__5 = null; <decel>5__6 = null; <Clone>5__8 = null; <>1__state = -2; } private bool MoveNext() { //IL_0202: Unknown result type (might be due to invalid IL or missing references) //IL_0211: Unknown result type (might be due to invalid IL or missing references) //IL_022f: Unknown result type (might be due to invalid IL or missing references) //IL_0239: Expected O, but got Unknown //IL_019e: Unknown result type (might be due to invalid IL or missing references) //IL_01a3: Unknown result type (might be due to invalid IL or missing references) //IL_01b4: Unknown result type (might be due to invalid IL or missing references) //IL_01ca: Expected O, but got Unknown //IL_0153: Unknown result type (might be due to invalid IL or missing references) switch (<>1__state) { default: return false; case 0: <>1__state = -1; <Prefab>5__1 = <>4__this.spawnedBomb; if ((Object)(object)<Prefab>5__1 == (Object)null) { <>4__this.l.LogWarning((object)"Bomb Prefab was not located successfully!"); return false; } <Longpin>5__2 = null; <>s__3 = FsmUtil.GetState(<>4__this._control, "G Pull Antic").Actions; for (<>s__4 = 0; <>s__4 < <>s__3.Length; <>s__4++) { <action>5__5 = <>s__3[<>s__4]; ref DecelerateV2 reference = ref <decel>5__6; FsmStateAction obj = <action>5__5; reference = (DecelerateV2)(object)((obj is DecelerateV2) ? obj : null); if (<decel>5__6 != null) { <Longpin>5__2 = <decel>5__6.gameObject.gameObject.value; } <decel>5__6 = null; <action>5__5 = null; } <>s__3 = null; if ((Object)(object)<Longpin>5__2 == (Object)null) { <>4__this.l.LogWarning((object)"Longpin not found!"); return false; } <Prefab>5__1.transform.position = Vector3.zero; <b>5__7 = 8; break; case 1: <>1__state = -1; <Clone>5__8.transform.SetParent((Transform)null); <Clone>5__8.transform.position = new Vector3(<Longpin>5__2.transform.position.x, 102f); <Clone>5__8.SetActive(true); <>2__current = (object)new WaitForSeconds(0.015f); <>1__state = 2; return true; case 2: <>1__state = -1; <Clone>5__8 = null; <b>5__7--; break; } if (<b>5__7 > 0) { <Clone>5__8 = Object.Instantiate<GameObject>(((Component)<Prefab>5__1.transform).gameObject, ((Component)<>4__this).transform); <Clone>5__8.AddComponent<BombPrep>(); <>2__current = (object)new SpawnObjectFromGlobalPoolV2 { gameObject = FsmGameObject.op_Implicit(<Clone>5__8), spawnPoint = FsmGameObject.op_Implicit(<Longpin>5__2) }; <>1__state = 1; return true; } 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(); } } private ManualLogSource l = Logger.CreateLogSource("ComponentLogger"); private PlayMakerFSM _control = null; private Transform _heroTransform = null; private GameObject _hero = null; private ManagedAsset<GameObject> _wraith; private ManagedAsset<GameObject> _chargeBomb; private ManagedAsset<GameObject> _explosion; private ManagedAsset<GameObject> _stompWave; private ManagedAsset<GameObject> _chargeGrind; private ManagedAsset<GameObject> _flintEffects; private GameObject? spawnedWraith; private GameObject? spawnedExplosion; private GameObject? spawnedBomb; private GameObject? spawnedWave; private GameObject? spawnedGrind; private GameObject? spawnedFlint; private tk2dSpriteAnimationFrame[]? vanillaDragoon; private void Awake() { ManualLogSource val = Logger.CreateLogSource("ComponentLogger"); _wraith = ManagedAsset<GameObject>.FromNonSceneAsset("Assets/Prefabs/Hornet Enemies/Wraith.prefab", "localpoolprefabs_assets_areadustmaze"); _chargeBomb = ManagedAsset<GameObject>.FromNonSceneAsset("Assets/Prefabs/Hornet Bosses/Last Judge Charge Bomb.prefab", "localpoolprefabs_assets_areacoral"); _explosion = ManagedAsset<GameObject>.FromNonSceneAsset("Assets/Prefabs/Enemies/Generic Attacks/Last Judge Explosion.prefab", "localpoolprefabs_assets_areacoral"); _stompWave = ManagedAsset<GameObject>.FromNonSceneAsset("Assets/Prefabs/Hornet Bosses/Last Judge Stomp Wave.prefab", "localpoolprefabs_assets_areacoral"); _chargeGrind = ManagedAsset<GameObject>.FromSceneAsset("coral_judge_arena", "Boss Scene/Last Judge/Charge Grind"); _flintEffects = ManagedAsset<GameObject>.FromNonSceneAsset("Assets/Prefabs/Effects/Hornet_FX/Flint Effects.prefab", "localpoolprefabs_assets_shared"); ((MonoBehaviour)this).StartCoroutine(SpawnAssetRoutine()); } private void ResetTextures() { tk2dSprite component = ((Component)this).GetComponent<tk2dSprite>(); tk2dSpriteCollectionData collection = ((tk2dBaseSprite)component).Collection; for (int i = 0; i < 3; i++) { collection.materials[i].mainTexture = (Texture)(object)AssetManager.Get<Texture2D>($"atlas{i}"); } } private void ChangeTextures() { tk2dSprite component = ((Component)this).GetComponent<tk2dSprite>(); tk2dSpriteCollectionData collection = ((tk2dBaseSprite)component).Collection; for (int i = 0; i < 3; i++) { collection.materials[i].mainTexture = (Texture)(object)AssetManager.Get<Texture2D>($"atlasF{i}"); } } [IteratorStateMachine(typeof(<SpawnAssetRoutine>d__19))] private IEnumerator SpawnAssetRoutine() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <SpawnAssetRoutine>d__19(0) { <>4__this = this }; } private void BombPrep() { GameObject val = spawnedBomb; PlayMakerFSM val2 = FSMUtility.LocateMyFSM(val, "Control"); FsmUtil.GetState(val2, "Antic").Actions[2].enabled = false; ResetTextures(); SetupBoss(); } private void SetupBoss() { //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_012e: Expected O, but got Unknown GetComponents(); IncreaseHealth(); ModifyDamage(); RemoveStuns(); ShortenIdle(); CreateDash(); HopThrow(); DragoonParry(); StabStitch(); PrepFleetingPhantom(); FsmStateAction[] actions = FsmUtil.GetState(_control, "Rage?").Actions; foreach (FsmStateAction val in actions) { CompareHP val2 = (CompareHP)(object)((val is CompareHP) ? val : null); if (val2 != null) { val2.integer2 = FsmInt.op_Implicit(390); } } FsmState val3 = ((IEnumerable<FsmState>)_control.FsmStates).FirstOrDefault((Func<FsmState, bool>)((FsmState state) => state.name == "Dragoon Rage")); FsmUtil.AddAction(val3, (FsmStateAction)(object)new InvokeMethod(ModifyPhase2)); FsmUtil.ChangeTransition(val3, "FINISHED", "Roar End"); FsmState state2 = FsmUtil.GetState(_control, "Dragoon?"); if (state2 != null) { state2.Actions = (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)new NextFrameEvent { sendEvent = FsmEvent.GetFsmEvent("FINISHED") } }; } } private void GetComponents() { _control = FSMUtility.LocateMyFSM(((Component)this).gameObject, "Control"); _heroTransform = HeroController.instance.transform; _hero = ((Component)HeroController.instance).gameObject; } private void IncreaseHealth() { HealthManager component = ((Component)this).GetComponent<HealthManager>(); component.initHp = 760; component.hp = 760; } private void ModifyDamage() { DamageHero[] componentsInChildren = ((Component)this).GetComponentsInChildren<DamageHero>(true); foreach (DamageHero val in componentsInChildren) { val.damageDealt = 2; } FsmState state = FsmUtil.GetState(_control, "G Pull Antic"); if (state == null) { l.LogWarning((object)"Pin for dmg not found!"); return; } FsmStateAction[] actions = state.Actions; foreach (FsmStateAction val2 in actions) { DecelerateV2 val3 = (DecelerateV2)(object)((val2 is DecelerateV2) ? val2 : null); if (val3 != null) { GameObject value = val3.gameObject.gameObject.value; value.GetComponent<DamageHero>().damageDealt = 2; } } } private void ShortenIdle() { FsmState[] fsmStates = _control.FsmStates; foreach (FsmState val in fsmStates) { if (!(val.Name == "Idle")) { continue; } FsmStateAction[] actions = val.Actions; foreach (FsmStateAction val2 in actions) { Wait val3 = (Wait)(object)((val2 is Wait) ? val2 : null); if (val3 != null) { val3.time = FsmFloat.op_Implicit(0.55f); } } } } private void CreateDash() { //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0012: Unknown result type (might be due to invalid IL or missing references) //IL_0013: Unknown result type (might be due to invalid IL or missing references) //IL_0018: Unknown result type (might be due to invalid IL or missing references) //IL_0025: Expected O, but got Unknown //IL_0025: 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_0035: Expected O, but got Unknown //IL_0035: Unknown result type (might be due to invalid IL or missing references) //IL_0046: Expected O, but got Unknown //IL_0046: Unknown result type (might be due to invalid IL or missing references) //IL_004b: 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_0051: Unknown result type (might be due to invalid IL or missing references) //IL_005e: Expected O, but got Unknown //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_006e: 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_0086: Expected O, but got Unknown //IL_0086: 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_009b: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Expected O, but got Unknown //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00b1: Unknown result type (might be due to invalid IL or missing references) //IL_00c7: 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_00e9: Unknown result type (might be due to invalid IL or missing references) //IL_00f0: 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_0100: Expected O, but got Unknown //IL_0112: Unknown result type (might be due to invalid IL or missing references) //IL_0119: Expected O, but got Unknown //IL_0178: Unknown result type (might be due to invalid IL or missing references) //IL_017f: Expected O, but got Unknown //IL_01d4: Unknown result type (might be due to invalid IL or missing references) //IL_01d9: Unknown result type (might be due to invalid IL or missing references) //IL_01e6: Unknown result type (might be due to invalid IL or missing references) //IL_01f6: Unknown result type (might be due to invalid IL or missing references) //IL_0206: Unknown result type (might be due to invalid IL or missing references) //IL_0216: Unknown result type (might be due to invalid IL or missing references) //IL_0226: Unknown result type (might be due to invalid IL or missing references) //IL_022f: Expected O, but got Unknown //IL_023a: Unknown result type (might be due to invalid IL or missing references) //IL_0241: Expected O, but got Unknown //IL_0267: Unknown result type (might be due to invalid IL or missing references) //IL_026c: Unknown result type (might be due to invalid IL or missing references) //IL_0279: Unknown result type (might be due to invalid IL or missing references) //IL_0289: Unknown result type (might be due to invalid IL or missing references) //IL_0299: Unknown result type (might be due to invalid IL or missing references) //IL_02a9: 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_02c2: Expected O, but got Unknown //IL_0316: Unknown result type (might be due to invalid IL or missing references) //IL_031d: Expected O, but got Unknown //IL_0343: Unknown result type (might be due to invalid IL or missing references) //IL_0348: Unknown result type (might be due to invalid IL or missing references) //IL_0358: Unknown result type (might be due to invalid IL or missing references) //IL_036a: Expected O, but got Unknown //IL_0395: Unknown result type (might be due to invalid IL or missing references) //IL_039c: Expected O, but got Unknown //IL_03c2: Unknown result type (might be due to invalid IL or missing references) //IL_03c7: Unknown result type (might be due to invalid IL or missing references) //IL_03c8: Unknown result type (might be due to invalid IL or missing references) //IL_03cd: Unknown result type (might be due to invalid IL or missing references) //IL_03da: Expected O, but got Unknown //IL_03da: Unknown result type (might be due to invalid IL or missing references) //IL_03e0: Unknown result type (might be due to invalid IL or missing references) //IL_03ea: Expected O, but got Unknown //IL_03ea: Unknown result type (might be due to invalid IL or missing references) //IL_03fc: Expected O, but got Unknown //IL_03fc: Unknown result type (might be due to invalid IL or missing references) //IL_0401: Unknown result type (might be due to invalid IL or missing references) //IL_0411: Unknown result type (might be due to invalid IL or missing references) //IL_0423: Expected O, but got Unknown //IL_0423: Unknown result type (might be due to invalid IL or missing references) //IL_0428: Unknown result type (might be due to invalid IL or missing references) //IL_043e: 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_0447: Expected O, but got Unknown //IL_0447: Unknown result type (might be due to invalid IL or missing references) //IL_044c: Unknown result type (might be due to invalid IL or missing references) //IL_0454: Unknown result type (might be due to invalid IL or missing references) //IL_0464: Unknown result type (might be due to invalid IL or missing references) //IL_0476: Expected O, but got Unknown //IL_0476: Unknown result type (might be due to invalid IL or missing references) //IL_047b: Unknown result type (might be due to invalid IL or missing references) //IL_0483: Unknown result type (might be due to invalid IL or missing references) //IL_0495: Expected O, but got Unknown //IL_04d0: Unknown result type (might be due to invalid IL or missing references) //IL_04d5: Unknown result type (might be due to invalid IL or missing references) //IL_04dd: Unknown result type (might be due to invalid IL or missing references) //IL_04ed: Unknown result type (might be due to invalid IL or missing references) //IL_04ff: Expected O, but got Unknown //IL_04ff: Unknown result type (might be due to invalid IL or missing references) //IL_0504: Unknown result type (might be due to invalid IL or missing references) //IL_050c: Unknown result type (might be due to invalid IL or missing references) //IL_051c: Unknown result type (might be due to invalid IL or missing references) //IL_052e: Expected O, but got Unknown //IL_052f: Unknown result type (might be due to invalid IL or missing references) //IL_0536: Expected O, but got Unknown //IL_0598: Unknown result type (might be due to invalid IL or missing references) //IL_059f: Expected O, but got Unknown //IL_0607: Unknown result type (might be due to invalid IL or missing references) //IL_060e: Expected O, but got Unknown //IL_0670: Unknown result type (might be due to invalid IL or missing references) //IL_0677: Expected O, but got Unknown //IL_069d: Unknown result type (might be due to invalid IL or missing references) //IL_06a2: Unknown result type (might be due to invalid IL or missing references) //IL_06aa: Unknown result type (might be due to invalid IL or missing references) //IL_06ba: Unknown result type (might be due to invalid IL or missing references) //IL_06cc: Expected O, but got Unknown //IL_0708: Unknown result type (might be due to invalid IL or missing references) //IL_070f: Expected O, but got Unknown //IL_0799: Unknown result type (might be due to invalid IL or missing references) //IL_07a0: Expected O, but got Unknown //IL_07c6: Unknown result type (might be due to invalid IL or missing references) //IL_07cd: Expected O, but got Unknown //IL_0896: Unknown result type (might be due to invalid IL or missing references) //IL_089d: Expected O, but got Unknown //IL_0966: Unknown result type (might be due to invalid IL or missing references) //IL_096b: Unknown result type (might be due to invalid IL or missing references) //IL_097b: Unknown result type (might be due to invalid IL or missing references) //IL_098d: Expected O, but got Unknown //IL_09eb: Unknown result type (might be due to invalid IL or missing references) //IL_09f2: Expected O, but got Unknown //IL_0a2b: Unknown result type (might be due to invalid IL or missing references) //IL_0a32: Expected O, but got Unknown //IL_0b7c: Unknown result type (might be due to invalid IL or missing references) //IL_0b81: Unknown result type (might be due to invalid IL or missing references) //IL_0b89: Unknown result type (might be due to invalid IL or missing references) //IL_0b9f: Expected O, but got Unknown Fsm fsm = _control.fsm; Tk2dPlayAnimation val = new Tk2dPlayAnimation { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, animLibName = new FsmString(""), clipName = FsmString.op_Implicit("Throw Dash") }; SetVelocityByScale val2 = new SetVelocityByScale { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, speed = FsmFloat.op_Implicit(-50f), ySpeed = FsmFloat.op_Implicit(0f), everyFrame = false }; Wait val3 = new Wait { time = FsmFloat.op_Implicit(0.65f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") }; FaceObject val4 = new FaceObject { objectA = FsmGameObject.op_Implicit(((Component)_control).gameObject), objectB = FsmGameObject.op_Implicit(((Component)_heroTransform).gameObject), spriteFacesRight = FsmBool.op_Implicit(false), playNewAnimation = false, resetFrame = false, everyFrame = false }; FsmState state = FsmUtil.GetState(_control, "G Dash"); ActivateGameObject val5 = new ActivateGameObject(); if (state != null) { FsmStateAction[] actions = state.Actions; foreach (FsmStateAction val6 in actions) { ActivateGameObject val7 = (ActivateGameObject)(object)((val6 is ActivateGameObject) ? val6 : null); if (val7 != null) { val5 = val7; } } } FsmState state2 = FsmUtil.GetState(_control, "Range Check"); GetXDistance val8 = new GetXDistance(); if (state2 != null) { FsmStateAction[] actions2 = state2.Actions; foreach (FsmStateAction val9 in actions2) { GetXDistance val10 = (GetXDistance)(object)((val9 is GetXDistance) ? val9 : null); if (val10 != null) { val8 = val10; val8.everyFrame = true; } } } FloatCompare val11 = new FloatCompare { float1 = val8.storeResult, float2 = FsmFloat.op_Implicit(2.5f), tolerance = FsmFloat.op_Implicit(0f), equal = FsmEvent.GetFsmEvent("FINISHED"), lessThan = FsmEvent.GetFsmEvent("FINISHED"), everyFrame = true }; FsmState val12 = new FsmState(_control.fsm); val12.Name = "Short Dash"; fsm.States = fsm.States.Append(val12).ToArray(); FloatCompare val13 = new FloatCompare { float1 = val8.storeResult, float2 = FsmFloat.op_Implicit(10.4f), tolerance = FsmFloat.op_Implicit(0f), equal = FsmEvent.GetFsmEvent("FINISHED"), lessThan = FsmEvent.GetFsmEvent("FINISHED"), everyFrame = true }; val12.Actions = (FsmStateAction[])(object)new FsmStateAction[7] { (FsmStateAction)val4, (FsmStateAction)val, (FsmStateAction)val2, (FsmStateAction)val3, (FsmStateAction)val5, (FsmStateAction)val8, (FsmStateAction)val13 }; FsmUtil.ChangeTransition(_control, "Far Range", "RUN TO", "Short Dash"); FsmState val14 = new FsmState(_control.fsm); val14.Name = "Short Air Dash"; fsm.States = fsm.States.Append(val14).ToArray(); Wait val15 = new Wait { time = FsmFloat.op_Implicit(0.2f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") }; val14.Actions = (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)val, (FsmStateAction)val2, (FsmStateAction)val15, (FsmStateAction)val5 }; FsmState val16 = new FsmState(_control.fsm); val16.Name = "Dash Diag"; fsm.States = fsm.States.Append(val16).ToArray(); Tk2dPlayAnimation val17 = new Tk2dPlayAnimation { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, animLibName = new FsmString(""), clipName = FsmString.op_Implicit("Air Throw Dash") }; Wait val18 = new Wait { time = FsmFloat.op_Implicit(0.15f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") }; FsmOwnerDefault gameObject = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(((Component)_control).gameObject), ownerOption = (OwnerDefaultOption)1 }; SetVelocityAsAngle val19 = new SetVelocityAsAngle { gameObject = gameObject, angle = FsmFloat.op_Implicit(130f), speed = FsmFloat.op_Implicit(40f) }; SetGravity2dScale val20 = new SetGravity2dScale { gameObject = gameObject, gravityScale = FsmFloat.op_Implicit(0f) }; val16.Actions = (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)val17, (FsmStateAction)val18, new InvokeMethod(FLUturn), (FsmStateAction)val5, (FsmStateAction)val19, (FsmStateAction)val20 }; SetVelocityAsAngle val21 = new SetVelocityAsAngle { gameObject = gameObject, angle = FsmFloat.op_Implicit(50f), speed = FsmFloat.op_Implicit(40f) }; SetVelocityAsAngle val22 = new SetVelocityAsAngle { gameObject = gameObject, angle = FsmFloat.op_Implicit(310f), speed = FsmFloat.op_Implicit(40f) }; FsmState val23 = new FsmState(fsm); val23.Name = "Dash Right Up"; fsm.States = fsm.States.Append(val23).ToArray(); val23.Actions = (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)val17, (FsmStateAction)val18, (FsmStateAction)val5, new InvokeMethod(FRUturn), (FsmStateAction)val21, (FsmStateAction)val20 }; FsmState val24 = new FsmState(fsm); val24.Name = "Which Way Down"; fsm.States = fsm.States.Append(val24).ToArray(); SendEventByScale action = FsmUtil.GetAction<SendEventByScale>(_control, "Throw Lock", 3); if (action == null) { return; } val24.Actions = (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)action }; FsmState val25 = new FsmState(_control.fsm); val25.Name = "Dash Right Down"; fsm.States = fsm.States.Append(val25).ToArray(); val25.Actions = (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)val17, (FsmStateAction)val5, (FsmStateAction)val18, new InvokeMethod(FRDturn), (FsmStateAction)val22, (FsmStateAction)val20 }; FsmState val26 = new FsmState(fsm); val26.Name = "Dash Left Down"; fsm.States = fsm.States.Append(val26).ToArray(); SetVelocityAsAngle val27 = new SetVelocityAsAngle { gameObject = gameObject, angle = FsmFloat.op_Implicit(230f), speed = FsmFloat.op_Implicit(40f) }; val26.Actions = (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)val17, (FsmStateAction)val5, (FsmStateAction)val18, new InvokeMethod(FLDturn), (FsmStateAction)val27, (FsmStateAction)val20 }; FsmState val28 = new FsmState(fsm); val28.Name = "Dash Faces"; fsm.States = fsm.States.Append(val28).ToArray(); if (action != null) { val28.Actions = (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)action }; FsmUtil.AddTransition(_control, "Short Dash", "FINISHED", "Dash Faces"); FsmUtil.AddTransition(val28, "L", "Dash Diag"); FsmUtil.AddTransition(val28, "R", "Dash Right Up"); FsmState val29 = new FsmState(fsm); val29.Name = "After Up?"; fsm.States = fsm.States.Append(val29).ToArray(); SendRandomEventV4 val30 = new SendRandomEventV4(); val30.events = (FsmEvent[])(object)new FsmEvent[3] { FsmEvent.GetFsmEvent("PARRY"), FsmEvent.GetFsmEvent("A THROW"), FsmEvent.GetFsmEvent("EVADE") }; val30.weights = (FsmFloat[])(object)new FsmFloat[3] { FsmFloat.op_Implicit(0.4f), FsmFloat.op_Implicit(0.45f), FsmFloat.op_Implicit(1f) }; val30.eventMax = (FsmInt[])(object)new FsmInt[3] { FsmInt.op_Implicit(2), FsmInt.op_Implicit(2), FsmInt.op_Implicit(4) }; val30.missedMax = (FsmInt[])(object)new FsmInt[3] { FsmInt.op_Implicit(5), FsmInt.op_Implicit(5), FsmInt.op_Implicit(5) }; val30.activeBool = FsmBool.op_Implicit(false); SendRandomEventV4 val31 = val30; val30 = new SendRandomEventV4(); val30.events = (FsmEvent[])(object)new FsmEvent[3] { FsmEvent.GetFsmEvent("PARRY"), FsmEvent.GetFsmEvent("A THROW"), FsmEvent.GetFsmEvent("EVADE") }; val30.weights = (FsmFloat[])(object)new FsmFloat[3] { FsmFloat.op_Implicit(0.5f), FsmFloat.op_Implicit(0.8f), FsmFloat.op_Implicit(1f) }; val30.eventMax = (FsmInt[])(object)new FsmInt[3] { FsmInt.op_Implicit(2), FsmInt.op_Implicit(2), FsmInt.op_Implicit(4) }; val30.missedMax = (FsmInt[])(object)new FsmInt[3] { FsmInt.op_Implicit(5), FsmInt.op_Implicit(5), FsmInt.op_Implicit(5) }; val30.activeBool = FsmBool.op_Implicit(false); SendRandomEventV4 val32 = val30; Wait val33 = new Wait { time = FsmFloat.op_Implicit(0.001f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") }; val29.Actions = (FsmStateAction[])(object)new FsmStateAction[2] { new InvokeMethod(resetTurn), (FsmStateAction)val31 }; FsmUtil.AddTransition(val29, "PARRY", "Parry Antic"); FsmUtil.AddTransition(val29, "A THROW", "Throw Lock"); FsmUtil.AddTransition(val29, "EVADE", "Short Air Dash"); FsmState val34 = new FsmState(fsm); val34.Name = "After Air Dash?"; fsm.states = fsm.states.Append(val34).ToArray(); val34.Actions = (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)val32 }; FsmState val35 = new FsmState(fsm); val35.Name = "After Down?"; fsm.States = fsm.States.Append(val35).ToArray(); val35.Actions = (FsmStateAction[])(object)new FsmStateAction[2] { new InvokeMethod(resetTurn), (FsmStateAction)val33 }; FsmUtil.AddTransition(_control, "Dash Right Up", "FINISHED", "After Up?"); FsmUtil.AddTransition(_control, "Dash Diag", "FINISHED", "After Up?"); FsmUtil.AddTransition(val14, "FINISHED", "After Air Dash?"); FsmUtil.AddTransition(val34, "PARRY", "Parry Antic"); FsmUtil.AddTransition(val34, "A THROW", "Throw Lock"); FsmUtil.AddTransition(val34, "EVADE", "Which Way Down"); FsmUtil.AddTransition(val24, "L", "Dash Left Down"); FsmUtil.AddTransition(val24, "R", "Dash Right Down"); FsmUtil.AddTransition(val26, "FINISHED", "After Down?"); FsmUtil.AddTransition(val25, "FINISHED", "After Down?"); FsmUtil.AddTransition(val35, "FINISHED", "Stab Antic"); FsmState state3 = FsmUtil.GetState(_control, "Stab Antic"); if (state3 != null) { FsmUtil.InsertAction(state3, (FsmStateAction)new SetGravity2dScale { gameObject = gameObject, gravityScale = FsmFloat.op_Implicit(2.5f) }, 1); FsmUtil.AddAction(FsmUtil.GetState(_control, "Short Dash"), (FsmStateAction)(object)new InvokeMethod(ContactManager)); FsmUtil.AddAction(FsmUtil.GetState(_control, "Throw Lock"), (FsmStateAction)(object)new InvokeMethod(ContactManager)); FsmUtil.AddAction(FsmUtil.GetState(_control, "Parry Antic"), (FsmStateAction)(object)new InvokeMethod(ContactManager)); FsmUtil.AddAction(FsmUtil.GetState(_control, "Stab Antic"), (FsmStateAction)(object)new InvokeMethod(ContactManager)); } } } private void ContactManager() { DamageHero component = ((Component)this).gameObject.GetComponent<DamageHero>(); if ((Object)(object)component == (Object)null) { l.LogWarning((object)"DamageHero component not found!"); return; } string activeStateName = _control.ActiveStateName; if (activeStateName.Equals("Throw Lock") || activeStateName.Equals("Parry Antic") || activeStateName.Equals("Stab Antic")) { ((Behaviour)component).enabled = true; } else { ((Behaviour)component).enabled = false; } } private void FLUturn() { //IL_0017: 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) ((Component)_control).gameObject.transform.SetLocalPositionAndRotation(((Component)this).transform.localPosition, Quaternion.Euler(0f, 0f, 310f)); } private void FRUturn() { //IL_0017: 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) ((Component)_control).gameObject.transform.SetLocalPositionAndRotation(((Component)this).transform.localPosition, Quaternion.Euler(0f, 0f, 50f)); } private void FLDturn() { //IL_0017: 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) ((Component)_control).gameObject.transform.SetLocalPositionAndRotation(((Component)this).transform.localPosition, Quaternion.Euler(0f, 0f, 50f)); } private void FRDturn() { //IL_0017: 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) ((Component)_control).gameObject.transform.SetLocalPositionAndRotation(((Component)this).transform.localPosition, Quaternion.Euler(0f, 0f, 310f)); } private void resetTurn() { //IL_0017: 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) ((Component)_control).gameObject.transform.SetLocalPositionAndRotation(((Component)this).transform.localPosition, Quaternion.Euler(0f, 0f, 0f)); } private void HopThrow() { //IL_000c: Unknown result type (might be due to invalid IL or missing references) //IL_0012: Expected O, but got Unknown //IL_004a: Unknown result type (might be due to invalid IL or missing references) //IL_0051: Expected O, but got Unknown //IL_024e: Unknown result type (might be due to invalid IL or missing references) //IL_0253: Unknown result type (might be due to invalid IL or missing references) //IL_0269: 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_0272: Expected O, but got Unknown //IL_0272: Unknown result type (might be due to invalid IL or missing references) //IL_0277: Unknown result type (might be due to invalid IL or missing references) //IL_027f: Unknown result type (might be due to invalid IL or missing references) //IL_028f: Unknown result type (might be due to invalid IL or missing references) //IL_02a1: Expected O, but got Unknown FsmState val = new FsmState(_control.fsm); val.Name = "After Throw Dash?"; _control.fsm.States = _control.fsm.States.Append(val).ToArray(); SendRandomEventV4 val2 = new SendRandomEventV4(); val2.events = (FsmEvent[])(object)new FsmEvent[2] { FsmEvent.GetFsmEvent("PARRY"), FsmEvent.GetFsmEvent("FINISHED") }; val2.weights = (FsmFloat[])(object)new FsmFloat[2] { FsmFloat.op_Implicit(0.95f), FsmFloat.op_Implicit(1f) }; val2.eventMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(2), FsmInt.op_Implicit(3) }; val2.missedMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(3), FsmInt.op_Implicit(4) }; val2.activeBool = FsmBool.op_Implicit(false); SendRandomEventV4 val3 = val2; val.Actions = (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)val3 }; FsmState state = FsmUtil.GetState(_control, "Jump"); if (state != null) { FsmUtil.ChangeTransition(state, "FINISHED", "Throw Lock"); } FsmState state2 = FsmUtil.GetState(_control, "A Fall"); if (state2 != null) { FsmUtil.ChangeTransition(state2, "FINISHED", "After Throw Dash?"); } FsmUtil.AddTransition(val, "FINISHED", "In Air"); FsmUtil.AddTransition(val, "PARRY", "Parry Antic"); FsmState state3 = FsmUtil.GetState(_control, "Dragoon Launch"); FsmState state4 = FsmUtil.GetState(_control, "Throw Lock"); FsmState[] fsmStates = _control.FsmStates; foreach (FsmState val4 in fsmStates) { SetRecoilSpeed firstActionOfType = FsmUtil.GetFirstActionOfType<SetRecoilSpeed>(val4); if (state4 == null || firstActionOfType == null || state3 == null) { continue; } FsmUtil.InsertAction(_control, "Throw Lock", (FsmStateAction)(object)firstActionOfType, 0); FsmStateAction[] actions = state3.Actions; foreach (FsmStateAction val5 in actions) { SetRecoilSpeed val6 = (SetRecoilSpeed)(object)((val5 is SetRecoilSpeed) ? val5 : null); if (val6 != null) { val6.newRecoilSpeed = FsmFloat.op_Implicit(0f); } } } FsmOwnerDefault gameObject = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(((Component)_control).gameObject), ownerOption = (OwnerDefaultOption)1 }; DecelerateXY val7 = new DecelerateXY { gameObject = gameObject, decelerationX = FsmFloat.op_Implicit(0.85f), decelerationY = FsmFloat.op_Implicit(1f) }; FsmState state5 = FsmUtil.GetState(_control, "In Air"); if (state5 != null) { FsmUtil.InsertAction(state5, (FsmStateAction)(object)val7, 0); } } private void DragoonParry() { //IL_0069: Unknown result type (might be due to invalid IL or missing references) //IL_0070: Expected O, but got Unknown //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00b1: Expected O, but got Unknown //IL_0129: Unknown result type (might be due to invalid IL or missing references) //IL_012e: Unknown result type (might be due to invalid IL or missing references) //IL_013a: Expected O, but got Unknown //IL_0198: Unknown result type (might be due to invalid IL or missing references) //IL_019d: 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_01ba: Expected O, but got Unknown //IL_0298: Unknown result type (might be due to invalid IL or missing references) //IL_029d: Unknown result type (might be due to invalid IL or missing references) //IL_02a5: Unknown result type (might be due to invalid IL or missing references) //IL_02b0: Unknown result type (might be due to invalid IL or missing references) //IL_02bd: Expected O, but got Unknown //IL_0233: Unknown result type (might be due to invalid IL or missing references) //IL_0238: 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_0243: Expected O, but got Unknown //IL_0243: 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_025b: Unknown result type (might be due to invalid IL or missing references) //IL_0267: Expected O, but got Unknown //IL_033c: Unknown result type (might be due to invalid IL or missing references) //IL_0343: Expected O, but got Unknown //IL_0378: Unknown result type (might be due to invalid IL or missing references) //IL_037d: Unknown result type (might be due to invalid IL or missing references) //IL_0385: Unknown result type (might be due to invalid IL or missing references) //IL_0395: Unknown result type (might be due to invalid IL or missing references) //IL_03a5: Unknown result type (might be due to invalid IL or missing references) //IL_03b5: Unknown result type (might be due to invalid IL or missing references) //IL_03c5: Unknown result type (might be due to invalid IL or missing references) //IL_03d7: Expected O, but got Unknown //IL_03f5: Unknown result type (might be due to invalid IL or missing references) //IL_03fc: Expected O, but got Unknown //IL_0431: Unknown result type (might be due to invalid IL or missing references) //IL_0436: Unknown result type (might be due to invalid IL or missing references) //IL_0446: Unknown result type (might be due to invalid IL or missing references) //IL_0458: Expected O, but got Unknown //IL_0467: Unknown result type (might be due to invalid IL or missing references) //IL_046c: 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_048d: Expected O, but got Unknown FsmState[] fsmStates = _control.FsmStates; FsmState val = ((IEnumerable<FsmState>)_control.FsmStates).FirstOrDefault((Func<FsmState, bool>)((FsmState state) => state.Name == "Parry Block")); FsmEvent.SetEventIsGlobal("DRAGOON"); FsmEvent fsmEvent = FsmEvent.GetFsmEvent("DRAGOON"); FsmEvent fsmEvent2 = FsmEvent.GetFsmEvent("BLOCKED HIT"); FsmState val2 = null; FsmState val3 = null; FsmFloat val4 = new FsmFloat("Parry Drop Set"); val4.Value = 0.7f; _control.FsmVariables.FloatVariables = _control.FsmVariables.FloatVariables.Append(val4).ToArray(); SetFsmFloat val5 = new SetFsmFloat(); val5.variableName = FsmString.op_Implicit("Parry Drop Time"); val5.setValue = val4; FsmUtil.AddAction(_control, "Parry Block", (FsmStateAction)(object)val5); FsmState[] array = fsmStates; foreach (FsmState val6 in array) { if (val6.Name == "Parry Block") { val2 = val6; List<FsmStateAction> list = val6.Actions.ToList(); FsmUtil.AddAction(val6, (FsmStateAction)(object)val5); list.Insert(0, (FsmStateAction)new SendEvent { sendEvent = fsmEvent }); val6.Actions = list.ToArray(); } if (val6.Name == "Dragoon Antic") { val3 = val6; } if (val6.Name == "Drop Antic") { FsmState val7 = val6; List<FsmStateAction> list2 = val7.Actions.ToList(); list2.Insert(1, (FsmStateAction)new FloatAdd { floatVariable = val4, add = FsmFloat.op_Implicit(-0.05f) }); val6.Actions = list2.ToArray(); FsmStateAction[] actions = val7.Actions; foreach (FsmStateAction val8 in actions) { Wait val9 = (Wait)(object)((val8 is Wait) ? val8 : null); if (val9 != null) { val9.time = val4; } } } if (val6.Name == "Dragoon End") { FsmUtil.AddAction(_control, "Dragoon End", (FsmStateAction)new SetInvincible { target = new FsmOwnerDefault(), Invincible = FsmBool.op_Implicit(false), InvincibleFromDirection = FsmInt.op_Implicit(0), resetOnStateExit = false }); } } if (val2 != null && val3 != null) { val2.Transitions = (FsmTransition[])(object)new FsmTransition[1] { new FsmTransition { toFsmState = val3, toState = "Dragoon Antic", FsmEvent = FsmEvent.Finished } }; } FsmState state2 = FsmUtil.GetState(_control, "Pos"); if (state2 != null) { FsmStateAction[] actions2 = state2.Actions; foreach (FsmStateAction val10 in actions2) { SetPosition2D val11 = (SetPosition2D)(object)((val10 is SetPosition2D) ? val10 : null); if (val11 != null) { val11.Y = FsmFloat.op_Implicit(104.2494f); break; } } } FsmState val12 = new FsmState(_control.fsm); val12.Name = "Check Drop Time pleeease"; _control.Fsm.States = _control.FsmStates.Append(val12).ToArray(); FloatCompare val13 = new FloatCompare { float1 = val4, float2 = FsmFloat.op_Implicit(0.5f), tolerance = FsmFloat.op_Implicit(0f), equal = FsmEvent.GetFsmEvent("NEXT"), lessThan = FsmEvent.GetFsmEvent("NEXT"), greaterThan = FsmEvent.GetFsmEvent("CANCEL") }; val12.Actions = (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)val13 }; FsmState val14 = new FsmState(_control.fsm); val14.Name = "Change Drop Time"; _control.Fsm.States = _control.FsmStates.Append(val14).ToArray(); SetFsmFloat val15 = new SetFsmFloat { variableName = FsmString.op_Implicit("Parry Drop Time"), setValue = FsmFloat.op_Implicit(0.51f) }; val14.Actions = (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)val15, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(0.001f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") } }; FsmState state3 = FsmUtil.GetState(_control, "Drop Antic"); if (state2 != null) { FsmUtil.ChangeTransition(state2, "FINISHED", "Check Drop Time pleeease"); FsmUtil.AddTransition(val12, "NEXT", "Change Drop Time"); FsmUtil.AddTransition(val12, "CANCEL", "Drop Antic"); FsmUtil.AddTransition(val14, "FINISHED", "Drop Antic"); } } private void StabStitch() { //IL_000c: Unknown result type (might be due to invalid IL or missing references) //IL_0012: Expected O, but got Unknown //IL_004a: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Unknown result type (might be due to invalid IL or missing references) //IL_0067: Unknown result type (might be due to invalid IL or missing references) //IL_006d: Expected O, but got Unknown //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_0083: Unknown result type (might be due to invalid IL or missing references) //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008b: Expected O, but got Unknown //IL_0090: Unknown result type (might be due to invalid IL or missing references) //IL_0096: Expected O, but got Unknown //IL_0096: Unknown result type (might be due to invalid IL or missing references) //IL_009b: Unknown result type (might be due to invalid IL or missing references) //IL_00a2: 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_00b7: Expected O, but got Unknown //IL_00b7: 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_00c3: 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_00d8: Expected O, but got Unknown //IL_00d8: 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_00e4: 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_0104: Unknown result type (might be due to invalid IL or missing references) //IL_010d: Expected O, but got Unknown //IL_0152: Unknown result type (might be due to invalid IL or missing references) //IL_0159: Expected O, but got Unknown //IL_0193: Unknown result type (might be due to invalid IL or missing references) //IL_019a: Expected O, but got Unknown //IL_019a: Unknown result type (might be due to invalid IL or missing references) //IL_01a1: Expected O, but got Unknown //IL_01a1: Unknown result type (might be due to invalid IL or missing references) //IL_01a8: Expected O, but got Unknown //IL_01a8: Unknown result type (might be due to invalid IL or missing references) //IL_01af: Expected O, but got Unknown //IL_01af: Unknown result type (might be due to invalid IL or missing references) //IL_01b4: Unknown result type (might be due to invalid IL or missing references) //IL_01bb: Unknown result type (might be due to invalid IL or missing references) //IL_01cb: Unknown result type (might be due to invalid IL or missing references) //IL_01db: Unknown result type (might be due to invalid IL or missing references) //IL_01e4: Expected O, but got Unknown //IL_0373: Unknown result type (might be due to invalid IL or missing references) //IL_0378: Unknown result type (might be due to invalid IL or missing references) //IL_037f: Unknown result type (might be due to invalid IL or missing references) //IL_038f: Unknown result type (might be due to invalid IL or missing references) //IL_03a1: Expected O, but got Unknown FsmState val = new FsmState(_control.fsm); val.Name = "Consult Tracker"; _control.fsm.States = _control.fsm.States.Append(val).ToArray(); FsmOwnerDefault gameObject = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(((Component)_control).gameObject), ownerOption = (OwnerDefaultOption)1 }; FsmOwnerDefault val2 = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(_hero), ownerOption = (OwnerDefaultOption)1 }; FsmBool boolVariable = new FsmBool("Combo Tracker"); SetBoolValue val3 = new SetBoolValue { boolVariable = boolVariable, boolValue = FsmBool.op_Implicit(false), everyFrame = false }; SetBoolValue val4 = new SetBoolValue { boolVariable = boolVariable, boolValue = FsmBool.op_Implicit(true), everyFrame = false }; BoolTest val5 = new BoolTest { boolVariable = boolVariable, isTrue = FsmEvent.GetFsmEvent("L"), isFalse = FsmEvent.GetFsmEvent("R"), everyFrame = false }; val.Actions = (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)val5 }; FsmUtil.InsertAction(_control, "Range Check", (FsmStateAction)(object)val3, 0); FsmUtil.InsertAction(_control, "Parry Swipe", (FsmStateAction)(object)val4, 0); FsmState val6 = new FsmState(_control.fsm); val6.Name = "Parry Miss Stab"; _control.fsm.States = _control.fsm.States.Append(val6).ToArray(); ActivateGameObject val7 = new ActivateGameObject(); AudioPlayerOneShotSingle val8 = new AudioPlayerOneShotSingle(); DecelerateXY val9 = new DecelerateXY(); Tk2dPlayAnimationWithEvents val10 = new Tk2dPlayAnimationWithEvents(); SetVelocityByScale val11 = new SetVelocityByScale { gameObject = gameObject, speed = FsmFloat.op_Implicit(-140f), ySpeed = FsmFloat.op_Implicit(0f), everyFrame = false }; FsmState state = FsmUtil.GetState(_control, "Counter Stance"); if (state != null) { FsmStateAction[] actions = state.Actions; foreach (FsmStateAction val12 in actions) { Wait val13 = (Wait)(object)((val12 is Wait) ? val12 : null); if (val13 != null) { val13.time = FsmFloat.op_Implicit(0.5f); } } } FsmState val14 = null; FsmState[] fsmStates = _control.FsmStates; foreach (FsmState val15 in fsmStates) { if (val15 != null && val15.Name == "Stab 4") { val14 = val15; } if (val15 != null && val15.Name == "Stab 5") { FsmStateAction[] actions2 = val15.Actions; foreach (FsmStateAction val16 in actions2) { SetVelocityByScale val17 = (SetVelocityByScale)(object)((val16 is SetVelocityByScale) ? val16 : null); if (val17 != null) { val17.speed = FsmFloat.op_Implicit(-300f); } ActivateGameObject val18 = (ActivateGameObject)(object)((val16 is ActivateGameObject) ? val16 : null); if (val18 != null) { val7 = val18; } AudioPlayerOneShotSingle val19 = (AudioPlayerOneShotSingle)(object)((val16 is AudioPlayerOneShotSingle) ? val16 : null); if (val19 != null) { val8 = val19; } DecelerateXY val20 = (DecelerateXY)(object)((val16 is DecelerateXY) ? val16 : null); if (val20 != null) { val9 = val20; } Tk2dPlayAnimationWithEvents val21 = (Tk2dPlayAnimationWithEvents)(object)((val16 is Tk2dPlayAnimationWithEvents) ? val16 : null); if (val21 != null) { val10 = val21; } } } Tk2dPlayAnimationWithEvents val22 = new Tk2dPlayAnimationWithEvents { gameObject = gameObject, clipName = FsmString.op_Implicit("Stab 1"), animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") }; val6.Actions = (FsmStateAction[])(object)new FsmStateAction[5] { (FsmStateAction)val10, (FsmStateActi