using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Linq; using System.Reflection; using System.Resources; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using System.Threading.Tasks; using BepInEx; using BepInEx.Configuration; using BepInEx.Logging; using HarmonyLib; using HutongGames.PlayMaker; using HutongGames.PlayMaker.Actions; using Microsoft.CodeAnalysis; using PrepatcherPlugin; using SilkenSisters.Behaviors; using SilkenSisters.Patches; using SilkenSisters.Utils; using Silksong.AssetHelper.ManagedAssets; using Silksong.DataManager; using Silksong.FsmUtil; using Silksong.UnityHelper.Extensions; using TeamCherry.Localization; using UnityEngine; using UnityEngine.Events; using UnityEngine.SceneManagement; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("SilkenSisters")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyFileVersion("0.4.8.0")] [assembly: AssemblyInformationalVersion("0.4.8+4b0373c527f73c742463082f40fde772d3b48c4f")] [assembly: AssemblyProduct("SilkenSisters")] [assembly: AssemblyTitle("SilkenSisters")] [assembly: AssemblyMetadata("RepositoryUrl", "https://github.com/al3ks1s/SilkenSisters")] [assembly: NeutralResourcesLanguage("EN")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("0.4.8.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] 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")] [Microsoft.CodeAnalysis.Embedded] 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")] [Microsoft.CodeAnalysis.Embedded] internal sealed class PatcherAutoPluginAttribute : Attribute { public PatcherAutoPluginAttribute(string? id = null, string? name = null, string? version = null) { } } } namespace Microsoft.CodeAnalysis { [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace SilkenSisters { public class SaveData { public bool laceMourned { get; set; } } [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInPlugin("io.github.al3ks1s.silkensisters", "SilkenSisters", "0.4.8")] public class SilkenSisters : BaseUnityPlugin, ISaveDataMod, IRawSaveDataMod { [CompilerGenerated] private sealed class d__33 : IEnumerator, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public SilkenSisters <>4__this; object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public d__33(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_002e: Expected O, but got Unknown int num = <>1__state; SilkenSisters silkenSisters = <>4__this; switch (num) { default: return false; case 0: <>1__state = -1; <>2__current = (object)new WaitForSeconds(10f); <>1__state = 1; return true; case 1: <>1__state = -1; silkenSisters._langagepatches = Harmony.CreateAndPatchAll(typeof(Language_Get_Patch), (string)null); 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 d__39 : IEnumerator, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public SilkenSisters <>4__this; object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public d__39(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_0127: Unknown result type (might be due to invalid IL or missing references) //IL_020c: Unknown result type (might be due to invalid IL or missing references) //IL_0216: Expected O, but got Unknown //IL_01bf: Unknown result type (might be due to invalid IL or missing references) int num = <>1__state; SilkenSisters silkenSisters = <>4__this; switch (num) { default: return false; case 0: <>1__state = -1; <>2__current = ((MonoBehaviour)silkenSisters).StartCoroutine(silkenSisters.assetManager.CacheObjects()); <>1__state = 1; return true; case 1: <>1__state = -1; if (!isMemory() && canSetupMemoryFight()) { Log.LogDebug((object)"[preloadOrgan] Is not memory and all requirements met, setting things up"); silkenSisters.setupDeepMemoryZone(); } else if (!isMemory() && canSetupNormalFight()) { Log.LogDebug((object)"[preloadOrgan] Setting up normal fight"); silkenSisters.setupNormalFight(); } else { Log.LogDebug((object)$"[preloadOrgan] Scene info: canSetup?:{canSetupMemoryFight()}, isMemory?:{isMemory()}"); if (!isMemory() && !canSetupMemoryFight() && !canSetupNormalFight()) { Log.LogDebug((object)"[preloadOrgan] Displaying the info prompt"); silkenSisters.infoPromptInstance = ManagedAssetExtensions.InstantiateAsset(silkenSisters.assetManager.sceneCache, "infoPromptCache"); silkenSisters.infoPromptInstance.AddComponent(); silkenSisters.infoPromptInstance.SetActive(true); } } if (PlayerDataAccess.defeatedPhantom) { silkenSisters.phantomBossScene = UnityExtensions.FindGameObject(SceneManager.GetActiveScene(), "Boss Scene"); GameObject obj = UnityExtensions.FindChild(instance.phantomBossScene, "Return Mask"); GameObject val2 = UnityExtensions.FindChild(instance.phantomBossScene, "Return Mask/Death Pin"); Extensions.SetPosition3D(obj.transform, 84.4431f, 107.719f, 3.5096f); Extensions.SetRotationZ(obj.transform, 2.1319f); Extensions.SetPosition3D(val2.transform, 83.7081f, 107.4613f, 3.5106f); Extensions.SetRotationZ(val2.transform, 239.2857f); } if (canSetupLaceInteraction()) { silkenSisters.phantomBossScene = UnityExtensions.FindGameObject(SceneManager.GetActiveScene(), "Boss Scene"); silkenSisters.laceNPCInstance = ManagedAssetExtensions.InstantiateAsset(silkenSisters.assetManager.sceneCache, "laceNPCCache"); silkenSisters.laceNPCInstance.AddComponent(); silkenSisters.laceNPCInstance.SetActive(true); } <>2__current = (object)new WaitForSeconds(0.2f); <>1__state = 2; return true; case 2: { <>1__state = -1; GameObject val = GameObject.Find("Deep Memory Enter Black(Clone)"); if ((Object)(object)val != (Object)null) { Log.LogDebug((object)"[preloadOrgan] Deleting leftover memory effect"); Object.Destroy((Object)(object)val); } val = GameObject.Find("Deep Memory Pre Enter Effect(Clone)"); if ((Object)(object)val != (Object)null) { Extensions.SetPosition2D(val.transform, -100f, -100f); } return false; } } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } public static SilkenSisters instance; private SaveData _saveData = new SaveData(); internal AssetManager assetManager = new AssetManager(); internal SilkenSistersConfig configManager = new SilkenSistersConfig(); public FsmState ExitMemoryCache; public GameObject silkflies; public GameObject laceNPCInstance; public FsmOwnerDefault laceNPCFSMOwner; public GameObject laceBossInstance; public GameObject laceBossSceneInstance; public FsmOwnerDefault laceBossFSMOwner; public FsmOwnerDefault phantomBossFSMOwner; public GameObject challengeDialogInstance; public GameObject wakeupPointInstance; public GameObject respawnPointInstance; public GameObject deepMemoryInstance; public GameObject infoPromptInstance; public GameObject syncedFightSwapLeverInstance; public GameObject phantomBossScene; public FsmOwnerDefault phantomBossSceneFSMOwner; public static GameObject hornet; public static FsmOwnerDefault hornetFSMOwner; public static ConstrainPosition hornetConstrain; internal static ManualLogSource Log; internal Harmony _utilitypatches; internal Harmony _langagepatches; internal Harmony _encounterpatches; internal Harmony _debugatches; public const string Id = "io.github.al3ks1s.silkensisters"; public SaveData SaveData { get { return _saveData; } [param: AllowNull] set { _saveData = value ?? new SaveData(); } } public static string Name => "SilkenSisters"; public static string Version => "0.4.8"; private void Awake() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0015: Expected O, but got Unknown instance = this; Log = new ManualLogSource("SilkenSisters"); Logger.Sources.Add((ILogSource)(object)Log); configManager.BindConfig(((BaseUnityPlugin)this).Config); assetManager.RequestAssets(); SceneManager.sceneLoaded += onSceneLoaded; _encounterpatches = Harmony.CreateAndPatchAll(typeof(EncounterPatches), (string)null); _utilitypatches = Harmony.CreateAndPatchAll(typeof(UtilityPatches), (string)null); ((MonoBehaviour)this).StartCoroutine(WaitAndPatch()); Log.LogMessage((object)"Plugin loaded and initialized"); } private void OnDestroy() { clearInstances(); assetManager.ClearCache(); _langagepatches.UnpatchSelf(); _encounterpatches.UnpatchSelf(); _utilitypatches.UnpatchSelf(); } [IteratorStateMachine(typeof(d__33))] private IEnumerator WaitAndPatch() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new d__33(0) { <>4__this = this }; } public static bool canSetupLaceInteraction() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_007a: Unknown result type (might be due to invalid IL or missing references) //IL_007f: Unknown result type (might be due to invalid IL or missing references) ManualLogSource log = Log; string[] obj = new string[6] { "[CanSetupLaceInteraction] Scene:", null, null, null, null, null }; Scene activeScene = SceneManager.GetActiveScene(); obj[1] = ((Scene)(ref activeScene)).name; obj[2] = " "; obj[3] = $"DefeatedLace2:{PlayerDataAccess.defeatedLaceTower} "; obj[4] = $"DefeatedPhantom:{PlayerDataAccess.defeatedPhantom} "; obj[5] = $"Act3:{PlayerDataAccess.blackThreadWorld}"; log.LogDebug((object)string.Concat(obj)); activeScene = SceneManager.GetActiveScene(); if (((Scene)(ref activeScene)).name == "Organ_01" && !PlayerDataAccess.defeatedLaceTower && PlayerDataAccess.defeatedPhantom && !PlayerDataAccess.blackThreadWorld && !instance.SaveData.laceMourned) { return false; } return false; } public static bool canSetupMemoryFight() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_0091: Unknown result type (might be due to invalid IL or missing references) //IL_0096: Unknown result type (might be due to invalid IL or missing references) ManualLogSource log = Log; string[] obj = new string[7] { "[CanSetup] Scene:", null, null, null, null, null, null }; Scene activeScene = SceneManager.GetActiveScene(); obj[1] = ((Scene)(ref activeScene)).name; obj[2] = " "; obj[3] = $"DefeatedLace2:{PlayerDataAccess.defeatedLaceTower} "; obj[4] = $"DefeatedPhantom:{PlayerDataAccess.defeatedPhantom} "; obj[5] = $"Act3:{PlayerDataAccess.blackThreadWorld} "; obj[6] = $"Needolin:{PlayerDataAccess.hasNeedolinMemoryPowerup}"; log.LogDebug((object)string.Concat(obj)); activeScene = SceneManager.GetActiveScene(); if (((Scene)(ref activeScene)).name == "Organ_01" && PlayerDataAccess.defeatedLaceTower && PlayerDataAccess.defeatedPhantom && PlayerDataAccess.blackThreadWorld) { return PlayerDataAccess.hasNeedolinMemoryPowerup; } return false; } public static bool canSetupNormalFight() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_0091: Unknown result type (might be due to invalid IL or missing references) //IL_0096: Unknown result type (might be due to invalid IL or missing references) ManualLogSource log = Log; string[] obj = new string[7] { "[CanSetup] Scene:", null, null, null, null, null, null }; Scene activeScene = SceneManager.GetActiveScene(); obj[1] = ((Scene)(ref activeScene)).name; obj[2] = " "; obj[3] = $"DefeatedLace1:{PlayerDataAccess.defeatedLace1} "; obj[4] = $"DefeatedLace2:{PlayerDataAccess.defeatedLaceTower} "; obj[5] = $"DefeatedPhantom:{PlayerDataAccess.defeatedPhantom} "; obj[6] = $"Act3:{PlayerDataAccess.blackThreadWorld}"; log.LogDebug((object)string.Concat(obj)); activeScene = SceneManager.GetActiveScene(); if (((Scene)(ref activeScene)).name == "Organ_01" && !PlayerDataAccess.defeatedLace1 && !PlayerDataAccess.defeatedLaceTower && !PlayerDataAccess.defeatedPhantom) { return !PlayerDataAccess.blackThreadWorld; } return false; } public static bool isMemory() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_007a: Unknown result type (might be due to invalid IL or missing references) //IL_007f: Unknown result type (might be due to invalid IL or missing references) ManualLogSource log = Log; string[] obj = new string[6] { "[isMemory] Scene:", null, null, null, null, null }; Scene activeScene = SceneManager.GetActiveScene(); obj[1] = ((Scene)(ref activeScene)).name; obj[2] = " "; obj[3] = $"DefeatedPhantom:{PlayerDataAccess.defeatedPhantom} "; obj[4] = $"Act3:{PlayerDataAccess.blackThreadWorld} "; obj[5] = $"Needolin:{PlayerDataAccess.hasNeedolinMemoryPowerup}"; log.LogDebug((object)string.Concat(obj)); activeScene = SceneManager.GetActiveScene(); if (((Scene)(ref activeScene)).name == "Organ_01" && !PlayerDataAccess.defeatedPhantom && !PlayerDataAccess.blackThreadWorld) { return PlayerDataAccess.hasNeedolinMemoryPowerup; } return false; } private void onSceneLoaded(Scene scene, LoadSceneMode mode) { //IL_0011: Unknown result type (might be due to invalid IL or missing references) Log.LogDebug((object)$"[onSceneLoaded] Scene loaded : {((Scene)(ref scene)).name}, active scene : {SceneManager.GetActiveScene()}, Path:{((Scene)(ref scene)).path}"); if (((Scene)(ref scene)).name == "Organ_01") { Log.LogDebug((object)"[onSceneLoaded] Organ Detected, preloading"); FindHornet(); ((MonoBehaviour)this).StartCoroutine(preloadOrgan()); } else { Log.LogDebug((object)"[onSceneLoaded] Scene is not organ, clearing instances"); clearInstances(); } if (((Scene)(ref scene)).name == "Quit_To_Menu") { PlayerDataVariableEvents.OnGetBool -= PrepatcherUtils.SilkenSisterMonitor; clearInstances(); assetManager.ClearCache(); } } [IteratorStateMachine(typeof(d__39))] private IEnumerator preloadOrgan() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new d__39(0) { <>4__this = this }; } private void clearInstances() { laceNPCInstance = null; laceNPCFSMOwner = null; silkflies = null; laceBossInstance = null; laceBossSceneInstance = null; laceBossFSMOwner = null; challengeDialogInstance = null; deepMemoryInstance = null; phantomBossScene = null; phantomBossSceneFSMOwner = null; phantomBossFSMOwner = null; infoPromptInstance = null; syncedFightSwapLeverInstance = null; if ((Object)(object)wakeupPointInstance != (Object)null) { Object.Destroy((Object)(object)wakeupPointInstance); wakeupPointInstance = null; } if ((Object)(object)respawnPointInstance != (Object)null) { Object.Destroy((Object)(object)respawnPointInstance); respawnPointInstance = null; } } public void setupNormalFight() { //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_003f: Unknown result type (might be due to invalid IL or missing references) //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_0055: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Expected O, but got Unknown //IL_0062: 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_0082: Unknown result type (might be due to invalid IL or missing references) //IL_008e: Expected O, but got Unknown //IL_00c6: Unknown result type (might be due to invalid IL or missing references) //IL_0122: Unknown result type (might be due to invalid IL or missing references) //IL_0127: Unknown result type (might be due to invalid IL or missing references) //IL_0138: Unknown result type (might be due to invalid IL or missing references) //IL_0144: Expected O, but got Unknown Log.LogDebug((object)"[setupFight] Trying to register phantom"); phantomBossScene = UnityExtensions.FindGameObject(SceneManager.GetActiveScene(), "Boss Scene"); Log.LogDebug((object)$"[setupFight] {phantomBossScene}"); phantomBossSceneFSMOwner = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(phantomBossScene), OwnerOption = (OwnerDefaultOption)1 }; phantomBossFSMOwner = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(UnityExtensions.FindChild(phantomBossScene, "Phantom")), OwnerOption = (OwnerDefaultOption)1 }; laceBossSceneInstance = ManagedAssetExtensions.InstantiateAsset(assetManager.sceneCache, "lace1BossSceneCache"); Component[] components = laceBossSceneInstance.GetComponents(typeof(DeactivateIfPlayerdataTrue)); for (int i = 0; i < components.Length; i++) { ((Behaviour)(DeactivateIfPlayerdataTrue)components[i]).enabled = false; } laceBossSceneInstance.AddComponent(); laceBossSceneInstance.SetActive(true); laceBossInstance = UnityExtensions.FindChild(laceBossSceneInstance, "Lace Boss1"); laceBossInstance.SetActive(false); laceBossInstance.AddComponent(); laceBossFSMOwner = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(laceBossInstance), OwnerOption = (OwnerDefaultOption)1 }; laceNPCInstance = ManagedAssetExtensions.InstantiateAsset(assetManager.sceneCache, "laceNPCCache"); laceNPCInstance.AddComponent(); laceNPCInstance.SetActive(true); Log.LogDebug((object)$"[setupFight] Trying to set up phantom : phantom available? {(Object)(object)phantomBossScene != (Object)null}"); phantomBossScene.AddComponent(); UnityExtensions.FindChild(phantomBossScene, "Phantom").AddComponent(); } public void setupMemoryFight() { //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_003f: Unknown result type (might be due to invalid IL or missing references) //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_0055: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Expected O, but got Unknown //IL_0062: 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_0082: Unknown result type (might be due to invalid IL or missing references) //IL_008e: Expected O, but got Unknown //IL_0137: Unknown result type (might be due to invalid IL or missing references) //IL_0143: Unknown result type (might be due to invalid IL or missing references) //IL_0148: 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_0165: Expected O, but got Unknown Log.LogDebug((object)"[setupFight] Trying to register phantom"); phantomBossScene = UnityExtensions.FindGameObject(SceneManager.GetActiveScene(), "Boss Scene"); Log.LogDebug((object)$"[setupFight] {phantomBossScene}"); phantomBossSceneFSMOwner = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(phantomBossScene), OwnerOption = (OwnerDefaultOption)1 }; phantomBossFSMOwner = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(UnityExtensions.FindChild(phantomBossScene, "Phantom")), OwnerOption = (OwnerDefaultOption)1 }; challengeDialogInstance = ManagedAssetExtensions.InstantiateAsset(assetManager.sceneCache, "challengeDialogCache"); challengeDialogInstance.AddComponent(); challengeDialogInstance.SetActive(true); laceBossSceneInstance = ManagedAssetExtensions.InstantiateAsset(assetManager.sceneCache, "lace2BossSceneCache"); laceBossSceneInstance.AddComponent(); laceBossSceneInstance.SetActive(true); laceBossInstance = UnityExtensions.FindChild(laceBossSceneInstance, "Lace Boss2 New"); laceBossInstance.SetActive(false); laceBossInstance.AddComponent(); ((Behaviour)(DeactivateIfPlayerdataTrue)laceBossInstance.GetComponent(typeof(DeactivateIfPlayerdataTrue))).enabled = false; laceBossFSMOwner = new FsmOwnerDefault { gameObject = FsmGameObject.op_Implicit(laceBossInstance), OwnerOption = (OwnerDefaultOption)1 }; laceBossInstance.SetActive(true); laceNPCInstance = ManagedAssetExtensions.InstantiateAsset(assetManager.sceneCache, "laceNPCCache"); laceNPCInstance.AddComponent(); laceNPCInstance.SetActive(true); Log.LogDebug((object)$"[setupFight] Trying to set up phantom : phantom available? {(Object)(object)phantomBossScene != (Object)null}"); Log.LogDebug((object)$"[setupFight] {phantomBossScene}"); phantomBossScene.AddComponent(); UnityExtensions.FindChild(phantomBossScene, "Phantom").AddComponent(); phantomBossScene.AddComponent(); } private void setupDeepMemoryZone() { Log.LogDebug((object)$"{PlayerDataAccess.defeatedCoralKing}, {PlayerDataAccess.defeatedCoralKing}"); deepMemoryInstance = ManagedAssetExtensions.InstantiateAsset(assetManager.sceneCache, "deepMemoryCache"); deepMemoryInstance.SetActive(false); deepMemoryInstance.AddComponent(); deepMemoryInstance.GetComponent().playerDataTest.TestGroups[0].Tests[0].FieldName = "defeatedPhantom"; deepMemoryInstance.GetComponent().playerDataTest.TestGroups[0].Tests[0].BoolValue = false; deepMemoryInstance.SetActive(true); if ((Object)(object)wakeupPointInstance == (Object)null) { Log.LogDebug((object)"[setupDeepMemoryZone] Setting up memory wake point"); wakeupPointInstance = ManagedAssetExtensions.InstantiateAsset(assetManager.sceneCache, "wakeupPointCache"); wakeupPointInstance.SetActive(false); wakeupPointInstance.AddComponent(); Object.DontDestroyOnLoad((Object)(object)wakeupPointInstance); } if ((Object)(object)respawnPointInstance == (Object)null) { Log.LogDebug((object)"[setupDeepMemoryZone] Setting respawn point"); UnityExtensions.FindChild(deepMemoryInstance, "door_wakeOnGround"); respawnPointInstance = Object.Instantiate(UnityExtensions.FindChild(deepMemoryInstance, "door_wakeOnGround")); respawnPointInstance.SetActive(false); respawnPointInstance.AddComponent(); Object.DontDestroyOnLoad((Object)(object)respawnPointInstance); } syncedFightSwapLeverInstance = ManagedAssetExtensions.InstantiateAsset(assetManager.sceneCache, "syncedFightSwapLeverCache"); syncedFightSwapLeverInstance.AddComponent(); } public void FindHornet() { //IL_003f: Unknown result type (might be due to invalid IL or missing references) //IL_0049: Expected O, but got Unknown if (!((Object)(object)hornet == (Object)null) || !((Object)(object)HeroController.instance != (Object)null)) { return; } hornet = ((Component)HeroController.instance).gameObject; if ((Object)(object)hornet != (Object)null) { hornetFSMOwner = new FsmOwnerDefault(); hornetFSMOwner.OwnerOption = (OwnerDefaultOption)1; hornetFSMOwner.GameObject = FsmGameObject.op_Implicit(hornet); if ((Object)(object)hornet.GetComponent() == (Object)null) { hornetConstrain = hornet.AddComponent(); hornetConstrain.SetXMax(96.727f); hornetConstrain.SetXMin(72.323f); hornetConstrain.constrainX = true; hornetConstrain.constrainY = false; ((Behaviour)hornetConstrain).enabled = false; } } } private void Update() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0053: Unknown result type (might be due to invalid IL or missing references) //IL_0058: Unknown result type (might be due to invalid IL or missing references) if (Input.GetKey(configManager.modifierKey.Value) && Input.GetKeyDown((KeyCode)121)) { PlayerDataAccess.defeatedPhantom = true; PlayerDataAccess.defeatedLaceTower = true; PlayerDataAccess.blackThreadWorld = true; PlayerDataAccess.hasNeedolinMemoryPowerup = true; ManualLogSource log = Log; string[] obj = new string[7] { "[CanSetup] Scene:", null, null, null, null, null, null }; Scene activeScene = SceneManager.GetActiveScene(); obj[1] = ((Scene)(ref activeScene)).name; obj[2] = " "; obj[3] = $"DefeatedLace2:{PlayerDataAccess.defeatedLaceTower} "; obj[4] = $"DefeatedPhantom:{PlayerDataAccess.defeatedPhantom} "; obj[5] = $"Act3:{PlayerDataAccess.blackThreadWorld} "; obj[6] = $"Needolin:{PlayerDataAccess.hasNeedolinMemoryPowerup}"; log.LogWarning((object)string.Concat(obj)); } } [Conditional("DEBUG")] private void CheckDebugKeybinds() { //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_007d: Unknown result type (might be due to invalid IL or missing references) //IL_00c3: Unknown result type (might be due to invalid IL or missing references) //IL_0109: Unknown result type (might be due to invalid IL or missing references) //IL_014f: 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_01db: Unknown result type (might be due to invalid IL or missing references) //IL_0221: Unknown result type (might be due to invalid IL or missing references) //IL_0267: Unknown result type (might be due to invalid IL or missing references) //IL_02ad: 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_032f: Unknown result type (might be due to invalid IL or missing references) //IL_036b: Unknown result type (might be due to invalid IL or missing references) //IL_03a7: Unknown result type (might be due to invalid IL or missing references) //IL_03e3: Unknown result type (might be due to invalid IL or missing references) //IL_041f: Unknown result type (might be due to invalid IL or missing references) //IL_045b: Unknown result type (might be due to invalid IL or missing references) //IL_0497: Unknown result type (might be due to invalid IL or missing references) //IL_04d3: Unknown result type (might be due to invalid IL or missing references) //IL_050f: Unknown result type (might be due to invalid IL or missing references) //IL_0594: Unknown result type (might be due to invalid IL or missing references) //IL_054b: Unknown result type (might be due to invalid IL or missing references) //IL_05d7: Unknown result type (might be due to invalid IL or missing references) //IL_060b: Unknown result type (might be due to invalid IL or missing references) //IL_05c2: Unknown result type (might be due to invalid IL or missing references) //IL_0649: Unknown result type (might be due to invalid IL or missing references) //IL_06a5: Unknown result type (might be due to invalid IL or missing references) //IL_0714: Unknown result type (might be due to invalid IL or missing references) //IL_078e: Unknown result type (might be due to invalid IL or missing references) //IL_08a0: Unknown result type (might be due to invalid IL or missing references) //IL_07ea: Unknown result type (might be due to invalid IL or missing references) //IL_07ef: Unknown result type (might be due to invalid IL or missing references) //IL_08f4: Unknown result type (might be due to invalid IL or missing references) //IL_08f9: Unknown result type (might be due to invalid IL or missing references) if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)256)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("Phase Parry Bait"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)257)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("Phase Defense Parry"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)258)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("Evade Antic"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)259)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("Run To Lace"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)260)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("Parry Antic"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)261)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("G Throw Antic"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)262)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("Set A Throw"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)263)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("A Throw Aim"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)264)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("Normal Dragoon"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)265)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("Dragoon Rage"); } if (Input.GetKey((KeyCode)306) && Input.GetKeyDown((KeyCode)270)) { ((PlayMakerFSM)UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent(typeof(PlayMakerFSM))).SetState("Phase Antic"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)256)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("Charge Antic"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)257)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("J Slash Antic"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)258)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("Evade"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)259)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("Counter Antic"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)260)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("ComboSlash 1"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)261)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("CrossSlash Aim"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)262)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("Tele Out"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)263)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("Hop To Phantom"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)264)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("Tele Out Defense"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)265)) { ((PlayMakerFSM)laceBossInstance.GetComponent(typeof(PlayMakerFSM))).SetState("Tele Out Bait"); } if (Input.GetKey((KeyCode)305) && Input.GetKeyDown((KeyCode)112)) { FsmUtil.GetFsm(laceNPCInstance, "Control").SetState("Lock Hornet"); } if (Input.GetKey(configManager.modifierKey.Value) && Input.GetKeyDown((KeyCode)104)) { hornet.transform.position = new Vector3(90.45f, 105f, 0.004f); } if (Input.GetKey(configManager.modifierKey.Value) && Input.GetKeyDown((KeyCode)259)) { laceBossInstance.GetComponent().hp = 1; } if (Input.GetKey(configManager.modifierKey.Value) && Input.GetKeyDown((KeyCode)257)) { UnityExtensions.FindChild(phantomBossScene, "Phantom").GetComponent().hp = 1; } if (Input.GetKey(configManager.modifierKey.Value) && Input.GetKeyDown((KeyCode)111)) { PlayerDataVariableEvents.OnGetBool += PrepatcherUtils.SilkenSisterMonitor; SceneManager.LoadSceneAsync("Organ_01", (LoadSceneMode)0).completed += delegate { //IL_002a: Unknown result type (might be due to invalid IL or missing references) GameManager._instance.ForceCurrentSceneIsMemory(true); setupMemoryFight(); hornet.transform.position = new Vector3(90.45f, 105f, 0.004f); }; } if (Input.GetKey(configManager.modifierKey.Value) && Input.GetKeyDown((KeyCode)117)) { PlayerData.instance.defeatedPhantom = true; PlayerData.instance.blackThreadWorld = true; HeroController.instance.RefillSilkToMaxSilent(); SceneManager.LoadSceneAsync("Organ_01", (LoadSceneMode)0).completed += delegate { }; } if (Input.GetKey(configManager.modifierKey.Value) && Input.GetKeyDown((KeyCode)107)) { PlayerData.instance.defeatedPhantom = true; PlayerData.instance.blackThreadWorld = false; PlayerData.instance.defeatedLaceTower = false; HeroController.instance.RefillSilkToMaxSilent(); SceneManager.LoadSceneAsync("Organ_01", (LoadSceneMode)0).completed += delegate { }; } Scene activeScene; if (Input.GetKey(configManager.modifierKey.Value) && Input.GetKeyDown((KeyCode)112)) { PlayerData.instance.defeatedPhantom = true; PlayerData.instance.defeatedLaceTower = true; PlayerData.instance.blackThreadWorld = true; PlayerData.instance.hasNeedolinMemoryPowerup = true; ManualLogSource log = Log; string[] obj = new string[7] { "[CanSetup] Scene:", null, null, null, null, null, null }; activeScene = SceneManager.GetActiveScene(); obj[1] = ((Scene)(ref activeScene)).name; obj[2] = " "; obj[3] = $"DefeatedLace2:{PlayerDataAccess.defeatedLaceTower} "; obj[4] = $"DefeatedPhantom:{PlayerDataAccess.defeatedPhantom} "; obj[5] = $"Act3:{PlayerDataAccess.blackThreadWorld} "; obj[6] = $"Needolin:{PlayerDataAccess.hasNeedolinMemoryPowerup}"; log.LogWarning((object)string.Concat(obj)); SceneManager.LoadSceneAsync("Organ_01", (LoadSceneMode)0).completed += delegate { }; } if (Input.GetKey(configManager.modifierKey.Value) && Input.GetKeyDown((KeyCode)108)) { PlayerDataAccess.defeatedPhantom = false; PlayerDataAccess.defeatedLace1 = false; PlayerDataAccess.defeatedLaceTower = false; PlayerDataAccess.blackThreadWorld = false; PlayerDataAccess.hasNeedolinMemoryPowerup = false; PlayerDataAccess.encounteredLace1 = false; ManualLogSource log2 = Log; string[] obj2 = new string[6] { "[CanSetup] Scene:", null, null, null, null, null }; activeScene = SceneManager.GetActiveScene(); obj2[1] = ((Scene)(ref activeScene)).name; obj2[2] = " "; obj2[3] = $"DefeatedLace2:{PlayerDataAccess.defeatedLaceTower} "; obj2[4] = $"DefeatedPhantom:{PlayerDataAccess.defeatedPhantom} "; obj2[5] = $"Act3:{PlayerDataAccess.blackThreadWorld}"; log2.LogWarning((object)string.Concat(obj2)); SceneManager.LoadSceneAsync("Organ_01", (LoadSceneMode)0).completed += delegate { }; } } } } namespace SilkenSisters.Utils { internal class AssetManager { [CompilerGenerated] private sealed class d__5 : IEnumerator, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public AssetManager <>4__this; object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public d__5(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { int num = <>1__state; AssetManager assetManager = <>4__this; switch (num) { default: return false; case 0: <>1__state = -1; <>2__current = assetManager.sceneCache.Load(); <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = assetManager.audioClipCache.Load(); <>1__state = 2; return true; case 2: <>1__state = -1; <>2__current = assetManager.prefabCache.Load(); <>1__state = 3; return true; case 3: <>1__state = -1; <>2__current = assetManager.audioClipTableCache.Load(); <>1__state = 4; return true; case 4: { <>1__state = -1; GameObject obj = ManagedAssetExtensions.InstantiateAsset(assetManager.sceneCache, "coralBossSceneCache"); PlayMakerFSM fsmPreprocessed = FsmUtil.GetFsmPreprocessed(obj, "Control"); SilkenSisters.instance.ExitMemoryCache = FsmUtil.GetState(fsmPreprocessed, "Exit Memory"); Object.Destroy((Object)(object)obj); 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(); } } internal ManagedAssetGroup sceneCache; internal ManagedAssetGroup audioClipCache; internal ManagedAssetGroup prefabCache; internal ManagedAssetGroup audioClipTableCache; internal void RequestAssets() { sceneCache = ManagedAssetGroup.RequestAndCreate(new Dictionary> { { "laceNPCCache", new SceneAssetInfo("Coral_19", "Encounter Scene Control/Lace Meet/Lace NPC Blasted Bridge") }, { "lace2BossSceneCache", new SceneAssetInfo("Song_Tower_01", "Boss Scene") }, { "lace1BossSceneCache", new SceneAssetInfo("Bone_East_12", "Boss Scene") }, { "silkfliesCache", new SceneAssetInfo("Bone_East_12", "Boss Scene/Silkflies") }, { "syncedFightSwapLeverCache", new SceneAssetInfo("Bone_East_12", "dock_pipe_trapdoor") }, { "challengeDialogCache", new SceneAssetInfo("Cradle_03", "Boss Scene/Intro Sequence") }, { "wakeupPointCache", new SceneAssetInfo("Memory_Coral_Tower", "Door Get Up") }, { "coralBossSceneCache", new SceneAssetInfo("Memory_Coral_Tower", "Boss Scene") }, { "deepMemoryCache", new SceneAssetInfo("Coral_Tower_01", "Memory Group") }, { "infoPromptCache", new SceneAssetInfo("Arborium_01", "Inspect Region") } }, (Dictionary>)null); audioClipCache = ManagedAssetGroup.RequestAndCreate((Dictionary>)null, new Dictionary> { { "phantomSing", new NonSceneAssetInfo("sfxstatic_assets_areaorgan", "Assets/Audio/HornetVoices/Phantom/NewTake/Phantom-2-Sing.wav") }, { "laceSpeak", new NonSceneAssetInfo("sfxstatic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/Lace_weak_talk_01.wav") }, { "laceSpeak2", new NonSceneAssetInfo("sfxstatic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/Lace_talk_haughty_04.wav") }, { "laceScoff", new NonSceneAssetInfo("sfxstatic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/Lace_short_attack_grunt_03.wav") }, { "laceWail", new NonSceneAssetInfo("sfxstatic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/Lace_wail_short_02.wav") }, { "laceLaugh", new NonSceneAssetInfo("sfxstatic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/Lace_long_laugh_04.wav") }, { "laceStance", new NonSceneAssetInfo("sfxstatic_assets_laceboss", "Assets/Audio/SFX/HornetEnemy/Lace/lace_prepare_stance.wav") }, { "laceBackstep", new NonSceneAssetInfo("sfxstatic_assets_laceboss", "Assets/Audio/SFX/HornetEnemy/Lace/lace_back_or_forward_step_2.wav") }, { "laceCharge", new NonSceneAssetInfo("sfxstatic_assets_laceboss", "Assets/Audio/SFX/HornetEnemy/Lace/lace_horizontal_dash.wav") }, { "laceWake", new NonSceneAssetInfo("sfxstatic_assets_shared", "Assets/Audio/SFX/HornetEnemy/Trobbio/trobbio_jump.wav") }, { "laceTeleOut", new NonSceneAssetInfo("sfxstatic_assets_areasong", "Assets/Audio/SFX/Enemy/Bosses/Mantis Lords/mantis_lord_misc_jump_2.wav") }, { "laceTeleIn", new NonSceneAssetInfo("sfxstatic_assets_areaclover", "Assets/Audio/SFX/HornetEnemy/grasshopper_slasher_dash_1.wav") }, { "hornetSword", new NonSceneAssetInfo("sfxstatic_assets_shared", "Assets/Audio/SFX/sword_5.wav") }, { "hornetParry", new NonSceneAssetInfo("sfxstatic_assets_shared", "Assets/Audio/SFX/Enemy/Bosses/Hornet/hornet_parry_prepare.wav") }, { "miscRumble", new NonSceneAssetInfo("sfxstatic_assets_shared", "Assets/Audio/SFX/Props/misc_rumble_impact.wav") }, { "focusReady", new NonSceneAssetInfo("herosfxstatic_assets_all", "Assets/Audio/SFX/Heroes/Knight/focus_ready.wav") } }); prefabCache = ManagedAssetGroup.RequestAndCreate((Dictionary>)null, new Dictionary> { { "AudioPlayerActor", new NonSceneAssetInfo("globalpoolprefabs_assets_all", "Assets/Audio/Audio Player Actor.prefab") } }); audioClipTableCache = ManagedAssetGroup.RequestAndCreate((Dictionary>)null, new Dictionary> { { "LaceWail", new NonSceneAssetInfo("sfxdynamic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/Lace_wail_short.asset") }, { "LaceGrunt", new NonSceneAssetInfo("sfxdynamic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/lace_grunt.asset") }, { "LaceWeakTalk", new NonSceneAssetInfo("sfxdynamic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/Lace_defeated_talk_final.asset") }, { "LaceSpeak", new NonSceneAssetInfo("sfxdynamic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/lace_battle_admonish.asset") }, { "LaceAttack", new NonSceneAssetInfo("sfxdynamic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/lace_attack_call.asset") }, { "LaceCollapse", new NonSceneAssetInfo("sfxdynamic_assets_laceboss", "Assets/Audio/Voices/Lace_Silksong/Lace_after_battle_collapse.asset") }, { "HornetSpeak", new NonSceneAssetInfo("herodynamic_assets_all", "Assets/Audio/Voices/Hornet_Silksong/Hornet Voice Action Grunt.asset") } }); SilkenSisters.Log.LogInfo((object)"Requested stuff"); } [IteratorStateMachine(typeof(d__5))] internal IEnumerator CacheObjects() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new d__5(0) { <>4__this = this }; } internal void ClearCache() { sceneCache.Unload(); audioClipCache.Unload(); prefabCache.Unload(); } } internal class PrepatcherUtils { internal static bool SilkenSisterMonitor(PlayerData pd, string fieldName, bool current) { if (fieldName == "defeatedPhantom" || fieldName == "blackThreadWorld") { return false; } return current; } } internal class SilkenSistersConfig { internal ConfigEntry modifierKey; internal ConfigEntry actionKey; internal ConfigEntry syncWaitTime; internal ConfigEntry syncDelay; internal ConfigEntry syncGatherDistance; internal ConfigEntry syncTeleDistance; internal ConfigEntry syncRangeDistance; internal ConfigEntry MaxHP; internal ConfigEntry P2HP; internal ConfigEntry P3HP; internal ConfigEntry ParryCooldown; internal ConfigEntry ParryBaitDistance; internal ConfigEntry DefenseParryDistance; public ConfigEntry syncedFight; internal void BindConfig(ConfigFile Config) { modifierKey = Config.Bind("Keybinds", "Modifier", (KeyCode)308, "Modifier"); syncedFight = Config.Bind("General", "SyncedFight", false, "Use the Synced patterns for the boss fights. Playtest version"); syncWaitTime = Config.Bind("Sync fight", "Idle time", 1.5f, "Debug config for defining how long they will wait for each other to finish their actions"); syncDelay = Config.Bind("Sync fight", "Delay time", 0.5f, "Debug config for defining how the anti-synchronous actions will be delayed"); syncGatherDistance = Config.Bind("Sync fight", "Gather Distance", 1.75f, "Debug config for defining how close lace and phantom must be for attacking"); syncTeleDistance = Config.Bind("Sync fight", "Tele Distance", 8f, "Debug Config that defines how far lace and phantom must be for teleportation move."); syncRangeDistance = Config.Bind("Sync fight", "Range Distance", 6f, "Debug Config that defines the checking distance between the siblings and hornet."); MaxHP = Config.Bind("Sync fight", "Max HP", 1500, "Debug Config that defines max pooled HP."); P2HP = Config.Bind("Sync fight", "P2 HP", 1100, "Debug Config that defines pooled hp p2 shift."); P3HP = Config.Bind("Sync fight", "P3 HP", 600, "Debug Config that defines pooled hp p3 shift."); ParryCooldown = Config.Bind("Sync fight", "Parry CoolDown", 3, "Debug Config that defines the number of attacks between each parry attempt."); ParryBaitDistance = Config.Bind("Sync fight", "Parry Bait Distance", 3f, "Debug Config that defines the distance at which they tp for parrybait."); DefenseParryDistance = Config.Bind("Sync fight", "Defense Parry Distance", 2f, "Debug Config that defines the distance at which they tp for defend parry."); } } } namespace SilkenSisters.Patches { internal class DebugPatches { [Conditional("DEBUG")] public static void CreateDebugPatch() { } [Conditional("DEBUG")] public static void RemoveDebugPatch() { if (SilkenSisters.instance._utilitypatches != null) { SilkenSisters.instance._utilitypatches.UnpatchSelf(); } } [HarmonyPrefix] [HarmonyPatch(typeof(FsmState), "OnEnter")] private static void setStateListener(FsmState __instance) { if (((Object)__instance.Fsm.GameObject).name == "Lace Boss2 New") { _ = __instance.Fsm.Name == "Control"; } if (((Object)__instance.Fsm.GameObject).name == "Boss Scene" && __instance.Fsm.Name == "Silken Sisters Sync Control") { SilkenSisters.Log.LogDebug((object)("[StateListen] " + __instance.Name)); } if (0 == 0 || (!(((Object)__instance.Fsm.GameObject).name == $"{SilkenSisters.instance.deepMemoryInstance}") && !(((Object)__instance.Fsm.GameObject).name == "before") && !(((Object)__instance.Fsm.GameObject).name == "thread_memory"))) { return; } SilkenSisters.Log.LogDebug((object)(((Object)__instance.Fsm.GameObject).name + ", " + __instance.fsm.name + ", Entering state " + __instance.Name)); if (__instance.Actions.Length != 0) { FsmTransition[] transitions = __instance.transitions; foreach (FsmTransition val in transitions) { SilkenSisters.Log.LogDebug((object)(" transitions for state " + __instance.Name + ": " + val.EventName + " to " + val.toState)); } FsmStateAction[] actions = __instance.Actions; foreach (FsmStateAction val2 in actions) { SilkenSisters.Log.LogDebug((object)$" Action for state {__instance.Name}: {((object)val2).GetType()}"); } } } } internal class EncounterPatches { [HarmonyPrefix] [HarmonyPatch(typeof(FsmState), "OnEnter")] private static void PatchLaceEncounter(FsmState __instance) { //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0033: Unknown result type (might be due to invalid IL or missing references) if (((Object)__instance.Fsm.GameObject).name == "Lace Encounter Control" && __instance.Name == "Init") { Scene activeScene = SceneManager.GetActiveScene(); if (((Scene)(ref activeScene)).name == "Dust_01") { FsmUtil.DisableAction(__instance.fsm, "Check", 3); } } } } [HarmonyPatch(typeof(Language), "Get")] [HarmonyPatch(new Type[] { typeof(string), typeof(string) })] public static class Language_Get_Patch { private static void Prefix(ref string key, ref string sheetTitle) { if (key.Contains("SILKEN_SISTERS")) { sheetTitle = "Mods.io.github.al3ks1s.silkensisters"; } if (key.Contains("SILKEN_SISTERS_SUB") && SilkenSisters.instance.configManager.syncedFight.Value && SilkenSisters.isMemory()) { key = "SILKEN_SISTERS_SUB_DEBUG"; } } } internal class UtilityPatches { [HarmonyPrefix] [HarmonyPatch(typeof(HeroController), "Die")] private static void setDeathListener(HeroController __instance, ref bool nonLethal, ref bool frostDeath) { SilkenSisters.Log.LogDebug((object)$"[DeathListener] Hornet died / isMemory? Mod:{SilkenSisters.isMemory()} Scene:{GameManager.instance.IsMemoryScene()}"); if (SilkenSisters.isMemory() && GameManager.instance.IsMemoryScene()) { SilkenSisters.Log.LogDebug((object)"[DeathListener] Hornet died in memory, removing the Prepatcher hook"); PlayerDataVariableEvents.OnGetBool -= PrepatcherUtils.SilkenSisterMonitor; } if ((Object)(object)SilkenSisters.hornetConstrain != (Object)null) { ((Behaviour)SilkenSisters.hornetConstrain).enabled = false; } } } } namespace SilkenSisters.Behaviors { internal class ChallengeRegion : MonoBehaviour { private GameObject _challengeRegion; private PlayMakerFSM _regionControl; private PlayMakerFSM _control; private void Awake() { Setup(); } private async Task Setup() { SilkenSisters.Log.LogDebug((object)"[ChallengeRegion.Setup] Finished setting up ChallengeRegion"); getComponents(); setPositions(); disableCradleStuff(); setPhantomTrigger(); setGarama(); SilkenSisters.Log.LogDebug((object)"[ChallengeRegion.Setup] Finished setting up ChallengeRegion"); } private void getComponents() { _challengeRegion = UnityExtensions.FindChild(((Component)this).gameObject, "Challenge Region"); _regionControl = FsmUtil.GetFsmPreprocessed(_challengeRegion, "Challenge"); _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "First Challenge"); } private void setPositions() { //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_003e: Unknown result type (might be due to invalid IL or missing references) //IL_005d: Unknown result type (might be due to invalid IL or missing references) //IL_0072: Unknown result type (might be due to invalid IL or missing references) ((Component)this).gameObject.transform.position = new Vector3(84.45f, 105.8935f, 2.504f); _challengeRegion.transform.localPosition = new Vector3(-0.2145f, 1.1139f, 2.4959f); SilkenSisters.Log.LogDebug((object)$"[ChallengeRegion.setPositions] Dialog position:{((Component)this).gameObject.transform.position}, RegionPosition:{_challengeRegion.transform.localPosition}"); } private void disableCradleStuff() { UnityExtensions.FindChild(((Component)this).gameObject, "Challenge Glows/Cradle__0013_loom_strut_based (2)").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Challenge Glows/Cradle__0013_loom_strut_based (3)").SetActive(false); FsmUtil.GetTransition(_control, "Idle", "CHALLENGE START").FsmEvent = FsmEvent.GetFsmEvent("QUICK START"); SilkenSisters.Log.LogDebug((object)("[ChallengeRegion.disableCradleStuff] Cradle specific objects active?: " + string.Format("CradleLoom1:{0}, ", UnityExtensions.FindChild(((Component)this).gameObject, "Challenge Glows/Cradle__0013_loom_strut_based (2)").activeSelf) + string.Format("CradleLoom2:{0}", UnityExtensions.FindChild(((Component)this).gameObject, "Challenge Glows/Cradle__0013_loom_strut_based (3)").activeSelf))); } private void setPhantomTrigger() { //IL_000f: Unknown result type (might be due to invalid IL or missing references) //IL_0015: Expected O, but got Unknown //IL_0035: Unknown result type (might be due to invalid IL or missing references) //IL_003b: Expected O, but got Unknown //IL_004d: Unknown result type (might be due to invalid IL or missing references) //IL_0081: Unknown result type (might be due to invalid IL or missing references) SilkenSisters.Log.LogDebug((object)"[ChallengeRegion.setPhantomTrigger] Setting battle trigger"); SendEventByName val = new SendEventByName(); val.sendEvent = FsmString.op_Implicit("ENTER"); val.delay = FsmFloat.op_Implicit(0f); FsmEventTarget val2 = new FsmEventTarget(); val2.gameObject = SilkenSisters.instance.phantomBossSceneFSMOwner; val2.target = (EventTarget)1; val.eventTarget = val2; FsmUtil.AddAction(_regionControl, "Challenge Complete", (FsmStateAction)(object)val); FsmUtil.GetAction(_regionControl, "Straight Back?", 1).gameObject.ownerOption = (OwnerDefaultOption)0; } private void setGarama() { PlayMakerFSM val = SilkenSisters.hornet.GetComponents().First((PlayMakerFSM f) => f.FsmName == "Silk Specials"); FsmUtil.DisableAction(_regionControl, "Hornet Voice", 0); FsmUtil.AddAction(_regionControl, "Hornet Voice", FsmUtil.GetStateAction(val, "Standard", 0)); } } internal class DeepMemory : MonoBehaviour { private PlayMakerFSM _control; private GameObject _before; private void Awake() { Setup(); } private async Task Setup() { try { SilkenSisters.Log.LogDebug((object)"[DeepMemory.Setup] Started setting deep memory up"); getComponents(); setPosition(); disableCrustKingObjects(); editFSMTransition(); editPlayerData(); bypassToolPickup(); manageTransitionGates(); SilkenSisters.Log.LogDebug((object)"[DeepMemory.Setup] Done"); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void getComponents() { _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "To Memory"); _before = UnityExtensions.FindChild(((Component)this).gameObject, "before"); } private void setPosition() { //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_0073: Unknown result type (might be due to invalid IL or missing references) ((Component)this).gameObject.transform.position = new Vector3(59.249f, 56.7457f, -3.1141f); UnityExtensions.FindChild(_before, "Deep_Memory_appear/threads").SetActive(false); Extensions.SetLocalPosition2D(UnityExtensions.FindChild(_before, "thread_memory").transform, 1.768f, -3.143f); SilkenSisters.Log.LogDebug((object)$"[DeepMemory.setPosition] position:{((Component)this).gameObject.transform.position}"); } private void disableCrustKingObjects() { SilkenSisters.Log.LogDebug((object)"[DeepMemory.disableCrustKingObjects] Finding and deleting coral king sprite"); Object.Destroy((Object)(object)UnityExtensions.FindChild(_before, "CK_ground_hit0004").gameObject); } private void editFSMTransition() { FsmUtil.GetAction(_control, "Transition Scene", 4).sceneName = FsmString.op_Implicit("Organ_01"); FsmUtil.GetAction(_control, "Transition Scene", 4).entryGateName = FsmString.op_Implicit("door_wakeInMemory_phantom"); SilkenSisters.Log.LogDebug((object)("[DeepMemory.editFSMTransition] " + string.Format("Scene:{0}, ", FsmUtil.GetAction(_control, "Transition Scene", 4).sceneName) + string.Format("Gate:{0}", FsmUtil.GetAction(_control, "Transition Scene", 4).entryGateName))); } private void editPlayerData() { FsmUtil.InsertMethod(_control, "Transition Scene", (Action)HookPlayerData, 0, false); } private void bypassToolPickup() { FsmUtil.GetTransition(FsmUtil.GetFsmPreprocessed(_before, "activate memory on tool pickup"), "State 1", "PICKED UP").fsmEvent = FsmEvent.GetFsmEvent("FINISHED"); } private void manageTransitionGates() { FsmUtil.AddMethod(_control, "Transition Scene", (Action)disableRespawn, false); FsmUtil.InsertMethod(_control, "Transition Scene", (Action)enableDoor, 0, false); } private void enableDoor() { SilkenSisters.instance.wakeupPointInstance.SetActive(true); SilkenSisters.Log.LogDebug((object)$"[DeepMemory.enableDoor] Door active?:{SilkenSisters.instance.wakeupPointInstance.activeSelf}"); } private void disableRespawn() { SilkenSisters.instance.respawnPointInstance.SetActive(false); SilkenSisters.instance.respawnPointInstance.GetComponent().fsm.SetState("Pause"); SilkenSisters.Log.LogDebug((object)$"[DeepMemory.disableRespawn] Respawn active?:{SilkenSisters.instance.respawnPointInstance.activeSelf}, Current state:{SilkenSisters.instance.respawnPointInstance.GetComponent().ActiveStateName}"); } private void HookPlayerData() { PlayerDataVariableEvents.OnGetBool += PrepatcherUtils.SilkenSisterMonitor; } } internal class WakeUpMemory : MonoBehaviour { private GameObject _wakeTransitionGate; private PlayMakerFSM _control; private void Awake() { Setup(); } private async Task Setup() { try { SilkenSisters.Log.LogDebug((object)"[WakeUpMemory.Setup] Started setting wakeup transition up"); getComponents(); setName(); setPosition(); editFSM(); SilkenSisters.Log.LogDebug((object)"[WakeUpMemory.Setup] Finished"); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void getComponents() { _wakeTransitionGate = UnityExtensions.FindChild(((Component)this).gameObject, "door_wakeInMemory"); _control = FsmUtil.GetFsmPreprocessed(_wakeTransitionGate, "Wake Up"); } private void setName() { ((Object)_wakeTransitionGate).name = "door_wakeInMemory_phantom"; SilkenSisters.Log.LogDebug((object)("[WakeUpMemory.setName] gateName:" + ((Object)_wakeTransitionGate).name)); } private void setPosition() { //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) ((Component)this).gameObject.transform.position = new Vector3(115.4518f, 104.5621f, 0f); SilkenSisters.Log.LogDebug((object)$"[WakeUpMemory.setPosition] gatePosition:{((Component)this).gameObject.transform.position}"); } private void editFSM() { SilkenSisters.Log.LogDebug((object)"[WakeUpMemory.editFSM] Editing the door FSM"); FsmUtil.AddMethod(_control, "Take Control", (Action)enableRespawn, false); FsmUtil.AddMethod(_control, "Take Control", (Action)enableIsMemory, false); FsmUtil.AddMethod(_control, "Take Control", (Action)recordHeroState, false); FsmUtil.AddMethod(_control, "Take Control", (Action)SilkenSisters.instance.setupMemoryFight, false); FsmUtil.AddMethod(_control, "End", (Action)disableSelf, false); FsmUtil.AddMethod(_control, "End", (Action)closeOffOrgan, false); FsmUtil.GetAction(_control, "Fade Up", 1).falseValue = FsmFloat.op_Implicit(3f); FsmUtil.GetAction(_control, "Fade Up", 1).trueValue = FsmFloat.op_Implicit(3f); } private void enableIsMemory() { GameManager._instance.ForceCurrentSceneIsMemory(true); SilkenSisters.Log.LogDebug((object)$"[WakeUpMemory.enableIsMemory] Is Memory? {GameManager._instance.IsMemoryScene()} {GameManager._instance.forceCurrentSceneMemory}"); } private void enableRespawn() { SilkenSisters.instance.respawnPointInstance.SetActive(true); SilkenSisters.Log.LogDebug((object)$"[WakeUpMemory.enableRespawn] respawnObject active:{SilkenSisters.instance.respawnPointInstance.activeSelf}"); } private void disableSelf() { ((Component)this).gameObject.SetActive(false); } private void closeOffOrgan() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) GameObject obj = UnityExtensions.FindGameObject(SceneManager.GetActiveScene(), "Boss Scene/Gates/Battle Gate (1)"); Extensions.SetPosition3D(Object.Instantiate(obj).transform, 45.4916f, 71.6012f, 0.003f); Extensions.SetPosition3D(Object.Instantiate(obj).transform, 67.0862f, 8.5155f, 0.003f); } private void recordHeroState() { //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Unknown result type (might be due to invalid IL or missing references) HeroController.instance.RefillSilkToMaxSilent(); PlayerData.instance.PreMemoryState = HeroItemsState.Record(HeroController.instance); PlayerData.instance.HasStoredMemoryState = true; PlayerData.instance.CaptureToolAmountsOverride(); } } internal class WakeUpRespawn : MonoBehaviour { private PlayMakerFSM _control; private void Awake() { Setup(); } private async Task Setup() { try { SilkenSisters.Log.LogDebug((object)"[WakeUpRespawn.Setup] Started setting WakeUpRespawn up"); getComponents(); setName(); setPosition(); editFSM(); SilkenSisters.Log.LogDebug((object)"[WakeUpRespawn.Setup] Finished"); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void getComponents() { _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Wake Up"); } private void setName() { ((Object)((Component)this).gameObject).name = "door_wakeOnGround_phantom"; SilkenSisters.Log.LogDebug((object)("[WakeUpRespawn.setName] gateName:" + ((Object)((Component)this).gameObject).name)); } private void setPosition() { //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) ((Component)this).gameObject.transform.position = new Vector3(59.249f, 56.7457f, 0f); SilkenSisters.Log.LogDebug((object)$"[WakeUpRespawn.setPosition] gatePosition:{((Component)this).gameObject.transform.position}"); } private void editFSM() { FsmUtil.DisableAction(FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Wake Up"), "Save?", 1); FsmUtil.AddMethod(_control, "Fade Up", (Action)restoreHeroState, false); FsmUtil.AddMethod(_control, "End", (Action)disableDoor, false); FsmUtil.AddMethod(_control, "End", (Action)disableSelf, false); } private void disableDoor() { SilkenSisters.Log.LogDebug((object)"[WakeUpRespawn.disableDoor] Trying to disable door"); SilkenSisters.instance.wakeupPointInstance.SetActive(false); SilkenSisters.instance.wakeupPointInstance.GetComponent().fsm.Reinitialize(); UnityExtensions.FindChild(SilkenSisters.instance.wakeupPointInstance, "door_wakeInMemory_phantom").GetComponent().fsm.SetState("Pause"); SilkenSisters.Log.LogDebug((object)$"[WakeUpRespawn.disableDoor] Door {((Object)SilkenSisters.instance.wakeupPointInstance).name} enabled?:{SilkenSisters.instance.wakeupPointInstance.activeSelf}"); } private void disableSelf() { ((Component)this).gameObject.SetActive(false); SilkenSisters.Log.LogDebug((object)$"[WakeUpRespawn.disableSelf] {((Component)this).gameObject.activeSelf}"); } private void restoreHeroState() { if (PlayerData.instance.HasStoredMemoryState) { HeroController.instance.ClearEffectsInstant(); ((HeroItemsState)(ref PlayerData.instance.PreMemoryState)).Apply(HeroController.instance); PlayerData.instance.HasStoredMemoryState = false; PlayerData.instance.ClearToolAmountsOverride(); } } } internal class FightSelectionLever : MonoBehaviour { private GameObject infoPrompt; private BasicNPC promptnpc; private void Awake() { Setup(); } private async Task Setup() { ((Component)this).gameObject.transform.position = new Vector3(60.9817f, 51.961f, 1.8055f); Extensions.SetRotationZ(((Component)this).gameObject.transform, 320.1306f); UnityExtensions.FindChild(((Component)this).gameObject, "Platform").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Enviro Region Simple (2)").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Hero Detector Close").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Hero Detector Scene Enter").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "axel").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Levers/Lever Bottom").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Levers/Lever Top").GetComponent().OnHit.AddListener(new UnityAction(FlipSync)); UnityExtensions.FindChild(((Component)this).gameObject, "Levers/Lever Top").GetComponent().OnHit.AddListener(new UnityAction(DisablePrompt)); UnityExtensions.FindChild(((Component)this).gameObject, "Levers/Lever Top").GetComponent().OnHitDelayed.AddListener(new UnityAction(SetLeverText)); addInfo(); } private void addInfo() { //IL_0070: Unknown result type (might be due to invalid IL or missing references) //IL_009e: Unknown result type (might be due to invalid IL or missing references) infoPrompt = ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.sceneCache, "infoPromptCache"); promptnpc = infoPrompt.GetComponent(); infoPrompt.transform.SetParent(UnityExtensions.FindChild(((Component)this).gameObject, "Levers/Lever Top/Lever").transform, true); infoPrompt.transform.position = new Vector3(62.6255f, 53.961f, 1.8055f); UnityExtensions.FindChild(infoPrompt, "Prompt Marker").transform.position = new Vector3(62.6255f, 56.4146f, 2.0055f); SetLeverText(); } private void SetLeverText() { promptnpc.talkText[0].Sheet = "Mods.io.github.al3ks1s.silkensisters"; if (SilkenSisters.instance.configManager.syncedFight.Value) { promptnpc.talkText[0].Key = "SILKEN_SISTERS_SYNC_FIGHT_ON"; } else { promptnpc.talkText[0].Key = "SILKEN_SISTERS_SYNC_FIGHT_OFF"; } infoPrompt.SetActive(true); } private void DisablePrompt() { infoPrompt.SetActive(false); } private void FlipSync() { SilkenSisters.instance.configManager.syncedFight.Value = !SilkenSisters.instance.configManager.syncedFight.Value; } } internal class InfoPrompt : MonoBehaviour { private BasicNPC _npc; private void Awake() { Setup(); } private async Task Setup() { try { SilkenSisters.Log.LogDebug((object)"[ChallengeRegion.Setup] Started setting up info prompt"); getComponents(); setPosition(); setText(); SilkenSisters.Log.LogDebug((object)"[ChallengeRegion.Setup] Finished setting up info prompt"); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void getComponents() { _npc = ((Component)this).GetComponent(); } private void setPosition() { //IL_001a: Unknown result type (might be due to invalid IL or missing references) ((Component)this).gameObject.transform.position = new Vector3(59.8327f, 54.3406f, 0.006f); } private void setText() { _npc.talkText[0].Sheet = "Mods.io.github.al3ks1s.silkensisters"; _npc.talkText[0].Key = "SILKEN_SISTERS_INFOPROMPT"; SilkenSisters.Log.LogDebug((object)Language.Get("SILKEN_SISTERS_INFOPROMPT", "Mods.io.github.al3ks1s.silkensisters")); } } internal class Lace1 : MonoBehaviour { private PlayMakerFSM _control; private HealthManager _healthManager; private void Awake() { Setup(); } private async Task Setup() { try { SilkenSisters.Log.LogDebug((object)"[Lace1.Setup] Started setting up Lace"); getComponents(); buffHealth(); editPositionConstraint(); rerouteState(); fixActionsPositions(); disableTitleCard(); setLaceFacing(); DisableMusic(); PrepareCorpse(); SilkenSisters.Log.LogDebug((object)"[Lace1.Setup] Finished setting up Lace"); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void getComponents() { //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) ((Component)this).gameObject.transform.position = new Vector3(78.2832f, 104.5677f, 0.004f); SilkenSisters.Log.LogDebug((object)$"[Lace1.getComponents] position:{((Component)this).gameObject.transform.position}"); _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Control"); _healthManager = ((Component)this).gameObject.GetComponent(); } private void buffHealth() { ((Component)this).gameObject.GetComponent().initHp = 600; ((Component)this).gameObject.GetComponent().hp = 600; FsmUtil.GetIntVariable(_control, "Rage HP").value = 300; } private void editPositionConstraint() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Expected O, but got Unknown ConstrainPosition val = (ConstrainPosition)((Component)this).gameObject.GetComponent(typeof(ConstrainPosition)); val.SetXMin(72.4f); val.SetXMax(96.52f); val.SetYMin(104f); val.constrainX = true; val.constrainY = true; SilkenSisters.Log.LogDebug((object)("[Lace1.editPositionConstraint] Constraints: " + $"MinX:{val.xMin}" + $"MaxX:{val.xMax}" + $"MinY:{val.yMin}")); } private void rerouteState() { FsmUtil.ChangeTransition(_control, "Encountered?", "MEET", "Refight"); FsmUtil.AddTransition(_control, "Dormant", "BATTLE START REFIGHT", "Encountered?"); FsmUtil.AddTransition(_control, "Dormant", "BATTLE START FIRST", "Encountered?"); FsmUtil.ChangeTransition(_control, "Start Battle", "FINISHED", "Idle"); SilkenSisters.Log.LogDebug((object)("[Lace1.rerouteState] \n Encountered:Meet -> " + FsmUtil.GetTransition(_control, "Encountered?", "MEET").ToState)); } private void fixActionsPositions() { SilkenSisters.Log.LogDebug((object)"Fix floor heights"); FsmUtil.GetAction(_control, "Downstab Land", 1).lowerValue = FsmFloat.op_Implicit(73f); FsmUtil.GetAction(_control, "Downstab Land", 1).upperValue = FsmFloat.op_Implicit(96f); SilkenSisters.Log.LogDebug((object)string.Format("[Lace1.fixActionsPositions] Downstab Land Pos: min:{0}, max:{1}", FsmUtil.GetAction(_control, "Downstab Land", 1).lowerValue, FsmUtil.GetAction(_control, "Downstab Land", 1).upperValue)); FsmUtil.GetAction(_control, "Dstab Constrain?", 1).lowerValue = FsmFloat.op_Implicit(73f); FsmUtil.GetAction(_control, "Dstab Constrain?", 1).upperValue = FsmFloat.op_Implicit(96f); SilkenSisters.Log.LogDebug((object)string.Format("[Lace1.fixActionsPositions] CrossSlash Pos: min:{0}, max:{1}", FsmUtil.GetAction(_control, "Dstab Constrain?", 1).lowerValue, FsmUtil.GetAction(_control, "Dstab Constrain?", 1).upperValue)); FsmUtil.FindFloatVariable(_control, "Land Y").Value = 104.5677f; FsmUtil.FindFloatVariable(_control, "Centre X").Value = 84f; SilkenSisters.Log.LogDebug((object)("[Lace1.fixActionsPositions] Float vars: " + string.Format("Land Y: {0} ", FsmUtil.FindFloatVariable(_control, "Land Y").Value) + string.Format("Centre X: {0}", FsmUtil.FindFloatVariable(_control, "Centre X").Value))); } private void disableTitleCard() { SilkenSisters.Log.LogDebug((object)"[Lace1.disableTitleCard] Disabling title card"); FsmUtil.DisableAction(_control, "Start Battle", 3); SilkenSisters.Log.LogDebug((object)("[Lace1.disableTitleCard] " + string.Format("(Start Battle):{0}", FsmUtil.GetStateAction(_control, "Start Battle", 3).active))); } private void DisableMusic() { FsmUtil.DisableAction(_control, "Start Battle", 1); } private void setLaceFacing() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown //IL_00b0: Unknown result type (might be due to invalid IL or missing references) //IL_00b6: Expected O, but got Unknown FaceObjectV2 val = new FaceObjectV2(); val.spriteFacesRight = FsmBool.op_Implicit(true); val.playNewAnimation = false; val.newAnimationClip = FsmString.op_Implicit(""); val.resetFrame = false; val.everyFrame = false; val.pauseBetweenTurns = 0.5f; val.objectA = SilkenSisters.instance.laceBossFSMOwner; val.objectB = FsmGameObject.op_Implicit(SilkenSisters.hornet); FsmUtil.InsertAction(_control, "Init", (FsmStateAction)(object)val, 4); SilkenSisters.Log.LogDebug((object)string.Format("[Lace1.setLaceFacing] Facing Action:{0}", ((object)FsmUtil.GetStateAction(_control, "Init", 4)).GetType())); FsmUtil.DisableAction(_control, "Refight", 1); Tk2dPlayAnimation val2 = new Tk2dPlayAnimation(); val2.animLibName = FsmString.op_Implicit(""); val2.clipName = FsmString.op_Implicit("Idle"); val2.gameObject = SilkenSisters.instance.laceBossFSMOwner; FsmUtil.InsertAction(_control, "Dormant", 1, (FsmStateAction)(object)val2); SilkenSisters.Log.LogDebug((object)$"[Lace1.setLaceFacing] fsmowner:{val2.gameObject}"); } private void addDamageDelegate() { _healthManager.TookDamage += TransferDamage; } private void TransferDamage() { SilkenSisters.Log.LogDebug((object)$"Lace: {_healthManager.hp}"); SilkenSisters.Log.LogDebug((object)$"Lace: {_healthManager.lastHitInstance.DamageDealt}"); } private void PrepareCorpse() { //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_0078: Unknown result type (might be due to invalid IL or missing references) //IL_0084: Unknown result type (might be due to invalid IL or missing references) //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Unknown result type (might be due to invalid IL or missing references) //IL_0096: Expected O, but got Unknown //IL_009b: Expected O, but got Unknown //IL_00a1: Unknown result type (might be due to invalid IL or missing references) //IL_00a6: Unknown result type (might be due to invalid IL or missing references) //IL_00b6: Unknown result type (might be due to invalid IL or missing references) //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_00c8: Expected O, but got Unknown //IL_00c8: Unknown result type (might be due to invalid IL or missing references) //IL_00dd: Expected O, but got Unknown //IL_00ef: Unknown result type (might be due to invalid IL or missing references) //IL_00f4: Unknown result type (might be due to invalid IL or missing references) //IL_00f5: Unknown result type (might be due to invalid IL or missing references) //IL_00fa: Unknown result type (might be due to invalid IL or missing references) //IL_0106: Expected O, but got Unknown //IL_0106: Unknown result type (might be due to invalid IL or missing references) //IL_0107: Unknown result type (might be due to invalid IL or missing references) //IL_010c: Unknown result type (might be due to invalid IL or missing references) //IL_0121: Expected O, but got Unknown //IL_0121: Unknown result type (might be due to invalid IL or missing references) //IL_0131: Unknown result type (might be due to invalid IL or missing references) //IL_0138: Unknown result type (might be due to invalid IL or missing references) //IL_0144: Unknown result type (might be due to invalid IL or missing references) //IL_014b: Unknown result type (might be due to invalid IL or missing references) //IL_0152: Unknown result type (might be due to invalid IL or missing references) //IL_0162: Expected O, but got Unknown //IL_0168: Unknown result type (might be due to invalid IL or missing references) //IL_016d: Unknown result type (might be due to invalid IL or missing references) //IL_0189: Unknown result type (might be due to invalid IL or missing references) //IL_018a: Unknown result type (might be due to invalid IL or missing references) //IL_018f: 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) //IL_01ae: Expected O, but got Unknown //IL_01ae: Unknown result type (might be due to invalid IL or missing references) //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_01c0: Expected O, but got Unknown //IL_01c0: 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_01d2: Expected O, but got Unknown //IL_01d7: Expected O, but got Unknown //IL_01dd: Unknown result type (might be due to invalid IL or missing references) //IL_01e2: Unknown result type (might be due to invalid IL or missing references) //IL_01e3: Unknown result type (might be due to invalid IL or missing references) //IL_01e8: Unknown result type (might be due to invalid IL or missing references) //IL_01f4: Expected O, but got Unknown //IL_01f4: Unknown result type (might be due to invalid IL or missing references) //IL_01f5: Unknown result type (might be due to invalid IL or missing references) //IL_01fa: Unknown result type (might be due to invalid IL or missing references) //IL_020a: Unknown result type (might be due to invalid IL or missing references) //IL_0219: Expected O, but got Unknown //IL_0219: Unknown result type (might be due to invalid IL or missing references) //IL_0229: Unknown result type (might be due to invalid IL or missing references) //IL_0239: Unknown result type (might be due to invalid IL or missing references) //IL_024e: Expected O, but got Unknown //IL_0254: Unknown result type (might be due to invalid IL or missing references) //IL_0259: 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_026a: 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_027b: Expected O, but got Unknown //IL_027b: Unknown result type (might be due to invalid IL or missing references) //IL_0290: Expected O, but got Unknown //IL_02a2: Unknown result type (might be due to invalid IL or missing references) //IL_02a7: Unknown result type (might be due to invalid IL or missing references) //IL_02b7: Unknown result type (might be due to invalid IL or missing references) //IL_02b8: Unknown result type (might be due to invalid IL or missing references) //IL_02bd: Unknown result type (might be due to invalid IL or missing references) //IL_02c9: Expected O, but got Unknown //IL_02c9: Unknown result type (might be due to invalid IL or missing references) //IL_02de: Expected O, but got Unknown //IL_02e4: Unknown result type (might be due to invalid IL or missing references) //IL_02e9: Unknown result type (might be due to invalid IL or missing references) //IL_02f5: Unknown result type (might be due to invalid IL or missing references) //IL_02f6: Unknown result type (might be due to invalid IL or missing references) //IL_02fb: Unknown result type (might be due to invalid IL or missing references) //IL_0307: Expected O, but got Unknown //IL_030c: Expected O, but got Unknown //IL_0312: Unknown result type (might be due to invalid IL or missing references) //IL_0317: Unknown result type (might be due to invalid IL or missing references) //IL_0327: Unknown result type (might be due to invalid IL or missing references) //IL_033c: Expected O, but got Unknown //IL_034e: Unknown result type (might be due to invalid IL or missing references) //IL_0353: Unknown result type (might be due to invalid IL or missing references) //IL_0363: Unknown result type (might be due to invalid IL or missing references) //IL_0364: Unknown result type (might be due to invalid IL or missing references) //IL_0369: Unknown result type (might be due to invalid IL or missing references) //IL_0375: Expected O, but got Unknown //IL_0375: Unknown result type (might be due to invalid IL or missing references) //IL_038a: Expected O, but got Unknown SilkenSisters.Log.LogDebug((object)"Started setting corpse handler"); GameObject obj = UnityExtensions.FindChild(((Component)this).gameObject, "Corpse Lace1(Clone)"); PlayMakerFSM fsmPreprocessed = FsmUtil.GetFsmPreprocessed(obj, "Control"); obj.GetComponent().SetXMin(70f); FsmUtil.DisableAction(fsmPreprocessed, "Start", 1); FsmUtil.DisableAction(fsmPreprocessed, "Start", 2); FsmUtil.DisableAction(fsmPreprocessed, "Jump Away", 8); FsmUtil.AddState(fsmPreprocessed, "Tele Out"); FsmUtil.AddAction(fsmPreprocessed, "Tele Out", (FsmStateAction)new SetIsKinematic2d { isKinematic = FsmBool.op_Implicit(true), gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 } }); FsmUtil.AddAction(fsmPreprocessed, "Tele Out", (FsmStateAction)new Tk2dPlayAnimationWithEvents { clipName = FsmString.op_Implicit("Tele Out"), gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") }); FsmUtil.AddState(fsmPreprocessed, "Tele In"); FsmUtil.AddAction(fsmPreprocessed, "Tele In", (FsmStateAction)new FaceObjectV2 { objectA = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, objectB = new FsmGameObject { Value = GameObject.Find("Boss Scene/Gates/Battle Gate") }, newAnimationClip = FsmString.op_Implicit(""), playNewAnimation = false, spriteFacesRight = FsmBool.op_Implicit(true), resetFrame = false, everyFrame = false, pauseBetweenTurns = 0f }); FsmUtil.AddAction(fsmPreprocessed, "Tele In", (FsmStateAction)new PlayRandomAudioClipTable { Table = FsmUtil.GetAction(_control, "Lava Tele Out", 0).Table, SpawnPosition = new FsmVector3 { Value = new Vector3(0f, 0f, 0f) }, SpawnPoint = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, AudioPlayerPrefab = new FsmObject { Value = null } }); FsmUtil.AddAction(fsmPreprocessed, "Tele In", (FsmStateAction)new SetPosition { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, vector = new FsmVector3 { Value = new Vector3(81.9569f, 106.2943f, 2.7723f) }, x = FsmFloat.op_Implicit(81.9569f), y = FsmFloat.op_Implicit(107.0221f), z = FsmFloat.op_Implicit(2.7723f) }); FsmUtil.AddAction(fsmPreprocessed, "Tele In", (FsmStateAction)new Tk2dPlayAnimationWithEvents { clipName = FsmString.op_Implicit("Tele In"), gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") }); FsmUtil.AddState(fsmPreprocessed, "Ouchie"); FsmUtil.AddAction(fsmPreprocessed, "Ouchie", (FsmStateAction)new Tk2dPlayAnimation { clipName = FsmString.op_Implicit("Death Land Stun"), gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, animLibName = FsmString.op_Implicit("") }); FsmUtil.AddAction(fsmPreprocessed, "Ouchie", (FsmStateAction)new Tk2dPlayFrame { frame = FsmInt.op_Implicit(5), gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 } }); FsmUtil.AddAction(fsmPreprocessed, "Ouchie", (FsmStateAction)new Wait { finishEvent = FsmEvent.GetFsmEvent("FINISHED"), time = FsmFloat.op_Implicit(1f) }); FsmUtil.AddState(fsmPreprocessed, "Man that hurts"); FsmUtil.AddAction(fsmPreprocessed, "Man that hurts", (FsmStateAction)new Tk2dPlayAnimation { clipName = FsmString.op_Implicit("Death 1"), gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, animLibName = FsmString.op_Implicit("") }); FsmUtil.ChangeTransition(fsmPreprocessed, "Land", "FINISHED", "Tele Out"); FsmUtil.AddTransition(fsmPreprocessed, "Tele Out", "FINISHED", "Tele In"); FsmUtil.AddTransition(fsmPreprocessed, "Tele In", "FINISHED", "Ouchie"); FsmUtil.AddTransition(fsmPreprocessed, "Ouchie", "FINISHED", "Man that hurts"); FsmUtil.AddTransition(fsmPreprocessed, "Man that hurts", "LACE JUMP", "Jump Antic"); SilkenSisters.Log.LogDebug((object)"Finished setting up corpse handler"); } private void prepareSync() { } } internal class Lace1Scene : MonoBehaviour { private PlayMakerFSM _control; private void Awake() { Setup(); } private async Task Setup() { SilkenSisters.Log.LogDebug((object)"[Lace1Scene.Setup] Started setting Lace scene up"); getComponents(); disableSceneObjects(); moveSceneBounds(); fixWallRangeAlert(); SilkenSisters.Log.LogDebug((object)"[Lace1Scene.Setup] Finished setting Lace scene up"); } private void getComponents() { _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Control"); } private void disableSceneObjects() { SilkenSisters.Log.LogDebug((object)"[Lace1Scene.disableSceneObjects] Disabling unwanted LaceBossScene items"); UnityExtensions.FindChild(((Component)this).gameObject, "Slam Particles").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Battle Gates").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Silkflies").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Silkflies w/o Sprint").SetActive(false); } private void moveSceneBounds() { //IL_0033: Unknown result type (might be due to invalid IL or missing references) SilkenSisters.Log.LogDebug((object)"[Lace1Scene.moveSceneBounds] Moving lace arena objects"); UnityExtensions.FindChild(((Component)this).gameObject, "Arena Centre").transform.position = new Vector3(84.5f, 104f, 0f); } private void fixWallRangeAlert() { //IL_004a: 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_0089: Unknown result type (might be due to invalid IL or missing references) //IL_00a0: Unknown result type (might be due to invalid IL or missing references) //IL_00b7: Unknown result type (might be due to invalid IL or missing references) //IL_00ce: Unknown result type (might be due to invalid IL or missing references) //IL_00db: 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_0109: Unknown result type (might be due to invalid IL or missing references) GameObject val = UnityExtensions.FindChild(((Component)((Component)this).gameObject.transform.parent).gameObject, "Wall Range"); Extensions.SetPosition3D(val.transform, 84.0349f, 103.67f, 0f); SilkenSisters.Log.LogDebug((object)$"[Lace1.fixWallRangeAlert] position:{val.transform.position}"); BoxCollider2D[] components = val.GetComponents(); components[0].size = new Vector2(5f, 30f); ((Collider2D)components[0]).offset = new Vector2(-9f, 0.4726f); components[1].size = new Vector2(5f, 35.1782f); ((Collider2D)components[1]).offset = new Vector2(10f, 7.1234f); SilkenSisters.Log.LogDebug((object)$"[Lace1.fixWallRangeAlert] alertLeft: Size:{components[0].size}, Size:{((Collider2D)components[0]).offset}"); SilkenSisters.Log.LogDebug((object)$"[Lace1.fixWallRangeAlert] alertRight: Size:{components[1].size}, Size:{((Collider2D)components[1]).offset}"); } } internal class Lace2 : MonoBehaviour { private PlayMakerFSM _control; private HealthManager _healthManager; private void Awake() { Setup(); } private async Task Setup() { try { SilkenSisters.Log.LogDebug((object)"[Lace2.Setup] Started setting up Lace"); getComponents(); disableParticleEffects(); editPositionConstraint(); rerouteState(); fixActionsPositions(); disableTitleCard(); fixWallRangeAlert(); disableLaceMusic(); setLaceFacing(); addDamageDelegate(); PrepareCorpse(); prepareSync(); SilkenSisters.Log.LogDebug((object)$"Damage scaling: {_healthManager.damageScaling.Level1Mult} {_healthManager.damageScaling.Level2Mult} {_healthManager.damageScaling.Level3Mult} {_healthManager.damageScaling.Level4Mult} {_healthManager.damageScaling.Level5Mult} "); SilkenSisters.Log.LogDebug((object)"[Lace2.Setup] Finished setting up Lace"); ((Component)this).gameObject.SetActive(false); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void getComponents() { //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) ((Component)this).gameObject.transform.position = new Vector3(78.2832f, 104.5677f, 0.004f); SilkenSisters.Log.LogDebug((object)$"[Lace2.getComponents] position:{((Component)this).gameObject.transform.position}"); _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Control"); _healthManager = ((Component)this).gameObject.GetComponent(); _healthManager.damageScaling = UnityExtensions.FindChild(SilkenSisters.instance.phantomBossScene, "Phantom").GetComponent().damageScaling; } private void disableParticleEffects() { UnityExtensions.FindChild(((Component)this).gameObject, "Pt DashPetal").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Pt SkidPetal").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Pt RisingPetal").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Pt MovePetal").SetActive(false); } private void editPositionConstraint() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Expected O, but got Unknown ConstrainPosition val = (ConstrainPosition)((Component)this).gameObject.GetComponent(typeof(ConstrainPosition)); val.SetXMin(72.4f); val.SetXMax(96.52f); val.SetYMin(104f); val.constrainX = true; val.constrainY = true; SilkenSisters.Log.LogDebug((object)("[Lace2.editPositionConstraint] Constraints: " + $"MinX:{val.xMin}" + $"MaxX:{val.xMax}" + $"MinY:{val.yMin}")); } private void rerouteState() { //IL_0051: Unknown result type (might be due to invalid IL or missing references) FsmUtil.ChangeTransition(_control, "Init", "REFIGHT", "Start Battle Wait"); FsmUtil.ChangeTransition(_control, "Start Battle Wait", "BATTLE START REFIGHT", "Refight Engarde"); FsmUtil.ChangeTransition(_control, "Start Battle Wait", "BATTLE START FIRST", "Refight Engarde"); new Wait().time = FsmFloat.op_Implicit(2f); SilkenSisters.Log.LogDebug((object)("[Lace2.rerouteState] \n Init:REFIGHT -> " + FsmUtil.GetTransition(_control, "Init", "REFIGHT").ToState + " \n Start Battle Wait:BATTLE START REFIGHT -> " + FsmUtil.GetTransition(_control, "Start Battle Wait", "BATTLE START REFIGHT").ToState + "\n Start Battle Wait:BATTLE START FIRST -> " + FsmUtil.GetTransition(_control, "Start Battle Wait", "BATTLE START FIRST").ToState)); } private void fixActionsPositions() { SilkenSisters.Log.LogDebug((object)"Fix floor heights"); FsmUtil.GetAction(_control, "ComboSlash 1", 0).y = FsmFloat.op_Implicit(104.5677f); FsmUtil.GetAction(_control, "Charge Antic", 2).y = FsmFloat.op_Implicit(104.5677f); FsmUtil.GetAction(_control, "Counter Antic", 1).y = FsmFloat.op_Implicit(104.5677f); SilkenSisters.Log.LogDebug((object)("[Lace2.fixActionsPositions] Floor heights:\n" + string.Format(" ComboSlash 1: {0}\n", FsmUtil.GetAction(_control, "ComboSlash 1", 0).y) + string.Format(" Charge Antic: {0}\n", FsmUtil.GetAction(_control, "Charge Antic", 2).y) + string.Format(" Counter Antic {0}", FsmUtil.GetAction(_control, "Counter Antic", 1).y))); FsmUtil.GetAction(_control, "Counter TeleIn", 5).y = FsmFloat.op_Implicit(110f); SilkenSisters.Log.LogDebug((object)string.Format("[Lace2.fixActionsPositions] TeleHeight: {0}", FsmUtil.GetAction(_control, "Counter TeleIn", 5).y)); FsmUtil.GetAction(_control, "Counter TeleIn", 4).minValue = FsmFloat.op_Implicit(73f); FsmUtil.GetAction(_control, "Counter TeleIn", 4).maxValue = FsmFloat.op_Implicit(96f); SilkenSisters.Log.LogDebug((object)string.Format("[Lace2.fixActionsPositions] TeleXClamp: min:{0}, max:{1}", FsmUtil.GetAction(_control, "Counter TeleIn", 4).minValue, FsmUtil.GetAction(_control, "Counter TeleIn", 4).maxValue)); FsmUtil.FindFloatVariable(_control, "Tele Out Floor").Value = 103f; FsmUtil.GetAction(_control, "Tele In", 6).minValue = FsmFloat.op_Implicit(73f); FsmUtil.GetAction(_control, "Tele In", 6).maxValue = FsmFloat.op_Implicit(96f); FsmUtil.GetAction(_control, "Tele In", 7).y = FsmFloat.op_Implicit(104.5677f); FsmUtil.GetAction(_control, "Set CrossSlash Pos", 1).minValue = FsmFloat.op_Implicit(73f); FsmUtil.GetAction(_control, "Set CrossSlash Pos", 1).maxValue = FsmFloat.op_Implicit(96f); SilkenSisters.Log.LogDebug((object)string.Format("[Lace2.fixActionsPositions] CrossSlash Pos: min:{0}, max:{1}", FsmUtil.GetAction(_control, "Set CrossSlash Pos", 1).minValue, FsmUtil.GetAction(_control, "Set CrossSlash Pos", 1).maxValue)); FsmUtil.FindFloatVariable(_control, "Land Y").Value = 104.5677f; FsmUtil.FindFloatVariable(_control, "Arena Plat Bot Y").Value = 102f; FsmUtil.FindFloatVariable(_control, "Centre X").Value = 84f; SilkenSisters.Log.LogDebug((object)("[Lace2.fixActionsPositions] Float vars: " + string.Format("Land Y: {0} ", FsmUtil.FindFloatVariable(_control, "Land Y").Value) + string.Format("Arena Plat Bot Y: {0} ", FsmUtil.FindFloatVariable(_control, "Arena Plat Bot Y").Value) + string.Format("Centre X: {0}", FsmUtil.FindFloatVariable(_control, "Centre X").Value))); FsmUtil.GetAction(_control, "Force R?", 2).compareTo = FsmFloat.op_Implicit(73f); FsmUtil.GetAction(_control, "Force L?", 1).compareTo = FsmFloat.op_Implicit(96f); SilkenSisters.Log.LogDebug((object)string.Format("[Lace2.fixActionsPositions] Lace Dstab bounds: Left:{0}, Right:{1}", FsmUtil.GetAction(_control, "Force R?", 2).compareTo, FsmUtil.GetAction(_control, "Force L?", 1).compareTo)); FsmUtil.GetAction(_control, "CrossSlash Aim", 10); FsmUtil.FindFloatVariable(_control, "Bomb Max X").Value = 96f; FsmUtil.FindFloatVariable(_control, "Bomb Min X").Value = 72f; FsmUtil.FindFloatVariable(_control, "Bomb Max Y").Value = 115f; FsmUtil.FindFloatVariable(_control, "Bomb Min Y").Value = 105f; } private void disableTitleCard() { SilkenSisters.Log.LogDebug((object)"[Lace2.disableTitleCard] Disabling title card"); FsmUtil.DisableAction(_control, "Start Battle Refight", 4); FsmUtil.DisableAction(_control, "Start Battle", 4); SilkenSisters.Log.LogDebug((object)("[Lace2.disableTitleCard] " + string.Format("(Start Battle Refight):{0}, ", FsmUtil.GetStateAction(_control, "Start Battle Refight", 4).active) + string.Format("(Start Battle):{0}", FsmUtil.GetStateAction(_control, "Start Battle", 4).active))); } private void disableLaceMusic() { FsmUtil.DisableAction(_control, "Start Battle Refight", 1); FsmUtil.DisableAction(_control, "Start Battle Refight", 2); } private void fixWallRangeAlert() { //IL_004a: 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_0089: Unknown result type (might be due to invalid IL or missing references) //IL_00a0: Unknown result type (might be due to invalid IL or missing references) //IL_00b7: Unknown result type (might be due to invalid IL or missing references) //IL_00ce: Unknown result type (might be due to invalid IL or missing references) //IL_00db: 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_0109: Unknown result type (might be due to invalid IL or missing references) GameObject val = UnityExtensions.FindChild(((Component)((Component)this).gameObject.transform.parent).gameObject, "Wall Range"); Extensions.SetPosition3D(val.transform, 84.0349f, 103.67f, 0f); SilkenSisters.Log.LogDebug((object)$"[Lace2.fixWallRangeAlert] position:{val.transform.position}"); BoxCollider2D[] components = val.GetComponents(); components[0].size = new Vector2(5f, 30f); ((Collider2D)components[0]).offset = new Vector2(-9f, 0.4726f); components[1].size = new Vector2(5f, 35.1782f); ((Collider2D)components[1]).offset = new Vector2(10f, 7.1234f); SilkenSisters.Log.LogDebug((object)$"[Lace2.fixWallRangeAlert] alertLeft: Size:{components[0].size}, Size:{((Collider2D)components[0]).offset}"); SilkenSisters.Log.LogDebug((object)$"[Lace2.fixWallRangeAlert] alertRight: Size:{components[1].size}, Size:{((Collider2D)components[1]).offset}"); } private void setLaceFacing() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown FaceObjectV2 val = new FaceObjectV2(); val.spriteFacesRight = FsmBool.op_Implicit(true); val.playNewAnimation = false; val.newAnimationClip = FsmString.op_Implicit(""); val.resetFrame = false; val.everyFrame = false; val.pauseBetweenTurns = 0.5f; val.objectA = SilkenSisters.instance.laceBossFSMOwner; val.objectB = FsmGameObject.op_Implicit(SilkenSisters.hornet); FsmUtil.InsertAction(_control, "Init", (FsmStateAction)(object)val, 4); FsmUtil.DisableAction(_control, "Refight Engarde", 0); SilkenSisters.Log.LogDebug((object)string.Format("[Lace2.setLaceFacing] Facing Action:{0}", ((object)FsmUtil.GetStateAction(_control, "Init", 4)).GetType())); SilkenSisters.Log.LogDebug((object)string.Format("[Lace2.Refight Engarde] Base facing active?:{0}", FsmUtil.GetStateAction(_control, "Refight Engarde", 0).active)); } private void PrepareCorpse() { //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008e: Expected O, but got Unknown //IL_00ae: Unknown result type (might be due to invalid IL or missing references) //IL_00b4: Expected O, but got Unknown //IL_00c2: 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_00ce: Expected O, but got Unknown //IL_00d9: Unknown result type (might be due to invalid IL or missing references) SilkenSisters.Log.LogDebug((object)"Started setting corpse handler"); GameObject obj = UnityExtensions.FindChild(((Component)this).gameObject, "Corpse Lace2(Clone)"); GameObject val = UnityExtensions.FindChild(obj, "NPC"); PlayMakerFSM fsmPreprocessed = FsmUtil.GetFsmPreprocessed(obj, "Control"); FsmUtil.GetAction(fsmPreprocessed, "Set Facing", 0).compareTo = FsmFloat.op_Implicit(72f); FsmUtil.GetAction(fsmPreprocessed, "Set Facing", 1).compareTo = FsmFloat.op_Implicit(96f); SilkenSisters.Log.LogDebug((object)"Disabling interact action"); FsmUtil.DisableAction(fsmPreprocessed, "NPC Ready", 0); SendEventByName val2 = new SendEventByName(); val2.sendEvent = FsmString.op_Implicit("INTERACT"); val2.delay = FsmFloat.op_Implicit(0f); FsmOwnerDefault val3 = new FsmOwnerDefault(); val3.gameObject = FsmGameObject.op_Implicit(val); val3.ownerOption = (OwnerDefaultOption)1; FsmEventTarget val4 = new FsmEventTarget(); val4.gameObject = val3; val4.target = (EventTarget)1; val2.eventTarget = val4; FsmUtil.AddAction(fsmPreprocessed, "NPC Ready", (FsmStateAction)(object)val2); PlayMakerFSM fsmPreprocessed2 = FsmUtil.GetFsmPreprocessed(val, "Control"); FsmUtil.ChangeTransition(fsmPreprocessed2, "Idle", "INTERACT", "Drop Pause"); FsmUtil.DisableAction(fsmPreprocessed2, "Drop Pause", 0); FsmUtil.ChangeTransition(fsmPreprocessed2, "Drop Down", "FINISHED", "End Pause"); FsmUtil.ChangeTransition(fsmPreprocessed2, "Drop Down", "IS_HURT", "End Pause"); FsmUtil.DisableAction(fsmPreprocessed2, "End Pause", 0); FsmUtil.GetAction(fsmPreprocessed2, "End Pause", 1).time = FsmFloat.op_Implicit(0.5f); SilkenSisters.Log.LogDebug((object)"Disabling end actions"); FsmUtil.DisableAction(fsmPreprocessed2, "End", 5); FsmUtil.DisableAction(fsmPreprocessed2, "End", 6); FsmUtil.DisableAction(fsmPreprocessed2, "End", 7); FsmUtil.DisableAction(fsmPreprocessed2, "End", 8); FsmUtil.DisableAction(fsmPreprocessed2, "End", 9); FsmUtil.DisableAction(fsmPreprocessed2, "End", 10); FsmUtil.DisableAction(fsmPreprocessed2, "End", 11); FsmUtil.DisableAction(fsmPreprocessed2, "End", 12); FsmUtil.DisableAction(fsmPreprocessed2, "End", 13); SilkenSisters.Log.LogDebug((object)"Disabling audio cutting"); FsmUtil.DisableAction(fsmPreprocessed, "Start", 0); FsmUtil.DisableAction(fsmPreprocessed2, "Talk 1 Start", 3); FsmUtil.DisableAction(fsmPreprocessed2, "End", 0); SilkenSisters.Log.LogDebug((object)"Finished setting up corpse handler"); } private void addDamageDelegate() { _healthManager.initHp = SilkenSisters.instance.configManager.MaxHP.Value; _healthManager.HealToMax(); FsmUtil.GetIntVariable(_control, "P2 HP").Value = SilkenSisters.instance.configManager.P2HP.Value; FsmUtil.GetIntVariable(_control, "P3 HP").Value = SilkenSisters.instance.configManager.P3HP.Value; _healthManager.TookDamage += TransferDamage; } private void TransferDamage() { HealthManager component = UnityExtensions.FindChild(SilkenSisters.instance.phantomBossScene, "Phantom").GetComponent(); if (component.hp - _healthManager.lastHitInstance.DamageDealt > 0) { component.ApplyExtraDamage(_healthManager.lastHitInstance.DamageDealt); } } private void prepareSync() { if (SilkenSisters.instance.configManager.syncedFight.Value) { ((Behaviour)_control).enabled = false; AddVars(); NukeCoreAI(); SyncTransitions(); SetupHopToPhantom(); SetupEvadeToPhantom(); SetupTele(); SetupParryBait(); SetupDefenseParry(); SetupMock(); AddWaitDefense(); ((Behaviour)_control).enabled = true; SilkenSisters.Log.LogDebug((object)"[Lace.prepareSync] Finished doing the sync stuff"); } } private void AddVars() { FsmUtil.AddGameObjectVariable(_control, "Phantom").Value = SilkenSisters.instance.phantomBossFSMOwner.GameObject.Value; FsmUtil.AddFloatVariable(_control, "Wait Time").Value = SilkenSisters.instance.configManager.syncWaitTime.Value; FsmUtil.AddFloatVariable(_control, "Async Delay").Value = SilkenSisters.instance.configManager.syncDelay.Value; FsmUtil.AddFloatVariable(_control, "Gather Distance").Value = SilkenSisters.instance.configManager.syncGatherDistance.Value; FsmUtil.AddFloatVariable(_control, "Tele Distance").Value = SilkenSisters.instance.configManager.syncTeleDistance.Value; FsmUtil.AddFloatVariable(_control, "Phase Left X").Value = 73f; FsmUtil.AddFloatVariable(_control, "Phase Right X").Value = 96f; FsmUtil.AddVector3Variable(_control, "Hornet Pos"); FsmUtil.AddVector3Variable(_control, "Phantom Pos"); FsmUtil.AddFloatVariable(_control, "Hornet Facing Right"); FsmUtil.AddFloatVariable(_control, "Is Landed"); FsmUtil.AddBoolVariable(_control, "Stun Defense").Value = true; } private void NukeCoreAI() { //IL_0162: Unknown result type (might be due to invalid IL or missing references) //IL_0167: Unknown result type (might be due to invalid IL or missing references) //IL_0177: Unknown result type (might be due to invalid IL or missing references) //IL_018c: Expected O, but got Unknown SilkenSisters.Log.LogDebug((object)"[Lace.prepareSync] Nuking a few states"); FsmUtil.RemoveState(_control, "Close"); FsmUtil.RemoveState(_control, "Far"); FsmUtil.RemoveState(_control, "Distance Check"); FsmUtil.RemoveState(_control, "CrossSlash?"); FsmUtil.RemoveState(_control, "P3 Check"); FsmUtil.RemoveState(_control, "P2 Check"); FsmUtil.RemoveTransition(_control, "Idle", "ATTACK"); FsmUtil.RemoveTransition(_control, "Idle", "TOOK DAMAGE"); FsmUtil.ChangeTransition(_control, "Tele End", "FINISHED", "Idle"); FsmUtil.ChangeTransition(_control, "Counter End", "FINISHED", "Idle"); FsmUtil.ChangeTransition(_control, "Evade Move", "FINISHED", "Idle"); FsmUtil.ChangeTransition(_control, "Start Battle Refight", "FINISHED", "Idle"); FsmUtil.ChangeTransition(_control, "Land", "FINISHED", "Idle"); FsmUtil.DisableAction(_control, "Idle", 2); FsmUtil.DisableAction(_control, "Idle", 7); FsmUtil.DisableAction(_control, "Idle", 9); FsmUtil.AddAction(_control, "Idle", (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(0.01f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") }); } private void SyncTransitions() { //IL_0160: Unknown result type (might be due to invalid IL or missing references) //IL_0165: Unknown result type (might be due to invalid IL or missing references) //IL_017b: Unknown result type (might be due to invalid IL or missing references) //IL_018c: Expected O, but got Unknown //IL_0197: 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_01ac: Unknown result type (might be due to invalid IL or missing references) //IL_01bc: Unknown result type (might be due to invalid IL or missing references) //IL_01bd: Unknown result type (might be due to invalid IL or missing references) //IL_01c2: Unknown result type (might be due to invalid IL or missing references) //IL_01ce: Expected O, but got Unknown //IL_01d3: Expected O, but got Unknown //IL_01de: Unknown result type (might be due to invalid IL or missing references) //IL_01e3: Unknown result type (might be due to invalid IL or missing references) //IL_01e4: Unknown result type (might be due to invalid IL or missing references) //IL_01e9: Unknown result type (might be due to invalid IL or missing references) //IL_01f9: Unknown result type (might be due to invalid IL or missing references) //IL_0209: Unknown result type (might be due to invalid IL or missing references) //IL_020b: Unknown result type (might be due to invalid IL or missing references) //IL_0215: Expected O, but got Unknown //IL_0215: Unknown result type (might be due to invalid IL or missing references) //IL_0225: Unknown result type (might be due to invalid IL or missing references) //IL_0235: Unknown result type (might be due to invalid IL or missing references) //IL_0241: Expected O, but got Unknown FsmUtil.AddState(_control, "SyncWait"); FsmUtil.AddTransition(_control, "Idle", "FINISHED", "SyncWait"); FsmUtil.AddTransition(_control, "SyncWait", "HOP CHARGE", "Hop To Charge"); FsmUtil.AddTransition(_control, "SyncWait", "HOP JSLASH", "Hop To J Slash"); FsmUtil.AddTransition(_control, "SyncWait", "HOP COMBO", "Hop To Combo"); FsmUtil.AddTransition(_control, "SyncWait", "CHARGE", "Charge Antic"); FsmUtil.AddTransition(_control, "SyncWait", "COMBO", "ComboSlash 1"); FsmUtil.AddTransition(_control, "SyncWait", "JSLASH", "J Slash Antic"); FsmUtil.AddTransition(_control, "SyncWait", "COUNTER", "Counter Antic"); FsmUtil.AddTransition(_control, "SyncWait", "TO P2", "Hop To P2"); FsmUtil.AddTransition(_control, "SyncWait", "TO P3", "Hop To P3"); FsmUtil.AddTransition(_control, "SyncWait", "CROSS SLASH", "CrossSlash Aim"); FsmUtil.AddTransition(_control, "SyncWait", "EVADE", "Evade"); FsmUtil.AddAction(_control, "SyncWait", (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Hops"), intValue = FsmInt.op_Implicit(0) }); FsmUtil.AddAction(_control, "SyncWait", (FsmStateAction)new Tk2dPlayAnimation { animLibName = FsmString.op_Implicit(""), clipName = FsmString.op_Implicit("Idle"), gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 } }); FsmUtil.AddAction(_control, "SyncWait", (FsmStateAction)new SendEventByName { eventTarget = new FsmEventTarget { gameObject = SilkenSisters.instance.phantomBossSceneFSMOwner, fsmName = FsmString.op_Implicit("Silken Sisters Sync Control"), target = (EventTarget)2 }, sendEvent = FsmString.op_Implicit("LACE READY"), delay = FsmFloat.op_Implicit(0f), everyFrame = true }); } private void SetupHopToPhantom() { //IL_0226: Unknown result type (might be due to invalid IL or missing references) //IL_022b: Unknown result type (might be due to invalid IL or missing references) //IL_0241: Unknown result type (might be due to invalid IL or missing references) //IL_0266: Expected O, but got Unknown //IL_0271: Unknown result type (might be due to invalid IL or missing references) //IL_0276: Unknown result type (might be due to invalid IL or missing references) //IL_028c: Unknown result type (might be due to invalid IL or missing references) //IL_029d: Expected O, but got Unknown FsmUtil.CopyState(_control, "Hop To Combo", "Hop To Phantom"); FsmUtil.CopyState(_control, "Hop Check", "Hop Check Phantom"); FsmUtil.CopyState(_control, "Hop Antic", "Hop Antic Phantom"); FsmUtil.CopyState(_control, "Hop", "Hop Phantom"); FsmUtil.CopyState(_control, "Hop Recover", "Hop Recover Phantom"); FsmUtil.CopyState(_control, "Hop Cancel", "Hop Cancel Phantom"); FsmUtil.CopyState(_control, "Hop End", "Hop End Phantom"); FsmUtil.AddTransition(_control, "SyncWait", "HOP PHANTOM", "Hop To Phantom"); FsmUtil.ChangeTransition(_control, "Hop To Phantom", "FINISHED", "Hop Check Phantom"); FsmUtil.ChangeTransition(_control, "Hop Check Phantom", "HOP END", "Hop End Phantom"); FsmUtil.ChangeTransition(_control, "Hop Check Phantom", "FINISHED", "Hop Antic Phantom"); FsmUtil.ChangeTransition(_control, "Hop Antic Phantom", "FINISHED", "Hop Phantom"); FsmUtil.ChangeTransition(_control, "Hop Phantom", "FINISHED", "Hop Recover Phantom"); FsmUtil.ChangeTransition(_control, "Hop Phantom", "CANCEL", "Hop Cancel Phantom"); FsmUtil.ChangeTransition(_control, "Hop Recover Phantom", "FINISHED", "Hop Check Phantom"); FsmUtil.ChangeTransition(_control, "Hop Cancel Phantom", "FINISHED", "Hop Recover Phantom"); FsmUtil.AddTransition(_control, "Hop End Phantom", "NONE", "Pose"); FsmUtil.AddTransition(_control, "Hop End", "NONE", "Pose"); FsmUtil.GetAction(_control, "Hop To Phantom", 1).stringValue = FsmString.op_Implicit("NONE"); FsmUtil.GetAction(_control, "Hop To Phantom", 1).stringVariable = FsmUtil.GetStringVariable(_control, "Next Event"); FsmUtil.DisableAction(_control, "Hop To Phantom", 0); FsmUtil.InsertAction(_control, "Hop To Phantom", (FsmStateAction)new SetFloatValue { floatVariable = FsmUtil.GetFloatVariable(_control, "Target Distance"), floatValue = FsmFloat.op_Implicit(SilkenSisters.instance.configManager.syncGatherDistance.Value) }, 0); FsmUtil.AddAction(_control, "Hop To Phantom", (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Hops"), intValue = FsmInt.op_Implicit(0) }); FsmUtil.GetAction(_control, "Hop Check Phantom", 3).target = FsmUtil.GetGameObjectVariable(_control, "Phantom"); FsmUtil.GetAction(_control, "Hop Phantom", 2).target = FsmUtil.GetGameObjectVariable(_control, "Phantom"); FsmUtil.GetAction(_control, "Hop Phantom", 3).float2 = FsmFloat.op_Implicit(SilkenSisters.instance.configManager.syncGatherDistance.Value); FsmUtil.GetAction(_control, "Hop Antic Phantom", 1).objectB = FsmUtil.GetGameObjectVariable(_control, "Phantom"); FsmUtil.CopyState(_control, "Hop To Combo", "Hop To None"); FsmUtil.GetAction(_control, "Hop To None", 1).stringValue = FsmString.op_Implicit("NONE"); FsmUtil.AddTransition(_control, "SyncWait", "HOP NONE", "Hop To None"); } private void SetupEvadeToPhantom() { //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_0073: Unknown result type (might be due to invalid IL or missing references) //IL_0078: Unknown result type (might be due to invalid IL or missing references) //IL_0084: Expected O, but got Unknown //IL_0084: 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_00b0: Unknown result type (might be due to invalid IL or missing references) //IL_00bc: Expected O, but got Unknown //IL_00c7: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: Unknown result type (might be due to invalid IL or missing references) //IL_00e2: Unknown result type (might be due to invalid IL or missing references) //IL_00f8: Unknown result type (might be due to invalid IL or missing references) //IL_0108: Unknown result type (might be due to invalid IL or missing references) //IL_0118: Unknown result type (might be due to invalid IL or missing references) //IL_012d: Expected O, but got Unknown FsmUtil.CopyState(_control, "Evade", "Evade Phantom"); FsmUtil.CopyState(_control, "Evade Recover", "Evade Recover Phantom"); FsmUtil.ChangeTransition(_control, "Evade Phantom", "FINISHED", "Evade Recover Phantom"); FsmUtil.AddTransition(_control, "SyncWait", "EVADE PHANTOM", "Evade Phantom"); FsmUtil.AddAction(_control, "Evade Phantom", (FsmStateAction)new GetXDistance { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, target = FsmUtil.GetGameObjectVariable(_control, "Phantom"), storeResult = FsmUtil.GetFloatVariable(_control, "Distance"), everyFrame = true }); FsmUtil.AddAction(_control, "Evade Phantom", (FsmStateAction)new FloatCompare { float1 = FsmUtil.GetFloatVariable(_control, "Distance"), float2 = FsmUtil.GetFloatVariable(_control, "Gather Distance"), tolerance = FsmFloat.op_Implicit(0.5f), lessThan = FsmEvent.GetFsmEvent("FINISHED"), equal = FsmEvent.GetFsmEvent("FINISHED") }); } private void SetupTele() { FsmUtil.CopyState(_control, "Tele Out", "Tele Out Movement"); FsmUtil.CopyState(_control, "Tele In", "Tele In Movement"); FsmUtil.ChangeTransition(_control, "Tele Out Movement", "FINISHED", "Tele In Movement"); FsmUtil.DisableAction(_control, "Tele In Movement", 2); FsmUtil.DisableAction(_control, "Tele In Movement", 3); FsmUtil.DisableAction(_control, "Tele In Movement", 4); FsmUtil.DisableAction(_control, "Tele In Movement", 5); FsmUtil.DisableAction(_control, "Tele In Movement", 6); FsmUtil.InsertMethod(_control, "Tele In Movement", (Action)GetTelePos, 7, false); FsmUtil.AddTransition(_control, "SyncWait", "TELE", "Tele Out Movement"); } private void SetupParryBait() { //IL_00be: 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_00ce: 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_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Expected O, but got Unknown //IL_00ef: 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_00fa: Expected O, but got Unknown //IL_00fa: Unknown result type (might be due to invalid IL or missing references) //IL_00fb: Unknown result type (might be due to invalid IL or missing references) //IL_0105: Expected O, but got Unknown //IL_0105: Unknown result type (might be due to invalid IL or missing references) //IL_0112: Expected O, but got Unknown //IL_011d: Unknown result type (might be due to invalid IL or missing references) //IL_0122: Unknown result type (might be due to invalid IL or missing references) //IL_012d: Unknown result type (might be due to invalid IL or missing references) //IL_012e: Unknown result type (might be due to invalid IL or missing references) //IL_0138: Expected O, but got Unknown //IL_0138: Unknown result type (might be due to invalid IL or missing references) //IL_014e: Unknown result type (might be due to invalid IL or missing references) //IL_014f: Unknown result type (might be due to invalid IL or missing references) //IL_0159: Expected O, but got Unknown //IL_0159: Unknown result type (might be due to invalid IL or missing references) //IL_015a: Unknown result type (might be due to invalid IL or missing references) //IL_0164: Expected O, but got Unknown //IL_0164: Unknown result type (might be due to invalid IL or missing references) //IL_0172: Expected O, but got Unknown //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_01a2: Unknown result type (might be due to invalid IL or missing references) //IL_01a7: Unknown result type (might be due to invalid IL or missing references) //IL_01b3: Expected O, but got Unknown //IL_01b3: Unknown result type (might be due to invalid IL or missing references) //IL_01c9: Unknown result type (might be due to invalid IL or missing references) //IL_01ca: Unknown result type (might be due to invalid IL or missing references) //IL_01cf: Unknown result type (might be due to invalid IL or missing references) //IL_01db: Expected O, but got Unknown //IL_01db: 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_01e1: Unknown result type (might be due to invalid IL or missing references) //IL_01ed: Expected O, but got Unknown //IL_01ed: Unknown result type (might be due to invalid IL or missing references) //IL_01ee: 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_01ff: Expected O, but got Unknown //IL_0206: Expected O, but got Unknown //IL_0254: Unknown result type (might be due to invalid IL or missing references) //IL_0259: Unknown result type (might be due to invalid IL or missing references) //IL_025a: Unknown result type (might be due to invalid IL or missing references) //IL_025f: Unknown result type (might be due to invalid IL or missing references) //IL_026b: Expected O, but got Unknown //IL_026b: Unknown result type (might be due to invalid IL or missing references) //IL_027c: Expected O, but got Unknown //IL_0287: Unknown result type (might be due to invalid IL or missing references) //IL_028c: Unknown result type (might be due to invalid IL or missing references) //IL_028d: Unknown result type (might be due to invalid IL or missing references) //IL_0292: Unknown result type (might be due to invalid IL or missing references) //IL_029e: Expected O, but got Unknown //IL_029e: Unknown result type (might be due to invalid IL or missing references) //IL_029f: Unknown result type (might be due to invalid IL or missing references) //IL_02a4: Unknown result type (might be due to invalid IL or missing references) //IL_02b0: Expected O, but got Unknown //IL_02b0: Unknown result type (might be due to invalid IL or missing references) //IL_02b1: Unknown result type (might be due to invalid IL or missing references) //IL_02b6: Unknown result type (might be due to invalid IL or missing references) //IL_02c2: Expected O, but got Unknown //IL_02c2: Unknown result type (might be due to invalid IL or missing references) //IL_02d8: Unknown result type (might be due to invalid IL or missing references) //IL_02d9: Unknown result type (might be due to invalid IL or missing references) //IL_02de: Unknown result type (might be due to invalid IL or missing references) //IL_02ea: Expected O, but got Unknown //IL_02ea: Unknown result type (might be due to invalid IL or missing references) //IL_02f6: Unknown result type (might be due to invalid IL or missing references) //IL_02fd: Unknown result type (might be due to invalid IL or missing references) //IL_030a: Expected O, but got Unknown //IL_0315: Unknown result type (might be due to invalid IL or missing references) //IL_031a: Unknown result type (might be due to invalid IL or missing references) //IL_0330: Unknown result type (might be due to invalid IL or missing references) //IL_0340: Unknown result type (might be due to invalid IL or missing references) //IL_034d: Expected O, but got Unknown FsmUtil.CopyState(_control, "Tele Out", "Tele Out Bait"); FsmUtil.CopyState(_control, "Tele In", "Tele In Bait"); FsmUtil.ChangeTransition(_control, "Tele Out Bait", "FINISHED", "Tele In Bait"); FsmUtil.DisableAction(_control, "Tele In Bait", 2); FsmUtil.DisableAction(_control, "Tele In Bait", 3); FsmUtil.DisableAction(_control, "Tele In Bait", 4); FsmUtil.DisableAction(_control, "Tele In Bait", 5); FsmUtil.DisableAction(_control, "Tele In Bait", 6); FsmUtil.DisableAction(_control, "Tele In Bait", 7); FsmUtil.InsertAction(_control, "Tele In Bait", (FsmStateAction)new GetPosition { gameObject = SilkenSisters.hornetFSMOwner, vector = FsmUtil.GetVector3Variable(_control, "Hornet Pos"), x = new FsmFloat(), y = new FsmFloat(), z = new FsmFloat(), everyFrame = false }, 8); FsmUtil.InsertAction(_control, "Tele In Bait", (FsmStateAction)new GetScale { gameObject = SilkenSisters.hornetFSMOwner, vector = new FsmVector3(), xScale = FsmUtil.GetFloatVariable(_control, "Hornet Facing Right"), yScale = new FsmFloat(), zScale = new FsmFloat(), everyFrame = false }, 9); FsmUtil.InsertMethod(_control, "Tele In Bait", (Action)SetParryBaitPos, 10, false); FsmUtil.InsertAction(_control, "Tele In Bait", (FsmStateAction)new SetPosition { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, vector = FsmUtil.GetVector3Variable(_control, "Hornet Pos"), x = new FsmFloat { UseVariable = true }, y = new FsmFloat { UseVariable = true }, z = new FsmFloat { UseVariable = true } }, 11); FsmUtil.CopyState(_control, "Counter Antic", "Counter Antic Bait"); FsmUtil.ChangeTransition(_control, "Tele In Bait", "FINISHED", "Counter Antic Bait"); FsmUtil.DisableAction(_control, "Counter Antic Bait", 1); FsmUtil.AddAction(_control, "Counter End", (FsmStateAction)new SetIsKinematic2d { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, isKinematic = FsmBool.op_Implicit(false) }); FsmUtil.InsertAction(_control, "Counter Type", (FsmStateAction)new CheckCollisionSide { collidingObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, topHit = new FsmBool { useVariable = true }, rightHit = new FsmBool { useVariable = true }, bottomHit = FsmUtil.GetBoolVariable(_control, "Is Landed"), leftHit = new FsmBool { useVariable = true }, ignoreTriggers = FsmBool.op_Implicit(false), otherLayer = false, otherLayerNumber = 0 }, 0); FsmUtil.InsertAction(_control, "Counter Type", (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Is Landed"), isFalse = FsmEvent.GetFsmEvent("AIR"), everyFrame = false }, 1); FsmUtil.AddTransition(_control, "SyncWait", "PARRY BAIT", "Tele Out Bait"); } private void SetupDefenseParry() { //IL_00be: 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_00ce: 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_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Expected O, but got Unknown //IL_00ef: 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_00fa: Expected O, but got Unknown //IL_00fa: Unknown result type (might be due to invalid IL or missing references) //IL_00fb: Unknown result type (might be due to invalid IL or missing references) //IL_0105: Expected O, but got Unknown //IL_0105: Unknown result type (might be due to invalid IL or missing references) //IL_0113: Expected O, but got Unknown //IL_011e: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Unknown result type (might be due to invalid IL or missing references) //IL_0133: Unknown result type (might be due to invalid IL or missing references) //IL_0149: 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_0154: Expected O, but got Unknown //IL_0154: Unknown result type (might be due to invalid IL or missing references) //IL_0155: Unknown result type (might be due to invalid IL or missing references) //IL_015f: Expected O, but got Unknown //IL_015f: Unknown result type (might be due to invalid IL or missing references) //IL_0160: Unknown result type (might be due to invalid IL or missing references) //IL_016a: Expected O, but got Unknown //IL_016a: Unknown result type (might be due to invalid IL or missing references) //IL_0178: Expected O, but got Unknown //IL_01a2: Unknown result type (might be due to invalid IL or missing references) //IL_01a7: Unknown result type (might be due to invalid IL or missing references) //IL_01a8: Unknown result type (might be due to invalid IL or missing references) //IL_01ad: Unknown result type (might be due to invalid IL or missing references) //IL_01b9: Expected O, but got Unknown //IL_01b9: Unknown result type (might be due to invalid IL or missing references) //IL_01cf: Unknown result type (might be due to invalid IL or missing references) //IL_01d0: Unknown result type (might be due to invalid IL or missing references) //IL_01d5: Unknown result type (might be due to invalid IL or missing references) //IL_01e1: Expected O, but got Unknown //IL_01e1: 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_01e7: Unknown result type (might be due to invalid IL or missing references) //IL_01f3: Expected O, but got Unknown //IL_01f3: Unknown result type (might be due to invalid IL or missing references) //IL_01f4: Unknown result type (might be due to invalid IL or missing references) //IL_01f9: Unknown result type (might be due to invalid IL or missing references) //IL_0205: Expected O, but got Unknown //IL_020c: Expected O, but got Unknown //IL_028b: Unknown result type (might be due to invalid IL or missing references) //IL_0290: Unknown result type (might be due to invalid IL or missing references) //IL_0291: Unknown result type (might be due to invalid IL or missing references) //IL_0296: 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) //IL_02b6: Unknown result type (might be due to invalid IL or missing references) //IL_02b8: Unknown result type (might be due to invalid IL or missing references) //IL_02c2: Expected O, but got Unknown //IL_02c2: Unknown result type (might be due to invalid IL or missing references) //IL_02d2: Unknown result type (might be due to invalid IL or missing references) //IL_02e8: Unknown result type (might be due to invalid IL or missing references) //IL_02fe: Expected O, but got Unknown //IL_0309: Unknown result type (might be due to invalid IL or missing references) //IL_030e: Unknown result type (might be due to invalid IL or missing references) //IL_031a: Unknown result type (might be due to invalid IL or missing references) //IL_0336: Expected O, but got Unknown //IL_0341: Unknown result type (might be due to invalid IL or missing references) //IL_0346: Unknown result type (might be due to invalid IL or missing references) //IL_0352: Unknown result type (might be due to invalid IL or missing references) //IL_036e: Expected O, but got Unknown FsmUtil.CopyState(_control, "Tele Out", "Tele Out Defense"); FsmUtil.CopyState(_control, "Tele In", "Tele In Defense"); FsmUtil.ChangeTransition(_control, "Tele Out Defense", "FINISHED", "Tele In Defense"); FsmUtil.DisableAction(_control, "Tele In Defense", 2); FsmUtil.DisableAction(_control, "Tele In Defense", 3); FsmUtil.DisableAction(_control, "Tele In Defense", 4); FsmUtil.DisableAction(_control, "Tele In Defense", 5); FsmUtil.DisableAction(_control, "Tele In Defense", 6); FsmUtil.DisableAction(_control, "Tele In Defense", 7); FsmUtil.InsertAction(_control, "Tele In Defense", (FsmStateAction)new GetPosition { gameObject = SilkenSisters.hornetFSMOwner, vector = FsmUtil.GetVector3Variable(_control, "Hornet Pos"), x = new FsmFloat(), y = new FsmFloat(), z = new FsmFloat(), everyFrame = false }, 9); FsmUtil.InsertAction(_control, "Tele In Defense", (FsmStateAction)new GetPosition { gameObject = SilkenSisters.instance.phantomBossFSMOwner, vector = FsmUtil.GetVector3Variable(_control, "Phantom Pos"), x = new FsmFloat(), y = new FsmFloat(), z = new FsmFloat(), everyFrame = false }, 10); FsmUtil.InsertMethod(_control, "Tele In Defense", (Action)SetDefenseParryPos, 11, false); FsmUtil.InsertAction(_control, "Tele In Defense", (FsmStateAction)new SetPosition { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, vector = FsmUtil.GetVector3Variable(_control, "Phantom Pos"), x = new FsmFloat { UseVariable = true }, y = new FsmFloat { UseVariable = true }, z = new FsmFloat { UseVariable = true } }, 12); FsmUtil.CopyState(_control, "Counter Antic", "Counter Antic Defense"); FsmUtil.ChangeTransition(_control, "Tele In Defense", "FINISHED", "Counter Antic Defense"); FsmUtil.DisableAction(_control, "Counter Antic Defense", 1); FsmUtil.AddTransition(_control, "SyncWait", "DEFEND", "Tele Out Defense"); FsmUtil.AddGlobalTransition(_control, "PHANTOM STUN", "Tele Out Defense"); FsmUtil.InsertAction(_control, "Stun Damage", (FsmStateAction)new SendEventByNameV3 { eventTarget = new FsmEventTarget { gameObject = SilkenSisters.instance.phantomBossFSMOwner, fsmName = FsmString.op_Implicit("Control"), target = (EventTarget)2 }, sendEvent = FsmString.op_Implicit("LACE STUN"), activeBool = FsmUtil.GetBoolVariable(_control, "Stun Defense"), delay = FsmFloat.op_Implicit(0f) }, 0); FsmUtil.InsertAction(_control, "Stun Damage", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Stun Defense") }, 1); FsmUtil.InsertAction(_control, "Stun Recover", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(true), boolVariable = FsmUtil.GetBoolVariable(_control, "Stun Defense") }, 0); } private void SetupMock() { //IL_0057: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_0081: Expected O, but got Unknown FsmUtil.CopyState(_control, "Death Pose", "Mock"); FsmUtil.AddTransition(_control, "Mock", "FINISHED", "Idle"); FsmUtil.AddTransition(_control, "SyncWait", "MOCK", "Mock"); FsmUtil.AddAction(_control, "Mock", (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(0.65f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") }); } private void AddWaitDefense() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0005: Unknown result type (might be due to invalid IL or missing references) //IL_00a7: Unknown result type (might be due to invalid IL or missing references) //IL_00ad: Expected O, but got Unknown new SendEventByName { eventTarget = FsmEventTarget.targetSelf, sendEvent = FsmString.op_Implicit("RINGS") }; FsmUtil.AddState(_control, "Wait Move"); FsmUtil.AddTransition(_control, "SyncWait", "TOOK DAMAGE", "Wait Move"); FsmUtil.AddTransition(_control, "Wait Move", "EVADE", "Evade"); FsmUtil.AddTransition(_control, "Wait Move", "PARRY", "Counter Antic"); FsmUtil.AddTransition(_control, "Wait Move", "NONE", "SyncWait"); PlayMakerFSM control = _control; SendRandomEventV4 val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[3] { FsmEvent.GetFsmEvent("EVADE"), FsmEvent.GetFsmEvent("PARRY"), FsmEvent.GetFsmEvent("NONE") }; val.weights = (FsmFloat[])(object)new FsmFloat[3] { FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(0f) }; val.missedMax = (FsmInt[])(object)new FsmInt[3] { FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10) }; val.eventMax = (FsmInt[])(object)new FsmInt[3] { FsmInt.op_Implicit(2), FsmInt.op_Implicit(2), FsmInt.op_Implicit(2) }; val.activeBool = FsmBool.op_Implicit(true); FsmUtil.AddAction(control, "Wait Move", (FsmStateAction)(object)val); } private void Update() { if (SilkenSisters.instance.configManager.syncWaitTime.Value != FsmUtil.GetFloatVariable(_control, "Wait Time").Value) { FsmUtil.GetFloatVariable(_control, "Wait Time").Value = SilkenSisters.instance.configManager.syncWaitTime.Value; } if (SilkenSisters.instance.configManager.syncDelay.Value != FsmUtil.GetFloatVariable(_control, "Async Delay").Value) { FsmUtil.GetFloatVariable(_control, "Async Delay").Value = SilkenSisters.instance.configManager.syncDelay.Value; } if (SilkenSisters.instance.configManager.syncGatherDistance.Value != FsmUtil.GetFloatVariable(_control, "Gather Distance").Value) { FsmUtil.GetFloatVariable(_control, "Gather Distance").Value = SilkenSisters.instance.configManager.syncGatherDistance.Value; } if (SilkenSisters.instance.configManager.syncTeleDistance.Value != FsmUtil.GetFloatVariable(_control, "Tele Distance").Value) { FsmUtil.GetFloatVariable(_control, "Tele Distance").Value = SilkenSisters.instance.configManager.syncTeleDistance.Value; } } private void SetParryBaitPos() { FsmVector3 vector3Variable = FsmUtil.GetVector3Variable(_control, "Hornet Pos"); float num = FsmUtil.GetFloatVariable(_control, "Hornet Facing Right").Value * SilkenSisters.instance.configManager.ParryBaitDistance.Value; if (vector3Variable.value.x - num < FsmUtil.GetFloatVariable(_control, "Phase Left X").Value || vector3Variable.value.x - num > FsmUtil.GetFloatVariable(_control, "Phase Right X").Value) { num *= -1f; } vector3Variable.value.x -= num; vector3Variable.value.y -= 0.021500051f; } private void SetDefenseParryPos() { //IL_0023: Unknown result type (might be due to invalid IL or missing references) //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0060: Unknown result type (might be due to invalid IL or missing references) //IL_006b: Unknown result type (might be due to invalid IL or missing references) FsmVector3 vector3Variable = FsmUtil.GetVector3Variable(_control, "Phantom Pos"); FsmVector3 vector3Variable2 = FsmUtil.GetVector3Variable(_control, "Hornet Pos"); if (vector3Variable.Value.x > vector3Variable2.Value.x) { vector3Variable.value.x -= SilkenSisters.instance.configManager.DefenseParryDistance.Value; } else if (vector3Variable.Value.x < vector3Variable2.Value.x) { vector3Variable.value.x += SilkenSisters.instance.configManager.DefenseParryDistance.Value; } vector3Variable.value.y += 0.29679996f; } private void GetTelePos() { FsmUtil.GetFloatVariable(_control, "Tele X").Value = FsmUtil.GetFloatVariable(FsmUtil.GetFsm(SilkenSisters.instance.phantomBossScene, "Silken Sisters Sync Control"), "Lace X").Value; } } internal class Lace2Scene : MonoBehaviour { private PlayMakerFSM _control; private void Awake() { Setup(); } private async Task Setup() { SilkenSisters.Log.LogDebug((object)"[Lace2Scene.Setup] Started setting Lace scene up"); getComponents(); disableSceneObjects(); moveSceneBounds(); SilkenSisters.Log.LogDebug((object)"[Lace2Scene.Setup] Finished setting Lace scene up"); } private void getComponents() { _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Control"); } private void disableSceneObjects() { SilkenSisters.Log.LogDebug((object)"[Lace2Scene.disableSceneObjects] Disabling unwanted LaceBossScene items"); UnityExtensions.FindChild(((Component)this).gameObject, "Flower Effect Hornet").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "steam hazard").SetActive(false); UnityExtensions.FindChild(((Component)this).gameObject, "Silk Heart Memory Return").SetActive(false); } private void moveSceneBounds() { //IL_0033: 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_008f: Unknown result type (might be due to invalid IL or missing references) SilkenSisters.Log.LogDebug((object)"[Lace2Scene.moveSceneBounds] Moving lace arena objects"); UnityExtensions.FindChild(((Component)this).gameObject, "Arena L").transform.position = new Vector3(72f, 104f, 0f); UnityExtensions.FindChild(((Component)this).gameObject, "Arena R").transform.position = new Vector3(97f, 104f, 0f); UnityExtensions.FindChild(((Component)this).gameObject, "Centre").transform.position = new Vector3(84.5f, 104f, 0f); } } internal class Lace3 { } internal class LaceNPC : MonoBehaviour { private PlayMakerFSM _control; private Transform _npcTransform; private void Awake() { Setup(); } private async Task Setup() { try { SilkenSisters.Log.LogDebug((object)"[LaceNPC.Setup] Spawning lace on the organ bench"); register(); getComponents(); AddVariables(); disableRangeDetection(); setPosition(); editFSMAnimations(); EditTransitions(); SetConductAnimation(); SkipDialogue(); EditDialog(); TakeHornetControl(); resumePhantom(); HornetLookAtLace(); SilkenSisters.Log.LogDebug((object)"[LaceNPC.Setup] Finished setting up LaceNPC"); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void register() { //IL_0005: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Expected O, but got Unknown SilkenSisters.instance.laceNPCFSMOwner = new FsmOwnerDefault(); SilkenSisters.instance.laceNPCFSMOwner.OwnerOption = (OwnerDefaultOption)1; SilkenSisters.instance.laceNPCFSMOwner.GameObject = FsmGameObject.op_Implicit(((Component)this).gameObject); } private void getComponents() { _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Control"); _npcTransform = ((Component)this).gameObject.transform; } private void disableRangeDetection() { UnityExtensions.FindChild(((Component)this).gameObject, "Start Range").SetActive(false); SilkenSisters.Log.LogDebug((object)string.Format("[LaceNPC.disableRangeDetection] LaceNPCDetection?:{0}", UnityExtensions.FindChild(((Component)this).gameObject, "Start Range").activeSelf)); } private void setPosition() { //IL_002a: Unknown result type (might be due to invalid IL or missing references) Extensions.SetPosition3D(_npcTransform, 81.9569f, 106.2943f, 2.7723f); SilkenSisters.Log.LogDebug((object)$"[LaceNPC.setPosition] position:{_npcTransform.position}"); } private void SetConductAnimation() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_002b: Expected O, but got Unknown //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_003b: Unknown result type (might be due to invalid IL or missing references) //IL_0051: Unknown result type (might be due to invalid IL or missing references) //IL_0066: Expected O, but got Unknown //IL_0071: 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_008c: Unknown result type (might be due to invalid IL or missing references) //IL_009c: Unknown result type (might be due to invalid IL or missing references) //IL_00b1: Expected O, but got Unknown //IL_013d: Unknown result type (might be due to invalid IL or missing references) //IL_0142: Unknown result type (might be due to invalid IL or missing references) //IL_0152: Unknown result type (might be due to invalid IL or missing references) //IL_0162: Unknown result type (might be due to invalid IL or missing references) //IL_0177: Expected O, but got Unknown //IL_0194: Unknown result type (might be due to invalid IL or missing references) //IL_0199: Unknown result type (might be due to invalid IL or missing references) //IL_01a9: Unknown result type (might be due to invalid IL or missing references) //IL_01b9: Unknown result type (might be due to invalid IL or missing references) //IL_01d4: Expected O, but got Unknown //IL_01f1: 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_0232: Expected O, but got Unknown //IL_023d: Unknown result type (might be due to invalid IL or missing references) //IL_0242: Unknown result type (might be due to invalid IL or missing references) //IL_0252: Unknown result type (might be due to invalid IL or missing references) //IL_0262: Unknown result type (might be due to invalid IL or missing references) //IL_027d: Expected O, but got Unknown FsmUtil.AddAction(_control, "Init", (FsmStateAction)new RandomBool { storeResult = FsmUtil.GetBoolVariable(_control, "IsConducting") }); FsmUtil.AddAction(_control, "Init", (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "IsConducting"), isTrue = FsmEvent.GetFsmEvent("CONDUCT") }); FsmUtil.AddAction(_control, "Init", (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "IsMemory"), isFalse = FsmEvent.GetFsmEvent("CONDUCT"), isTrue = FsmEvent.GetFsmEvent("FINISHED") }); FsmUtil.AddState(_control, "Conduct"); FsmUtil.AddTransition(_control, "Init", "CONDUCT", "Conduct"); FsmUtil.AddTransition(_control, "Conduct", "FINISHED", "Dormant"); FsmUtil.AddMethod(_control, "Conduct", (Action)setConductPosition, false); FsmUtil.AddMethod(_control, "Conduct", (Action)SpawnFlies, false); FsmUtil.AddAction(_control, "Conduct", (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, animLibName = FsmString.op_Implicit(""), clipName = FsmString.op_Implicit("Conduct") }); FsmUtil.DisableAction(_control, "Take Control", 1); FsmUtil.AddAction(_control, "Take Control", (FsmStateAction)new tk2dPlayAnimationConditional { Target = SilkenSisters.instance.laceNPCFSMOwner, AnimName = FsmString.op_Implicit("NPC Idle Turn Left"), Condition = FsmUtil.GetBoolVariable(_control, "IsConducting") }); FsmUtil.DisableAction(_control, "Sit Up", 1); FsmUtil.InsertAction(_control, "Sit Up", (FsmStateAction)new tk2dPlayAnimationConditional { Target = SilkenSisters.instance.laceNPCFSMOwner, AnimName = FsmString.op_Implicit("TurnToIdle"), Condition = FsmUtil.GetBoolVariable(_control, "IsConducting") }, 1); FsmUtil.AddAction(_control, "Sit Up", (FsmStateAction)new tk2dPlayAnimationConditional { Target = SilkenSisters.instance.laceNPCFSMOwner, AnimName = FsmString.op_Implicit("SitToIdle"), Condition = FsmUtil.GetBoolVariable(_control, "IsNotConducting") }); } private void AddVariables() { FsmUtil.AddBoolVariable(_control, "IsConducting").Value = false; FsmUtil.AddBoolVariable(_control, "IsNotConducting").Value = true; FsmUtil.AddBoolVariable(_control, "IsMemory").Value = SilkenSisters.isMemory(); FsmUtil.AddBoolVariable(_control, "IsNotMemory").Value = !SilkenSisters.isMemory(); FsmUtil.AddBoolVariable(_control, "EncounteredLace1").Value = PlayerDataAccess.encounteredLace1; } private void EditDialog() { FsmUtil.DisableAction(_control, "Take Control", 3); FsmUtil.DisableAction(_control, "Start Pause", 2); FsmUtil.DisableAction(_control, "Sit Up", 5); FsmUtil.DisableAction(_control, "Convo 3", 2); FsmUtil.DisableAction(_control, "Convo 3", 3); FsmUtil.DisableAction(_control, "Convo 3", 4); FsmUtil.DisableAction(_control, "Convo 3", 5); FsmUtil.DisableAction(_control, "Convo 4", 2); ((RunDialogueBase)FsmUtil.GetAction(_control, "Convo 1", 0)).PreventHeroAnimation = FsmBool.op_Implicit(true); FsmUtil.GetAction(_control, "Convo 4", 0).Key = FsmString.op_Implicit("LACE_MEET_4"); FsmUtil.GetAction(_control, "End", 3).ReturnControl = FsmBool.op_Implicit(false); FsmUtil.DisableAction(_control, "To Idle Anim", 0); FsmUtil.DisableAction(_control, "End Dialogue", 1); } private void EditTransitions() { FsmUtil.GetTransition(_control, "Take Control", "LAND").fsmEvent = FsmEvent.GetFsmEvent("FINISHED"); FsmUtil.AddState(_control, "Lace Ready"); FsmUtil.AddTransition(_control, "Lace Ready", "JUMP", "Jump Antic"); FsmUtil.ChangeTransition(_control, "End Dialogue", "FINISHED", "Lace Ready"); FsmUtil.ChangeTransition(_control, "Take Control", "FINISHED", "Convo 1"); } private void editFSMAnimations() { //IL_004d: Unknown result type (might be due to invalid IL or missing references) //IL_013c: Unknown result type (might be due to invalid IL or missing references) //IL_0141: Unknown result type (might be due to invalid IL or missing references) //IL_0151: Unknown result type (might be due to invalid IL or missing references) //IL_0162: Expected O, but got Unknown SilkenSisters.Log.LogDebug((object)"[LaceNPC.editFSMAnimations] Editing Lace NPC FSM"); FsmUtil.AddMethod(_control, "Take Control", (Action)makeFliesLeave, false); SetPosition action = FsmUtil.GetAction(_control, "Sit Up", 3); action.vector = FsmVector3.op_Implicit(new Vector3(81.9569f, 106.7942f, 2.7021f)); action.x = FsmFloat.op_Implicit(81.9569f); action.y = FsmFloat.op_Implicit(106.7942f); action.z = FsmFloat.op_Implicit(2.7021f); FsmUtil.AddMethod(_control, "Jump Away", (Action)toggleChallenge, false); FsmUtil.AddMethod(_control, "Jump Away", (Action)startConstrainHornet, false); FsmUtil.DisableAction(_control, "Jump Antic", 4); FsmUtil.DisableAction(_control, "Jump Away", 7); FsmUtil.DisableAction(_control, "Look Up End", 0); FsmUtil.DisableAction(_control, "End", 1); FsmUtil.DisableAction(_control, "End", 4); FsmUtil.DisableAction(_control, "End", 5); FsmUtil.AddAction(_control, "Look Up End", (FsmStateAction)new SetPlayerDataBool { boolName = FsmString.op_Implicit("encounteredLace1"), value = FsmBool.op_Implicit(true) }); } private void SkipDialogue() { //IL_0026: 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_0041: 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_0066: Expected O, but got Unknown //IL_0071: 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_008c: Unknown result type (might be due to invalid IL or missing references) //IL_009c: Unknown result type (might be due to invalid IL or missing references) //IL_00b1: Expected O, but got Unknown //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_00f2: Unknown result type (might be due to invalid IL or missing references) //IL_0107: Expected O, but got Unknown //IL_0112: Unknown result type (might be due to invalid IL or missing references) //IL_0117: Unknown result type (might be due to invalid IL or missing references) //IL_012d: Unknown result type (might be due to invalid IL or missing references) //IL_0142: Expected O, but got Unknown FsmUtil.AddTransition(_control, "Take Control", "SKIP", "Sit Up"); FsmUtil.AddAction(_control, "Take Control", (FsmStateAction)new BoolTestDelay { boolVariable = FsmUtil.GetBoolVariable(_control, "IsMemory"), isTrue = FsmEvent.GetFsmEvent("SKIP"), delay = FsmFloat.op_Implicit(0.5f) }); FsmUtil.AddAction(_control, "Take Control", (FsmStateAction)new BoolTestDelay { boolVariable = FsmUtil.GetBoolVariable(_control, "EncounteredLace1"), isTrue = FsmEvent.GetFsmEvent("SKIP"), delay = FsmFloat.op_Implicit(0.5f) }); FsmUtil.AddTransition(_control, "Sit Up", "SKIP", "Lace Ready"); FsmUtil.AddAction(_control, "Sit Up", (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "IsMemory"), isTrue = FsmEvent.GetFsmEvent("SKIP") }); FsmUtil.AddAction(_control, "Sit Up", (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "EncounteredLace1"), isTrue = FsmEvent.GetFsmEvent("SKIP") }); } private void resumePhantom() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_003c: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Expected O, but got Unknown FsmOwnerDefault val = new FsmOwnerDefault(); val.OwnerOption = (OwnerDefaultOption)1; val.GameObject = FsmGameObject.op_Implicit(UnityExtensions.FindChild(SilkenSisters.instance.phantomBossScene, "Organ Phantom")); FsmUtil.AddAction(_control, "Lace Ready", (FsmStateAction)new Tk2dResumeAnimation { gameObject = val }); } private void setConductPosition() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) _npcTransform.position = new Vector3(81.9569f, 106.9124f, 2.9723f); FsmUtil.GetBoolVariable(_control, "IsConducting").Value = true; FsmUtil.GetBoolVariable(_control, "IsNotConducting").Value = false; } private void TakeHornetControl() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0005: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0012: Unknown result type (might be due to invalid IL or missing references) //IL_0017: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Unknown result type (might be due to invalid IL or missing references) //IL_001e: Unknown result type (might be due to invalid IL or missing references) //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Expected O, but got Unknown //IL_0035: 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_0056: Unknown result type (might be due to invalid IL or missing references) //IL_0058: Unknown result type (might be due to invalid IL or missing references) //IL_005d: Unknown result type (might be due to invalid IL or missing references) //IL_005f: Unknown result type (might be due to invalid IL or missing references) //IL_0064: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Unknown result type (might be due to invalid IL or missing references) //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_007a: Expected O, but got Unknown //IL_007b: Expected O, but got Unknown SendMessage val = new SendMessage { gameObject = SilkenSisters.hornetFSMOwner, delivery = (MessageType)0, options = (SendMessageOptions)1, functionCall = new FunctionCall { FunctionName = "RelinquishControl" } }; FsmUtil.AddAction(_control, "Take Control", (FsmStateAction)(object)val); SendMessage val2 = new SendMessage { gameObject = SilkenSisters.hornetFSMOwner, delivery = (MessageType)0, options = (SendMessageOptions)1, functionCall = new FunctionCall { FunctionName = "StopAnimationControl" } }; FsmUtil.AddAction(_control, "Take Control", (FsmStateAction)(object)val2); } private void HornetLookAtLace() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Unknown result type (might be due to invalid IL or missing references) //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_0040: Unknown result type (might be due to invalid IL or missing references) //IL_0047: Unknown result type (might be due to invalid IL or missing references) //IL_0053: Unknown result type (might be due to invalid IL or missing references) //IL_005a: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0071: Expected O, but got Unknown //IL_007c: Unknown result type (might be due to invalid IL or missing references) //IL_0081: Unknown result type (might be due to invalid IL or missing references) //IL_008c: Unknown result type (might be due to invalid IL or missing references) //IL_009c: Unknown result type (might be due to invalid IL or missing references) //IL_00b7: Expected O, but got Unknown FsmUtil.AddAction(_control, "Take Control", (FsmStateAction)new FaceObjectV2 { objectA = SilkenSisters.hornetFSMOwner, objectB = FsmGameObject.op_Implicit(SilkenSisters.instance.laceNPCInstance), newAnimationClip = FsmString.op_Implicit(""), playNewAnimation = false, spriteFacesRight = FsmBool.op_Implicit(false), resetFrame = false, everyFrame = false, pauseBetweenTurns = 0f }); FsmUtil.AddAction(_control, "Take Control", (FsmStateAction)new tk2dPlayAnimationConditional { Target = SilkenSisters.hornetFSMOwner, AnimName = FsmString.op_Implicit("Turn Back Three Quarter"), Condition = FsmUtil.GetBoolVariable(_control, "IsNotMemory") }); } private void toggleChallenge() { if (SilkenSisters.isMemory()) { SilkenSisters.instance.challengeDialogInstance.SetActive(false); SilkenSisters.Log.LogDebug((object)$"[LaceNPC.toggleChallenge] challenge?:{SilkenSisters.instance.challengeDialogInstance.activeSelf}"); } } private void startConstrainHornet() { ((Behaviour)SilkenSisters.hornetConstrain).enabled = true; SilkenSisters.Log.LogDebug((object)$"[LaceNPC.startConstrainHornet] constrainHornet?:{((Behaviour)SilkenSisters.hornetConstrain).enabled}"); } private void SpawnFlies() { SilkenSisters.instance.silkflies = ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.sceneCache, "silkfliesCache"); SilkenSisters.instance.silkflies.SetActive(false); SilkenSisters.instance.silkflies.AddComponent(); SilkenSisters.instance.silkflies.SetActive(true); } private void makeFliesLeave() { if ((Object)(object)SilkenSisters.instance.silkflies != (Object)null) { SilkenSisters.instance.silkflies.GetComponent().Leave(); } } } internal class SilkFlies : MonoBehaviour { private List _flies = new List(); private List _controls; private List _positions = new List(5) { new Vector3(81.5f, 108.8f, 2.7723f), new Vector3(76f, 109f, 2.7723f), new Vector3(79.5f, 106f, 2.7723f), new Vector3(77f, 106f, 2.7723f), new Vector3(78.5f, 110f, 2.7723f) }; private void Awake() { Setup(); } private void Setup() { GetComponents(); SpawnNewFlies(); SpawnNewFlies(); SetPositions(); ReduceBuzz(); } private void GetComponents() { for (int i = 0; i < ((Component)this).gameObject.transform.childCount; i++) { _flies.Add(((Component)((Component)this).gameObject.transform.GetChild(i)).gameObject); } _controls = _flies.Select((GameObject f) => FsmUtil.GetFsmPreprocessed(f, "Control")).ToList(); } private void SetPositions() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0082: Unknown result type (might be due to invalid IL or missing references) for (int i = 0; i < _flies.Count; i++) { _flies[i].transform.position = _positions[i]; Extensions.SetScaleX(_flies[i].transform, 0.9f); Extensions.SetScaleY(_flies[i].transform, 0.9f); FsmUtil.GetAction(_controls[i], "Idle", 0).manualStartPos.Value = _positions[i]; } } private void ReduceBuzz() { foreach (PlayMakerFSM control in _controls) { FsmUtil.GetAction(control, "Idle", 0).roamingRangeX = FsmFloat.op_Implicit(0.35f); FsmUtil.GetAction(control, "Idle", 0).roamingRangeY = FsmFloat.op_Implicit(0.25f); } } private void SpawnNewFlies() { GameObject val = Object.Instantiate(_flies[0]); val.transform.parent = ((Component)this).gameObject.transform; _flies.Add(val); _controls.Add(FsmUtil.GetFsmPreprocessed(val, "Control")); } public void Leave() { foreach (PlayMakerFSM control in _controls) { control.SendEvent("LEAVE"); } } } internal class LaceMourning : MonoBehaviour { private PlayMakerFSM _control; private Transform _npcTransform; private void Awake() { Setup(); } private async Task Setup() { try { SilkenSisters.Log.LogDebug((object)"[LaceNPC.Setup] Spawning lace on the organ bench"); register(); getComponents(); AddVariables(); CreateSleepAnim(); disableRangeDetection(); setPosition(); SetSleepingAnimation(); disableAnim(); HornetLookAtLace(); SpawnFlies(); SetDialogue(); WaitNeedolin(); LaceSing(); PunishHornet(); SetLaceLeave(); AddOutOfRange(); SilkenSisters.Log.LogDebug((object)"[LaceNPC.Setup] Finished setting up LaceNPC"); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void register() { //IL_0005: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Expected O, but got Unknown SilkenSisters.instance.laceNPCFSMOwner = new FsmOwnerDefault(); SilkenSisters.instance.laceNPCFSMOwner.OwnerOption = (OwnerDefaultOption)1; SilkenSisters.instance.laceNPCFSMOwner.GameObject = FsmGameObject.op_Implicit(((Component)this).gameObject); } private void getComponents() { //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0066: Unknown result type (might be due to invalid IL or missing references) //IL_00a6: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_011a: Unknown result type (might be due to invalid IL or missing references) //IL_019b: Unknown result type (might be due to invalid IL or missing references) _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Control"); _npcTransform = ((Component)this).gameObject.transform; UnityExtensions.FindChild(((Component)this).gameObject, "black_fader_moon").SetActive(false); FsmUtil.AddGameObjectVariable(_control, "Charge Hit").Value = Object.Instantiate(UnityExtensions.FindChild(SilkenSisters.instance.assetManager.sceneCache["lace2BossSceneCache"].Result, "Lace Boss2 New/Charge Hit")); FsmUtil.AddGameObjectVariable(_control, "Dash Burst").Value = Object.Instantiate(UnityExtensions.FindChild(SilkenSisters.instance.assetManager.sceneCache["lace2BossSceneCache"].Result, "Lace Boss2 New/Dash Burst")); FsmUtil.GetGameObjectVariable(_control, "Charge Hit").Value.transform.SetParent(((Component)this).gameObject.transform); FsmUtil.GetGameObjectVariable(_control, "Charge Hit").Value.transform.localPosition = new Vector3(0f, 0f, 0f); Extensions.SetScaleX(FsmUtil.GetGameObjectVariable(_control, "Charge Hit").Value.transform, 1f); FsmUtil.GetGameObjectVariable(_control, "Dash Burst").Value.transform.SetParent(((Component)this).gameObject.transform); FsmUtil.GetGameObjectVariable(_control, "Dash Burst").Value.transform.localPosition = new Vector3(-4.3759f, -1.1653f, -0.001f); Extensions.SetScaleX(FsmUtil.GetGameObjectVariable(_control, "Dash Burst").Value.transform, 1f); } private void AddVariables() { FsmUtil.AddStringVariable(_control, "NextState"); FsmUtil.AddIntVariable(_control, "Lace Pissed Off Count").Value = 0; FsmUtil.AddBoolVariable(_control, "Scoff").Value = true; FsmUtil.AddFloatVariable(_control, "TeleX").Value = 0f; FsmUtil.AddFloatVariable(_control, "Needolin Range").Value = 8f; FsmUtil.AddFloatVariable(_control, "Distance").Value = 0f; FsmUtil.AddFloatVariable(_control, "HitDistance").Value = 2.8f; FsmUtil.AddGameObjectVariable(_control, "Hornet").Value = SilkenSisters.hornet; FsmUtil.AddGameObjectVariable(_control, "Lace").Value = ((Component)this).gameObject; } private void disableRangeDetection() { //IL_003b: Unknown result type (might be due to invalid IL or missing references) UnityExtensions.FindChild(((Component)this).gameObject, "Start Range").GetComponent().size = new Vector2((FsmUtil.GetFloatVariable(_control, "Needolin Range").Value - 1f) * 2f, 55f); SilkenSisters.Log.LogDebug((object)string.Format("[LaceNPC.disableRangeDetection] LaceNPCDetection?:{0}", UnityExtensions.FindChild(((Component)this).gameObject, "Start Range").activeSelf)); } private void setPosition() { //IL_003a: Unknown result type (might be due to invalid IL or missing references) Extensions.SetPosition3D(_npcTransform, 83.5752f, 107.0726f, 3.4021f); Extensions.SetScaleX(_npcTransform, 1f); SilkenSisters.Log.LogDebug((object)$"[LaceNPC.setPosition] position:{_npcTransform.position}"); } private void CreateSleepAnim() { //IL_001b: Unknown result type (might be due to invalid IL or missing references) //IL_0021: Expected O, but got Unknown //IL_009b: 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_00cd: Unknown result type (might be due to invalid IL or missing references) //IL_00d3: Expected O, but got Unknown //IL_014d: 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_01cb: Unknown result type (might be due to invalid IL or missing references) //IL_01f7: Unknown result type (might be due to invalid IL or missing references) tk2dSpriteAnimationClip clipByName = ((Component)this).gameObject.GetComponent().Library.GetClipByName("LieToWake"); tk2dSpriteAnimationClip val = new tk2dSpriteAnimationClip(); val.CopyFrom(clipByName); val.name = "BackToSleep"; val.frames = val.frames.Reverse().Skip(2).ToArray(); ((Component)this).gameObject.GetComponent().Library.clips = CollectionExtensions.AddToArray(((Component)this).gameObject.GetComponent().Library.clips, val); ((Component)this).gameObject.GetComponent().Library.lookup["BackToSleep"] = new AnimationInfo { clip = val, id = ((Component)this).gameObject.GetComponent().Library.clips.Length }; tk2dSpriteAnimationClip val2 = new tk2dSpriteAnimationClip(); val2.CopyFrom(clipByName); val2.name = "Crouch"; val2.frames = val2.frames.Reverse().Take(4).ToArray(); ((Component)this).gameObject.GetComponent().Library.clips = CollectionExtensions.AddToArray(((Component)this).gameObject.GetComponent().Library.clips, val); ((Component)this).gameObject.GetComponent().Library.lookup["BackToSleep"] = new AnimationInfo { clip = val, id = ((Component)this).gameObject.GetComponent().Library.clips.Length }; ((Component)this).gameObject.GetComponent().Library.clips = CollectionExtensions.AddToArray(((Component)this).gameObject.GetComponent().Library.clips, val2); ((Component)this).gameObject.GetComponent().Library.lookup["Crouch"] = new AnimationInfo { clip = val2, id = ((Component)this).gameObject.GetComponent().Library.clips.Length }; } private void SetSleepingAnimation() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0020: Unknown result type (might be due to invalid IL or missing references) //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_0045: Expected O, but got Unknown FsmUtil.AddAction(_control, "Dormant", (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, animLibName = FsmString.op_Implicit(""), clipName = FsmString.op_Implicit("Lie") }); } private void disableAnim() { FsmUtil.DisableAction(_control, "Jump Antic", 4); } private void HornetLookAtLace() { //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Unknown result type (might be due to invalid IL or missing references) //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_0049: 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_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_0076: Expected O, but got Unknown FsmUtil.InsertActions(_control, "Take Control", 3, (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)new FaceObjectV2 { objectA = SilkenSisters.hornetFSMOwner, objectB = FsmGameObject.op_Implicit(SilkenSisters.instance.laceNPCInstance), newAnimationClip = FsmString.op_Implicit(""), playNewAnimation = false, spriteFacesRight = FsmBool.op_Implicit(false), resetFrame = false, everyFrame = false, pauseBetweenTurns = 0f } }); } private void SetDialogue() { //IL_005a: Unknown result type (might be due to invalid IL or missing references) //IL_0092: Unknown result type (might be due to invalid IL or missing references) //IL_0097: 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_00b7: 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_00ce: Unknown result type (might be due to invalid IL or missing references) //IL_00da: Unknown result type (might be due to invalid IL or missing references) //IL_00e1: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_00f4: Expected O, but got Unknown //IL_00f6: Unknown result type (might be due to invalid IL or missing references) //IL_00fb: Unknown result type (might be due to invalid IL or missing references) //IL_0106: Unknown result type (might be due to invalid IL or missing references) //IL_0116: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Expected O, but got Unknown //IL_0125: Unknown result type (might be due to invalid IL or missing references) //IL_012a: Unknown result type (might be due to invalid IL or missing references) //IL_0140: Unknown result type (might be due to invalid IL or missing references) //IL_0150: Unknown result type (might be due to invalid IL or missing references) //IL_0160: Unknown result type (might be due to invalid IL or missing references) //IL_0170: Unknown result type (might be due to invalid IL or missing references) //IL_0194: Unknown result type (might be due to invalid IL or missing references) //IL_01a9: Unknown result type (might be due to invalid IL or missing references) //IL_01ae: Unknown result type (might be due to invalid IL or missing references) //IL_01c0: Unknown result type (might be due to invalid IL or missing references) //IL_01d0: Unknown result type (might be due to invalid IL or missing references) //IL_01d1: Unknown result type (might be due to invalid IL or missing references) //IL_01d6: Unknown result type (might be due to invalid IL or missing references) //IL_01e1: Unknown result type (might be due to invalid IL or missing references) //IL_01ed: Expected O, but got Unknown //IL_01ee: Expected O, but got Unknown //IL_022b: Unknown result type (might be due to invalid IL or missing references) //IL_0230: Unknown result type (might be due to invalid IL or missing references) //IL_0240: Unknown result type (might be due to invalid IL or missing references) //IL_0255: Unknown result type (might be due to invalid IL or missing references) //IL_025a: 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_027c: Unknown result type (might be due to invalid IL or missing references) //IL_0283: Unknown result type (might be due to invalid IL or missing references) //IL_028b: Expected O, but got Unknown //IL_028d: Unknown result type (might be due to invalid IL or missing references) //IL_0292: Unknown result type (might be due to invalid IL or missing references) //IL_02a2: Unknown result type (might be due to invalid IL or missing references) //IL_02b2: Unknown result type (might be due to invalid IL or missing references) //IL_02b3: Unknown result type (might be due to invalid IL or missing references) //IL_02bd: Expected O, but got Unknown //IL_02bd: Unknown result type (might be due to invalid IL or missing references) //IL_02c9: Unknown result type (might be due to invalid IL or missing references) //IL_02d5: Unknown result type (might be due to invalid IL or missing references) //IL_02e1: Unknown result type (might be due to invalid IL or missing references) //IL_02f2: Unknown result type (might be due to invalid IL or missing references) //IL_0302: Unknown result type (might be due to invalid IL or missing references) //IL_0312: Expected O, but got Unknown //IL_0313: Expected O, but got Unknown //IL_033c: Unknown result type (might be due to invalid IL or missing references) //IL_036c: Unknown result type (might be due to invalid IL or missing references) //IL_0371: 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_0389: Unknown result type (might be due to invalid IL or missing references) //IL_0399: Unknown result type (might be due to invalid IL or missing references) //IL_03aa: Expected O, but got Unknown //IL_03d2: Unknown result type (might be due to invalid IL or missing references) //IL_03d7: Unknown result type (might be due to invalid IL or missing references) //IL_03e2: Unknown result type (might be due to invalid IL or missing references) //IL_03f2: Unknown result type (might be due to invalid IL or missing references) //IL_0407: Expected O, but got Unknown FsmUtil.DisableAction(_control, "Take Control", 2); FsmUtil.GetTransition(_control, "Take Control", "LAND").fsmEvent = FsmEvent.GetFsmEvent("FINISHED"); FsmUtil.AddState(_control, "Mourn Dialogue").Position = new Rect(0f, 0f, 20f, 20f); FsmUtil.ChangeTransition(_control, "Start Pause", "FINISHED", "Mourn Dialogue"); FsmUtil.AddActions(_control, "Start Pause", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new FaceObjectV2 { objectA = SilkenSisters.hornetFSMOwner, objectB = FsmGameObject.op_Implicit(SilkenSisters.instance.laceNPCInstance), newAnimationClip = FsmString.op_Implicit(""), playNewAnimation = false, spriteFacesRight = FsmBool.op_Implicit(false), resetFrame = false, everyFrame = false, pauseBetweenTurns = 0f }, (FsmStateAction)new tk2dPlayAnimationConditional { Target = SilkenSisters.hornetFSMOwner, AnimName = FsmString.op_Implicit("Taunt Back"), Condition = FsmBool.op_Implicit(true) }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Hornet"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "hornetSword")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } } }); FsmUtil.GetAction(FsmUtil.GetState(_control, "Start Pause"), 1).time = FsmFloat.op_Implicit(0.7f); PlayMakerFSM control = _control; FsmStateAction[] obj = new FsmStateAction[2] { (FsmStateAction)new AudioPlayRandomVoiceFromTableV2 { gameObject = SilkenSisters.instance.laceNPCFSMOwner, audioClipTable = FsmObject.op_Implicit((Object)(object)SilkenSisters.instance.assetManager.audioClipTableCache["LaceWeakTalk"].Result), pitchOffset = FsmFloat.op_Implicit(0f), forcePlay = false, stopPreviousSound = true }, default(FsmStateAction) }; RunDialogue val = new RunDialogue { Sheet = FsmString.op_Implicit("Mods.io.github.al3ks1s.silkensisters"), Key = FsmString.op_Implicit("SILKEN_SISTERS_LACE_MOURN_1"), PlayerVoiceTableOverride = new FsmObject(), OverrideContinue = FsmBool.op_Implicit(false), PreventHeroAnimation = FsmBool.op_Implicit(false), HideDecorators = FsmBool.op_Implicit(false), TextAlignment = FsmEnum.op_Implicit((Enum)(object)(TextAlignment)0), OffsetY = FsmFloat.op_Implicit(0f) }; ((GetComponentFsmStateAction)val).Target = SilkenSisters.instance.laceNPCFSMOwner; obj[1] = (FsmStateAction)val; FsmUtil.AddActions(control, "Mourn Dialogue", (FsmStateAction[])(object)obj); FsmUtil.AddState(_control, "End Dlg").Position = new Rect(0f, 40f, 20f, 20f); FsmUtil.AddTransition(_control, "Mourn Dialogue", "CONVO_END", "End Dlg"); FsmUtil.AddAction(_control, "End Dlg", (FsmStateAction)new EndDialogue { ReturnControl = FsmBool.op_Implicit(false), ReturnHUD = FsmBool.op_Implicit(true), Target = SilkenSisters.instance.laceNPCFSMOwner, UseChildren = FsmBool.op_Implicit(false) }); FsmUtil.AddMethod(_control, "End Dlg", (Action)DisableNpc, false); FsmUtil.AddAction(_control, "End Dlg", (FsmStateAction)new Tk2dPlayAnimationWithEvents { gameObject = SilkenSisters.hornetFSMOwner, clipName = FsmString.op_Implicit("Challenge Talk End"), animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") }); } private void WaitNeedolin() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_0052: Unknown result type (might be due to invalid IL or missing references) //IL_00ba: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Unknown result type (might be due to invalid IL or missing references) //IL_00ca: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: Unknown result type (might be due to invalid IL or missing references) //IL_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_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00d9: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Unknown result type (might be due to invalid IL or missing references) //IL_00ee: Expected O, but got Unknown //IL_00f3: Expected O, but got Unknown //IL_00fe: Unknown result type (might be due to invalid IL or missing references) //IL_0103: Unknown result type (might be due to invalid IL or missing references) //IL_010e: Unknown result type (might be due to invalid IL or missing references) //IL_0110: Unknown result type (might be due to invalid IL or missing references) //IL_0115: Unknown result type (might be due to invalid IL or missing references) //IL_0117: Unknown result type (might be due to invalid IL or missing references) //IL_011c: Unknown result type (might be due to invalid IL or missing references) //IL_011d: Unknown result type (might be due to invalid IL or missing references) //IL_0122: Unknown result type (might be due to invalid IL or missing references) //IL_0132: Expected O, but got Unknown //IL_0137: Expected O, but got Unknown //IL_0142: Unknown result type (might be due to invalid IL or missing references) //IL_0147: Unknown result type (might be due to invalid IL or missing references) //IL_0157: Unknown result type (might be due to invalid IL or missing references) //IL_016c: Expected O, but got Unknown //IL_017f: Unknown result type (might be due to invalid IL or missing references) //IL_0184: Unknown result type (might be due to invalid IL or missing references) //IL_0194: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Unknown result type (might be due to invalid IL or missing references) //IL_01ba: Unknown result type (might be due to invalid IL or missing references) //IL_01ca: Unknown result type (might be due to invalid IL or missing references) //IL_01d0: Unknown result type (might be due to invalid IL or missing references) //IL_01da: Expected O, but got Unknown //IL_01da: Unknown result type (might be due to invalid IL or missing references) //IL_01ea: Unknown result type (might be due to invalid IL or missing references) //IL_01f0: Unknown result type (might be due to invalid IL or missing references) //IL_01fa: Expected O, but got Unknown //IL_01fa: 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_0212: Unknown result type (might be due to invalid IL or missing references) //IL_021e: 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_0237: Expected O, but got Unknown //IL_0239: Unknown result type (might be due to invalid IL or missing references) //IL_023e: Unknown result type (might be due to invalid IL or missing references) //IL_024f: Expected O, but got Unknown //IL_0284: 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_028a: Unknown result type (might be due to invalid IL or missing references) //IL_0294: Expected O, but got Unknown //IL_0294: Unknown result type (might be due to invalid IL or missing references) //IL_02a4: Unknown result type (might be due to invalid IL or missing references) //IL_02b4: Unknown result type (might be due to invalid IL or missing references) //IL_02c4: Unknown result type (might be due to invalid IL or missing references) //IL_02da: Unknown result type (might be due to invalid IL or missing references) //IL_02e2: Expected O, but got Unknown //IL_02e4: Unknown result type (might be due to invalid IL or missing references) //IL_02e9: Unknown result type (might be due to invalid IL or missing references) //IL_02ff: Unknown result type (might be due to invalid IL or missing references) //IL_0315: Unknown result type (might be due to invalid IL or missing references) //IL_0325: Unknown result type (might be due to invalid IL or missing references) //IL_0335: Unknown result type (might be due to invalid IL or missing references) //IL_0345: Unknown result type (might be due to invalid IL or missing references) //IL_034c: Unknown result type (might be due to invalid IL or missing references) //IL_035d: Expected O, but got Unknown //IL_0386: Unknown result type (might be due to invalid IL or missing references) //IL_03f6: Unknown result type (might be due to invalid IL or missing references) //IL_03fb: Unknown result type (might be due to invalid IL or missing references) //IL_040c: Expected O, but got Unknown //IL_040e: Unknown result type (might be due to invalid IL or missing references) //IL_0413: Unknown result type (might be due to invalid IL or missing references) //IL_0423: Unknown result type (might be due to invalid IL or missing references) //IL_0434: Expected O, but got Unknown //IL_0436: Unknown result type (might be due to invalid IL or missing references) //IL_043b: Unknown result type (might be due to invalid IL or missing references) //IL_044b: Unknown result type (might be due to invalid IL or missing references) //IL_0461: Unknown result type (might be due to invalid IL or missing references) //IL_0471: Unknown result type (might be due to invalid IL or missing references) //IL_0481: Unknown result type (might be due to invalid IL or missing references) //IL_0491: Unknown result type (might be due to invalid IL or missing references) //IL_0497: Unknown result type (might be due to invalid IL or missing references) //IL_04a1: Expected O, but got Unknown //IL_04a1: Unknown result type (might be due to invalid IL or missing references) //IL_04a7: Unknown result type (might be due to invalid IL or missing references) //IL_04b1: Expected O, but got Unknown //IL_04b1: Unknown result type (might be due to invalid IL or missing references) //IL_04bd: Unknown result type (might be due to invalid IL or missing references) //IL_04c9: 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_04e6: Unknown result type (might be due to invalid IL or missing references) //IL_04ee: Expected O, but got Unknown FsmUtil.AddState(_control, "Needolin Ready").Position = new Rect(0f, 80f, 20f, 20f); FsmUtil.AddState(_control, "Regain Control").Position = new Rect(0f, 80f, 20f, 20f); FsmUtil.AddMethod(_control, "Regain Control", (Action)DisableNpc, false); FsmUtil.AddTransition(_control, "End Dlg", "FINISHED", "Regain Control"); FsmUtil.AddTransition(_control, "Regain Control", "FINISHED", "Needolin Ready"); FsmUtil.AddAction(_control, "Regain Control", (FsmStateAction)new SendMessage { gameObject = SilkenSisters.hornetFSMOwner, delivery = (MessageType)0, options = (SendMessageOptions)1, functionCall = new FunctionCall { FunctionName = "RegainControl" } }); FsmUtil.AddAction(_control, "Regain Control", (FsmStateAction)new SendMessage { gameObject = SilkenSisters.hornetFSMOwner, delivery = (MessageType)0, options = (SendMessageOptions)1, functionCall = new FunctionCall { FunctionName = "StartAnimationControl" } }); FsmUtil.AddAction(_control, "Regain Control", (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(1f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") }); FsmUtil.AddActions(_control, "Needolin Ready", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new CheckHeroPerformanceRegionV2 { Target = SilkenSisters.instance.laceNPCFSMOwner, Radius = FsmUtil.GetFloatVariable(_control, "Needolin Range"), MinReactDelay = FsmFloat.op_Implicit(0.5f), MaxReactDelay = FsmFloat.op_Implicit(1f), None = new FsmEvent(""), ActiveInner = FsmEvent.GetFsmEvent("NEEDOLIN"), ActiveOuter = new FsmEvent(""), IgnoreNeedolinRange = FsmBool.op_Implicit(false), UseActiveBool = FsmBool.op_Implicit(false), ActiveBool = FsmBool.op_Implicit(false), StoreState = FsmEnum.op_Implicit((Enum)(object)(AffectedState)0), EveryFrame = true }, (FsmStateAction)new SendEventToRegister { eventName = FsmString.op_Implicit("REMINDER NEEDOLIN") } }); FsmUtil.AddMethod(_control, "Needolin Ready", (Action)makeFliesPerch, false); FsmUtil.AddActions(_control, "Needolin Ready", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new GetDistanceV2 { gameObject = new FsmOwnerDefault(), target = FsmGameObject.op_Implicit(SilkenSisters.hornet), targetOffsetX = FsmFloat.op_Implicit(0f), targetOffsetY = FsmFloat.op_Implicit(0f), storeResult = FsmUtil.GetFloatVariable(_control, "Distance"), everyFrame = true }, (FsmStateAction)new FloatCompare { float1 = FsmUtil.GetFloatVariable(_control, "Distance"), float2 = FsmUtil.GetFloatVariable(_control, "Needolin Range"), greaterThan = FsmEvent.GetFsmEvent("EXIT"), equal = FsmEvent.GetFsmEvent(""), lessThan = FsmEvent.GetFsmEvent(""), everyFrame = true, tolerance = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddState(_control, "Hornet Playing").Position = new Rect(0f, 120f, 20f, 20f); FsmUtil.AddTransition(_control, "Needolin Ready", "NEEDOLIN", "Hornet Playing"); FsmUtil.AddTransition(_control, "Hornet Playing", "END", "Needolin Ready"); FsmUtil.AddMethod(_control, "Hornet Playing", (Action)WakeFlies, false); FsmUtil.AddActions(_control, "Hornet Playing", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new SendEventToRegister { eventName = FsmString.op_Implicit("REMINDER NEEDOLIN END") }, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(5f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") }, (FsmStateAction)new CheckHeroPerformanceRegionV2 { Target = SilkenSisters.instance.laceNPCFSMOwner, Radius = FsmUtil.GetFloatVariable(_control, "Needolin Range"), MinReactDelay = FsmFloat.op_Implicit(0.5f), MaxReactDelay = FsmFloat.op_Implicit(1f), None = FsmEvent.GetFsmEvent("END"), ActiveInner = new FsmEvent(""), ActiveOuter = new FsmEvent(""), IgnoreNeedolinRange = FsmBool.op_Implicit(false), UseActiveBool = FsmBool.op_Implicit(false), ActiveBool = FsmBool.op_Implicit(false), StoreState = FsmEnum.op_Implicit((Enum)(object)(AffectedState)0), EveryFrame = true } }); } private void LaceSing() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0071: Unknown result type (might be due to invalid IL or missing references) //IL_0088: Expected O, but got Unknown //IL_008a: Unknown result type (might be due to invalid IL or missing references) //IL_008f: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00af: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Unknown result type (might be due to invalid IL or missing references) //IL_00cf: Unknown result type (might be due to invalid IL or missing references) //IL_00df: Unknown result type (might be due to invalid IL or missing references) //IL_00ee: Unknown result type (might be due to invalid IL or missing references) //IL_00f6: Expected O, but got Unknown //IL_00f8: Unknown result type (might be due to invalid IL or missing references) //IL_00fd: Unknown result type (might be due to invalid IL or missing references) //IL_0113: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Unknown result type (might be due to invalid IL or missing references) //IL_0133: Unknown result type (might be due to invalid IL or missing references) //IL_0143: Unknown result type (might be due to invalid IL or missing references) //IL_0167: Unknown result type (might be due to invalid IL or missing references) //IL_017c: Unknown result type (might be due to invalid IL or missing references) //IL_0181: Unknown result type (might be due to invalid IL or missing references) //IL_0193: 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_01a4: Unknown result type (might be due to invalid IL or missing references) //IL_01a9: 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_01c0: Expected O, but got Unknown //IL_01c1: Expected O, but got Unknown //IL_01c3: Unknown result type (might be due to invalid IL or missing references) //IL_01c8: Unknown result type (might be due to invalid IL or missing references) //IL_01d8: Unknown result type (might be due to invalid IL or missing references) //IL_01e8: Unknown result type (might be due to invalid IL or missing references) //IL_01f9: Expected O, but got Unknown //IL_0222: Unknown result type (might be due to invalid IL or missing references) //IL_025a: Unknown result type (might be due to invalid IL or missing references) //IL_025f: 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_027f: Unknown result type (might be due to invalid IL or missing references) //IL_0290: Expected O, but got Unknown //IL_0292: Unknown result type (might be due to invalid IL or missing references) //IL_0297: Unknown result type (might be due to invalid IL or missing references) //IL_02a7: Unknown result type (might be due to invalid IL or missing references) //IL_02be: Expected O, but got Unknown //IL_02c0: Unknown result type (might be due to invalid IL or missing references) //IL_02c5: Unknown result type (might be due to invalid IL or missing references) //IL_02d5: Unknown result type (might be due to invalid IL or missing references) //IL_02eb: Unknown result type (might be due to invalid IL or missing references) //IL_02fb: Unknown result type (might be due to invalid IL or missing references) //IL_030b: Unknown result type (might be due to invalid IL or missing references) //IL_031b: 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_032b: Expected O, but got Unknown //IL_032b: Unknown result type (might be due to invalid IL or missing references) //IL_0331: Unknown result type (might be due to invalid IL or missing references) //IL_033b: Expected O, but got Unknown //IL_033b: Unknown result type (might be due to invalid IL or missing references) //IL_0347: Unknown result type (might be due to invalid IL or missing references) //IL_0353: Unknown result type (might be due to invalid IL or missing references) //IL_035f: Unknown result type (might be due to invalid IL or missing references) //IL_0370: Unknown result type (might be due to invalid IL or missing references) //IL_0378: Expected O, but got Unknown //IL_037a: 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_03a0: Expected O, but got Unknown //IL_03c9: 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_0406: Unknown result type (might be due to invalid IL or missing references) //IL_0416: Unknown result type (might be due to invalid IL or missing references) //IL_0426: Unknown result type (might be due to invalid IL or missing references) //IL_0437: Expected O, but got Unknown //IL_0439: 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_043f: Unknown result type (might be due to invalid IL or missing references) //IL_0449: Expected O, but got Unknown //IL_0449: Unknown result type (might be due to invalid IL or missing references) //IL_045a: Expected O, but got Unknown //IL_045c: Unknown result type (might be due to invalid IL or missing references) //IL_0461: Unknown result type (might be due to invalid IL or missing references) //IL_0471: Unknown result type (might be due to invalid IL or missing references) //IL_0487: Unknown result type (might be due to invalid IL or missing references) //IL_0497: Unknown result type (might be due to invalid IL or missing references) //IL_04a7: Unknown result type (might be due to invalid IL or missing references) //IL_04b7: Unknown result type (might be due to invalid IL or missing references) //IL_04bd: Unknown result type (might be due to invalid IL or missing references) //IL_04c7: Expected O, but got Unknown //IL_04c7: Unknown result type (might be due to invalid IL or missing references) //IL_04cd: Unknown result type (might be due to invalid IL or missing references) //IL_04d7: Expected O, but got Unknown //IL_04d7: Unknown result type (might be due to invalid IL or missing references) //IL_04e3: Unknown result type (might be due to invalid IL or missing references) //IL_04ef: Unknown result type (might be due to invalid IL or missing references) //IL_04fb: 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_0514: Expected O, but got Unknown //IL_0516: Unknown result type (might be due to invalid IL or missing references) //IL_051b: 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_0526: Expected O, but got Unknown //IL_0526: Unknown result type (might be due to invalid IL or missing references) //IL_054a: Unknown result type (might be due to invalid IL or missing references) //IL_0556: Unknown result type (might be due to invalid IL or missing references) //IL_0563: Expected O, but got Unknown //IL_0565: Unknown result type (might be due to invalid IL or missing references) //IL_056a: Unknown result type (might be due to invalid IL or missing references) //IL_057a: Unknown result type (might be due to invalid IL or missing references) //IL_0591: Expected O, but got Unknown //IL_0593: Unknown result type (might be due to invalid IL or missing references) //IL_0598: Unknown result type (might be due to invalid IL or missing references) //IL_05a8: Unknown result type (might be due to invalid IL or missing references) //IL_05b9: Expected O, but got Unknown //IL_05e2: Unknown result type (might be due to invalid IL or missing references) //IL_0610: Unknown result type (might be due to invalid IL or missing references) //IL_063e: Unknown result type (might be due to invalid IL or missing references) //IL_066c: Unknown result type (might be due to invalid IL or missing references) //IL_0799: Unknown result type (might be due to invalid IL or missing references) //IL_079e: Unknown result type (might be due to invalid IL or missing references) //IL_079f: Unknown result type (might be due to invalid IL or missing references) //IL_07a9: Expected O, but got Unknown //IL_07a9: Unknown result type (might be due to invalid IL or missing references) //IL_07ba: Expected O, but got Unknown //IL_07bc: Unknown result type (might be due to invalid IL or missing references) //IL_07c1: Unknown result type (might be due to invalid IL or missing references) //IL_07cd: Unknown result type (might be due to invalid IL or missing references) //IL_07e4: Expected O, but got Unknown //IL_0819: Unknown result type (might be due to invalid IL or missing references) //IL_081e: Unknown result type (might be due to invalid IL or missing references) //IL_082a: Unknown result type (might be due to invalid IL or missing references) //IL_0841: Expected O, but got Unknown //IL_0843: Unknown result type (might be due to invalid IL or missing references) //IL_0848: Unknown result type (might be due to invalid IL or missing references) //IL_085e: Unknown result type (might be due to invalid IL or missing references) //IL_086a: Unknown result type (might be due to invalid IL or missing references) //IL_087a: Unknown result type (might be due to invalid IL or missing references) //IL_088a: Unknown result type (might be due to invalid IL or missing references) //IL_089a: Unknown result type (might be due to invalid IL or missing references) //IL_08a2: Expected O, but got Unknown //IL_08a4: Unknown result type (might be due to invalid IL or missing references) //IL_08a9: Unknown result type (might be due to invalid IL or missing references) //IL_08aa: Unknown result type (might be due to invalid IL or missing references) //IL_08af: Unknown result type (might be due to invalid IL or missing references) //IL_08b1: Unknown result type (might be due to invalid IL or missing references) //IL_08bb: Expected O, but got Unknown //IL_08bb: Unknown result type (might be due to invalid IL or missing references) //IL_08d1: Unknown result type (might be due to invalid IL or missing references) //IL_08e1: Unknown result type (might be due to invalid IL or missing references) //IL_08e9: Expected O, but got Unknown //IL_0901: Unknown result type (might be due to invalid IL or missing references) //IL_0906: Unknown result type (might be due to invalid IL or missing references) //IL_0916: Unknown result type (might be due to invalid IL or missing references) //IL_0926: Unknown result type (might be due to invalid IL or missing references) //IL_0937: Expected O, but got Unknown //IL_0939: Unknown result type (might be due to invalid IL or missing references) //IL_093e: Unknown result type (might be due to invalid IL or missing references) //IL_094e: Unknown result type (might be due to invalid IL or missing references) //IL_095f: Expected O, but got Unknown //IL_0977: Unknown result type (might be due to invalid IL or missing references) //IL_097c: Unknown result type (might be due to invalid IL or missing references) //IL_098c: Unknown result type (might be due to invalid IL or missing references) //IL_099c: Unknown result type (might be due to invalid IL or missing references) //IL_09ad: Expected O, but got Unknown //IL_09af: Unknown result type (might be due to invalid IL or missing references) //IL_09b4: Unknown result type (might be due to invalid IL or missing references) //IL_09c4: Unknown result type (might be due to invalid IL or missing references) //IL_09d9: Unknown result type (might be due to invalid IL or missing references) //IL_09de: Unknown result type (might be due to invalid IL or missing references) //IL_09f0: Unknown result type (might be due to invalid IL or missing references) //IL_0a00: Unknown result type (might be due to invalid IL or missing references) //IL_0a07: Unknown result type (might be due to invalid IL or missing references) //IL_0a0e: Unknown result type (might be due to invalid IL or missing references) //IL_0a25: Expected O, but got Unknown //IL_0a27: Unknown result type (might be due to invalid IL or missing references) //IL_0a2c: Unknown result type (might be due to invalid IL or missing references) //IL_0a3c: Unknown result type (might be due to invalid IL or missing references) //IL_0a51: Unknown result type (might be due to invalid IL or missing references) //IL_0a56: Unknown result type (might be due to invalid IL or missing references) //IL_0a68: Unknown result type (might be due to invalid IL or missing references) //IL_0a78: Unknown result type (might be due to invalid IL or missing references) //IL_0a7f: Unknown result type (might be due to invalid IL or missing references) //IL_0a87: Expected O, but got Unknown //IL_0a89: Unknown result type (might be due to invalid IL or missing references) //IL_0a8e: Unknown result type (might be due to invalid IL or missing references) //IL_0a9a: Unknown result type (might be due to invalid IL or missing references) //IL_0ab1: Expected O, but got Unknown //IL_0ab3: Unknown result type (might be due to invalid IL or missing references) //IL_0ab8: Unknown result type (might be due to invalid IL or missing references) //IL_0ac8: Unknown result type (might be due to invalid IL or missing references) //IL_0ad9: Expected O, but got Unknown //IL_0af1: Unknown result type (might be due to invalid IL or missing references) //IL_0af6: Unknown result type (might be due to invalid IL or missing references) //IL_0b06: Unknown result type (might be due to invalid IL or missing references) //IL_0b16: Unknown result type (might be due to invalid IL or missing references) //IL_0b27: Expected O, but got Unknown //IL_0b29: Unknown result type (might be due to invalid IL or missing references) //IL_0b2e: Unknown result type (might be due to invalid IL or missing references) //IL_0b3e: Unknown result type (might be due to invalid IL or missing references) //IL_0b53: Unknown result type (might be due to invalid IL or missing references) //IL_0b58: Unknown result type (might be due to invalid IL or missing references) //IL_0b6a: Unknown result type (might be due to invalid IL or missing references) //IL_0b7a: 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_0b88: Unknown result type (might be due to invalid IL or missing references) //IL_0b9f: Expected O, but got Unknown //IL_0ba1: Unknown result type (might be due to invalid IL or missing references) //IL_0ba6: Unknown result type (might be due to invalid IL or missing references) //IL_0bb2: Unknown result type (might be due to invalid IL or missing references) //IL_0bc9: Expected O, but got Unknown //IL_0be1: Unknown result type (might be due to invalid IL or missing references) //IL_0be6: Unknown result type (might be due to invalid IL or missing references) //IL_0bf6: Unknown result type (might be due to invalid IL or missing references) //IL_0c06: Unknown result type (might be due to invalid IL or missing references) //IL_0c17: Expected O, but got Unknown //IL_0c19: Unknown result type (might be due to invalid IL or missing references) //IL_0c1e: Unknown result type (might be due to invalid IL or missing references) //IL_0c2e: Unknown result type (might be due to invalid IL or missing references) //IL_0c3e: Unknown result type (might be due to invalid IL or missing references) //IL_0c4e: Unknown result type (might be due to invalid IL or missing references) //IL_0c5e: Unknown result type (might be due to invalid IL or missing references) //IL_0c6e: Unknown result type (might be due to invalid IL or missing references) //IL_0c7d: Unknown result type (might be due to invalid IL or missing references) //IL_0c85: Expected O, but got Unknown FsmUtil.AddState(_control, "Lace Rise").Position = new Rect(0f, 160f, 20f, 20f); FsmUtil.AddTransition(_control, "Hornet Playing", "FINISHED", "Lace Rise"); FsmUtil.AddActions(_control, "Lace Rise", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new SetStringValue { stringValue = FsmString.op_Implicit("SLEEP"), stringVariable = FsmUtil.GetStringVariable(_control, "NextState") }, (FsmStateAction)new SetPosition { gameObject = SilkenSisters.instance.laceNPCFSMOwner, x = FsmFloat.op_Implicit(83.5752f), y = FsmFloat.op_Implicit(106.847f), z = FsmFloat.op_Implicit(3.4021f), vector = FsmVector3.op_Implicit(new Vector3(83.5752f, 106.847f, 3.4021f)), everyFrame = false }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Lace"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "laceWake")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } }, (FsmStateAction)new Tk2dPlayAnimationWithEvents { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("LieToWake"), animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddState(_control, "Lace Stand").Position = new Rect(0f, 240f, 20f, 20f); FsmUtil.AddTransition(_control, "Lace Rise", "FINISHED", "Lace Stand"); FsmUtil.AddActions(_control, "Lace Stand", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("NPC Idle Right"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new SetStringValue { stringValue = FsmString.op_Implicit("CROUCH"), stringVariable = FsmUtil.GetStringVariable(_control, "NextState") }, (FsmStateAction)new CheckHeroPerformanceRegionV2 { Target = SilkenSisters.instance.laceNPCFSMOwner, Radius = FsmUtil.GetFloatVariable(_control, "Needolin Range"), MinReactDelay = FsmFloat.op_Implicit(0.5f), MaxReactDelay = FsmFloat.op_Implicit(0.8f), None = FsmEvent.GetFsmEvent("END"), ActiveInner = new FsmEvent(""), ActiveOuter = new FsmEvent(""), IgnoreNeedolinRange = FsmBool.op_Implicit(false), UseActiveBool = FsmBool.op_Implicit(false), ActiveBool = FsmBool.op_Implicit(false), StoreState = FsmEnum.op_Implicit((Enum)(object)(AffectedState)0), EveryFrame = true }, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(1f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddState(_control, "Lace Sing").Position = new Rect(0f, 300f, 20f, 20f); FsmUtil.AddTransition(_control, "Lace Stand", "FINISHED", "Lace Sing"); FsmUtil.AddActions(_control, "Lace Sing", (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("Sing"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new SetAudioPitch { gameObject = new FsmOwnerDefault(), pitch = FsmFloat.op_Implicit(1.1f) }, (FsmStateAction)new CheckHeroPerformanceRegionV2 { Target = SilkenSisters.instance.laceNPCFSMOwner, Radius = FsmUtil.GetFloatVariable(_control, "Needolin Range"), MinReactDelay = FsmFloat.op_Implicit(0f), MaxReactDelay = FsmFloat.op_Implicit(0.5f), None = FsmEvent.GetFsmEvent("END"), ActiveInner = new FsmEvent(""), ActiveOuter = new FsmEvent(""), IgnoreNeedolinRange = FsmBool.op_Implicit(false), UseActiveBool = FsmBool.op_Implicit(false), ActiveBool = FsmBool.op_Implicit(false), StoreState = FsmEnum.op_Implicit((Enum)(object)(AffectedState)0), EveryFrame = true }, (FsmStateAction)new SetAudioClip { gameObject = new FsmOwnerDefault(), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "phantomSing")), autoPlay = FsmBool.op_Implicit(true), stopOnExit = FsmBool.op_Implicit(true) }, (FsmStateAction)new SetStringValue { stringValue = FsmString.op_Implicit("STOP SING"), stringVariable = FsmUtil.GetStringVariable(_control, "NextState") }, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(15f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddState(_control, "Lace Scoff").Position = new Rect(0f, 200f, 20f, 20f); FsmUtil.AddState(_control, "Lace Crouch").Position = new Rect(0f, 200f, 20f, 20f); FsmUtil.AddState(_control, "Lace Lays").Position = new Rect(0f, 200f, 20f, 20f); FsmUtil.AddState(_control, "Lace Idle").Position = new Rect(0f, 200f, 20f, 20f); FsmUtil.AddTransition(_control, "Lace Rise", "END", "Lace Scoff"); FsmUtil.AddTransition(_control, "Lace Stand", "END", "Lace Scoff"); FsmUtil.AddTransition(_control, "Lace Sing", "END", "Lace Scoff"); FsmUtil.AddTransition(_control, "Lace Scoff", "SLEEP", "Lace Lays"); FsmUtil.AddTransition(_control, "Lace Scoff", "CROUCH", "Lace Crouch"); FsmUtil.AddTransition(_control, "Lace Scoff", "STOP SING", "Lace Idle"); FsmUtil.AddTransition(_control, "Lace Idle", "FINISHED", "Lace Crouch"); FsmUtil.AddTransition(_control, "Lace Crouch", "FINISHED", "Lace Lays"); FsmUtil.AddTransition(_control, "Lace Lays", "FINISHED", "Needolin Ready"); FsmUtil.AddMethod(_control, "Lace Scoff", (Action)makeFliesPerch, false); FsmUtil.AddActions(_control, "Lace Scoff", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new SetAudioPitch { gameObject = new FsmOwnerDefault(), pitch = FsmFloat.op_Implicit(1f) }, (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(true), boolVariable = FsmUtil.GetBoolVariable(_control, "Scoff") } }); FsmUtil.AddMethod(_control, "Lace Scoff", (Action)makeFliesPerch, false); FsmUtil.AddActions(_control, "Lace Scoff", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new IntAdd { add = FsmInt.op_Implicit(1), intVariable = FsmUtil.GetIntVariable(_control, "Lace Pissed Off Count") }, (FsmStateAction)new IntCompare { integer1 = FsmUtil.GetIntVariable(_control, "Lace Pissed Off Count"), integer2 = FsmInt.op_Implicit(3), equal = FsmEvent.GetFsmEvent("RAGE"), greaterThan = FsmEvent.GetFsmEvent(""), lessThan = FsmEvent.GetFsmEvent(""), everyFrame = false }, (FsmStateAction)new SendEventByName { eventTarget = new FsmEventTarget { target = (EventTarget)0 }, sendEvent = FsmUtil.GetStringVariable(_control, "NextState"), delay = FsmFloat.op_Implicit(0f), everyFrame = false } }); FsmUtil.AddActions(_control, "Lace Idle", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("NPC Idle Right"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(1f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddActions(_control, "Lace Crouch", (FsmStateAction[])(object)new FsmStateAction[5] { (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("Crouch"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new AudioPlayRandomVoiceFromTableBool { gameObject = SilkenSisters.instance.laceNPCFSMOwner, audioClipTable = FsmObject.op_Implicit((Object)(object)SilkenSisters.instance.assetManager.audioClipTableCache["LaceGrunt"].Result), pitchOffset = FsmFloat.op_Implicit(0f), forcePlay = false, stopPreviousSound = true, activeBool = FsmUtil.GetBoolVariable(_control, "Scoff") }, (FsmStateAction)new AudioPlayRandomVoiceFromTableV2 { gameObject = SilkenSisters.instance.laceNPCFSMOwner, audioClipTable = FsmObject.op_Implicit((Object)(object)SilkenSisters.instance.assetManager.audioClipTableCache["LaceCollapse"].Result), pitchOffset = FsmFloat.op_Implicit(0f), forcePlay = false, stopPreviousSound = true }, (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Scoff") }, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(0.5f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddActions(_control, "Lace Lays", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new Tk2dPlayAnimationWithEvents { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("BackToSleep"), animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") }, (FsmStateAction)new AudioPlayRandomVoiceFromTableBool { gameObject = SilkenSisters.instance.laceNPCFSMOwner, audioClipTable = FsmObject.op_Implicit((Object)(object)SilkenSisters.instance.assetManager.audioClipTableCache["LaceGrunt"].Result), pitchOffset = FsmFloat.op_Implicit(0f), forcePlay = false, stopPreviousSound = true, activeBool = FsmUtil.GetBoolVariable(_control, "Scoff") }, (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Scoff") } }); FsmUtil.AddActions(_control, "Needolin Ready", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("Lie"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new SetPosition { gameObject = SilkenSisters.instance.laceNPCFSMOwner, x = FsmFloat.op_Implicit(83.5752f), y = FsmFloat.op_Implicit(107.0726f), z = FsmFloat.op_Implicit(3.4021f), vector = FsmVector3.op_Implicit(new Vector3(83.5752f, 107.0726f, 3.4021f)), everyFrame = false } }); } private void PunishHornet() { //IL_019f: Unknown result type (might be due to invalid IL or missing references) //IL_01a4: Unknown result type (might be due to invalid IL or missing references) //IL_01af: Unknown result type (might be due to invalid IL or missing references) //IL_01b1: Unknown result type (might be due to invalid IL or missing references) //IL_01b6: Unknown result type (might be due to invalid IL or missing references) //IL_01b8: Unknown result type (might be due to invalid IL or missing references) //IL_01bd: Unknown result type (might be due to invalid IL or missing references) //IL_01be: Unknown result type (might be due to invalid IL or missing references) //IL_01c3: Unknown result type (might be due to invalid IL or missing references) //IL_01d3: Expected O, but got Unknown //IL_01d4: Expected O, but got Unknown //IL_01d6: 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_01e6: Unknown result type (might be due to invalid IL or missing references) //IL_01e8: Unknown result type (might be due to invalid IL or missing references) //IL_01ed: Unknown result type (might be due to invalid IL or missing references) //IL_01ef: Unknown result type (might be due to invalid IL or missing references) //IL_01f4: Unknown result type (might be due to invalid IL or missing references) //IL_01f5: Unknown result type (might be due to invalid IL or missing references) //IL_01fa: Unknown result type (might be due to invalid IL or missing references) //IL_020a: Expected O, but got Unknown //IL_020b: Expected O, but got Unknown //IL_0223: 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_0229: Unknown result type (might be due to invalid IL or missing references) //IL_0233: Expected O, but got Unknown //IL_0233: 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_0253: Unknown result type (might be due to invalid IL or missing references) //IL_0264: Expected O, but got Unknown //IL_0266: 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_026c: Unknown result type (might be due to invalid IL or missing references) //IL_0276: Expected O, but got Unknown //IL_0276: Unknown result type (might be due to invalid IL or missing references) //IL_0286: Unknown result type (might be due to invalid IL or missing references) //IL_0292: Unknown result type (might be due to invalid IL or missing references) //IL_029e: Unknown result type (might be due to invalid IL or missing references) //IL_02aa: Unknown result type (might be due to invalid IL or missing references) //IL_02b6: Unknown result type (might be due to invalid IL or missing references) //IL_02c2: Unknown result type (might be due to invalid IL or missing references) //IL_02ca: Expected O, but got Unknown //IL_02cc: Unknown result type (might be due to invalid IL or missing references) //IL_02d1: Unknown result type (might be due to invalid IL or missing references) //IL_02e7: Unknown result type (might be due to invalid IL or missing references) //IL_02f7: Unknown result type (might be due to invalid IL or missing references) //IL_0307: Unknown result type (might be due to invalid IL or missing references) //IL_0317: Unknown result type (might be due to invalid IL or missing references) //IL_033b: Unknown result type (might be due to invalid IL or missing references) //IL_0350: Unknown result type (might be due to invalid IL or missing references) //IL_0355: Unknown result type (might be due to invalid IL or missing references) //IL_0367: Unknown result type (might be due to invalid IL or missing references) //IL_0377: 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_037d: Unknown result type (might be due to invalid IL or missing references) //IL_0388: Unknown result type (might be due to invalid IL or missing references) //IL_0394: Expected O, but got Unknown //IL_0395: Expected O, but got Unknown //IL_0397: Unknown result type (might be due to invalid IL or missing references) //IL_039c: Unknown result type (might be due to invalid IL or missing references) //IL_03b2: Unknown result type (might be due to invalid IL or missing references) //IL_03c2: Unknown result type (might be due to invalid IL or missing references) //IL_03d2: Unknown result type (might be due to invalid IL or missing references) //IL_03e2: Unknown result type (might be due to invalid IL or missing references) //IL_0406: 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_0420: Unknown result type (might be due to invalid IL or missing references) //IL_0432: Unknown result type (might be due to invalid IL or missing references) //IL_0442: Unknown result type (might be due to invalid IL or missing references) //IL_0443: Unknown result type (might be due to invalid IL or missing references) //IL_0448: Unknown result type (might be due to invalid IL or missing references) //IL_0453: Unknown result type (might be due to invalid IL or missing references) //IL_045f: Expected O, but got Unknown //IL_0460: Expected O, but got Unknown //IL_0462: Unknown result type (might be due to invalid IL or missing references) //IL_0467: Unknown result type (might be due to invalid IL or missing references) //IL_0477: Unknown result type (might be due to invalid IL or missing references) //IL_048c: Unknown result type (might be due to invalid IL or missing references) //IL_0491: Unknown result type (might be due to invalid IL or missing references) //IL_04a3: Unknown result type (might be due to invalid IL or missing references) //IL_04b3: Unknown result type (might be due to invalid IL or missing references) //IL_04ba: Unknown result type (might be due to invalid IL or missing references) //IL_04c2: Expected O, but got Unknown //IL_04c4: Unknown result type (might be due to invalid IL or missing references) //IL_04c9: Unknown result type (might be due to invalid IL or missing references) //IL_04d4: Unknown result type (might be due to invalid IL or missing references) //IL_04e5: Unknown result type (might be due to invalid IL or missing references) //IL_04ec: Unknown result type (might be due to invalid IL or missing references) //IL_04fc: Unknown result type (might be due to invalid IL or missing references) //IL_0508: Unknown result type (might be due to invalid IL or missing references) //IL_050f: Unknown result type (might be due to invalid IL or missing references) //IL_0516: Unknown result type (might be due to invalid IL or missing references) //IL_0522: Expected O, but got Unknown //IL_0524: Unknown result type (might be due to invalid IL or missing references) //IL_0529: Unknown result type (might be due to invalid IL or missing references) //IL_0534: Unknown result type (might be due to invalid IL or missing references) //IL_0544: Unknown result type (might be due to invalid IL or missing references) //IL_0555: Expected O, but got Unknown //IL_0557: Unknown result type (might be due to invalid IL or missing references) //IL_055c: Unknown result type (might be due to invalid IL or missing references) //IL_056c: Unknown result type (might be due to invalid IL or missing references) //IL_057d: Expected O, but got Unknown //IL_05b2: Unknown result type (might be due to invalid IL or missing references) //IL_05b7: Unknown result type (might be due to invalid IL or missing references) //IL_05c7: Unknown result type (might be due to invalid IL or missing references) //IL_05d7: Unknown result type (might be due to invalid IL or missing references) //IL_05e8: Expected O, but got Unknown //IL_05ea: Unknown result type (might be due to invalid IL or missing references) //IL_05ef: Unknown result type (might be due to invalid IL or missing references) //IL_0605: Unknown result type (might be due to invalid IL or missing references) //IL_0615: Unknown result type (might be due to invalid IL or missing references) //IL_0625: Unknown result type (might be due to invalid IL or missing references) //IL_0635: Unknown result type (might be due to invalid IL or missing references) //IL_0659: Unknown result type (might be due to invalid IL or missing references) //IL_066e: Unknown result type (might be due to invalid IL or missing references) //IL_0673: Unknown result type (might be due to invalid IL or missing references) //IL_0685: Unknown result type (might be due to invalid IL or missing references) //IL_0695: Unknown result type (might be due to invalid IL or missing references) //IL_0696: Unknown result type (might be due to invalid IL or missing references) //IL_069b: Unknown result type (might be due to invalid IL or missing references) //IL_06a6: Unknown result type (might be due to invalid IL or missing references) //IL_06b2: Expected O, but got Unknown //IL_06b3: Expected O, but got Unknown //IL_06e8: Unknown result type (might be due to invalid IL or missing references) //IL_06ed: Unknown result type (might be due to invalid IL or missing references) //IL_0703: Unknown result type (might be due to invalid IL or missing references) //IL_0713: Unknown result type (might be due to invalid IL or missing references) //IL_0723: Unknown result type (might be due to invalid IL or missing references) //IL_0724: Unknown result type (might be due to invalid IL or missing references) //IL_072e: Expected O, but got Unknown //IL_072e: Unknown result type (might be due to invalid IL or missing references) //IL_0730: Unknown result type (might be due to invalid IL or missing references) //IL_0735: Unknown result type (might be due to invalid IL or missing references) //IL_0736: Unknown result type (might be due to invalid IL or missing references) //IL_073b: Unknown result type (might be due to invalid IL or missing references) //IL_0742: Unknown result type (might be due to invalid IL or missing references) //IL_0752: Expected O, but got Unknown //IL_0752: Unknown result type (might be due to invalid IL or missing references) //IL_0759: Unknown result type (might be due to invalid IL or missing references) //IL_0761: Expected O, but got Unknown //IL_0763: Unknown result type (might be due to invalid IL or missing references) //IL_0768: Unknown result type (might be due to invalid IL or missing references) //IL_0773: Unknown result type (might be due to invalid IL or missing references) //IL_0783: Unknown result type (might be due to invalid IL or missing references) //IL_0794: Expected O, but got Unknown //IL_0796: Unknown result type (might be due to invalid IL or missing references) //IL_079b: Unknown result type (might be due to invalid IL or missing references) //IL_07b1: Unknown result type (might be due to invalid IL or missing references) //IL_07c1: Unknown result type (might be due to invalid IL or missing references) //IL_07d1: Unknown result type (might be due to invalid IL or missing references) //IL_07e1: Unknown result type (might be due to invalid IL or missing references) //IL_0805: Unknown result type (might be due to invalid IL or missing references) //IL_081a: Unknown result type (might be due to invalid IL or missing references) //IL_081f: Unknown result type (might be due to invalid IL or missing references) //IL_0831: Unknown result type (might be due to invalid IL or missing references) //IL_0841: Unknown result type (might be due to invalid IL or missing references) //IL_0842: Unknown result type (might be due to invalid IL or missing references) //IL_0847: Unknown result type (might be due to invalid IL or missing references) //IL_0852: Unknown result type (might be due to invalid IL or missing references) //IL_085e: Expected O, but got Unknown //IL_085f: Expected O, but got Unknown //IL_0861: Unknown result type (might be due to invalid IL or missing references) //IL_0866: Unknown result type (might be due to invalid IL or missing references) //IL_0871: Unknown result type (might be due to invalid IL or missing references) //IL_0882: Unknown result type (might be due to invalid IL or missing references) //IL_0889: Unknown result type (might be due to invalid IL or missing references) //IL_0899: Unknown result type (might be due to invalid IL or missing references) //IL_08a5: Unknown result type (might be due to invalid IL or missing references) //IL_08ac: Unknown result type (might be due to invalid IL or missing references) //IL_08b3: Unknown result type (might be due to invalid IL or missing references) //IL_08bf: Expected O, but got Unknown //IL_08c1: Unknown result type (might be due to invalid IL or missing references) //IL_08c6: Unknown result type (might be due to invalid IL or missing references) //IL_08c7: Unknown result type (might be due to invalid IL or missing references) //IL_08d1: Expected O, but got Unknown //IL_08d1: Unknown result type (might be due to invalid IL or missing references) //IL_08e1: Unknown result type (might be due to invalid IL or missing references) //IL_08e8: Unknown result type (might be due to invalid IL or missing references) //IL_08f8: Unknown result type (might be due to invalid IL or missing references) //IL_0904: Unknown result type (might be due to invalid IL or missing references) //IL_090b: Unknown result type (might be due to invalid IL or missing references) //IL_0912: Unknown result type (might be due to invalid IL or missing references) //IL_091e: Expected O, but got Unknown //IL_0920: Unknown result type (might be due to invalid IL or missing references) //IL_0925: Unknown result type (might be due to invalid IL or missing references) //IL_0935: Unknown result type (might be due to invalid IL or missing references) //IL_0945: Unknown result type (might be due to invalid IL or missing references) //IL_0956: Expected O, but got Unknown //IL_0958: Unknown result type (might be due to invalid IL or missing references) //IL_095d: Unknown result type (might be due to invalid IL or missing references) //IL_0973: Unknown result type (might be due to invalid IL or missing references) //IL_0983: Unknown result type (might be due to invalid IL or missing references) //IL_0993: Unknown result type (might be due to invalid IL or missing references) //IL_09a3: Unknown result type (might be due to invalid IL or missing references) //IL_09c7: Unknown result type (might be due to invalid IL or missing references) //IL_09dc: Unknown result type (might be due to invalid IL or missing references) //IL_09e1: Unknown result type (might be due to invalid IL or missing references) //IL_09f3: Unknown result type (might be due to invalid IL or missing references) //IL_0a03: Unknown result type (might be due to invalid IL or missing references) //IL_0a04: Unknown result type (might be due to invalid IL or missing references) //IL_0a09: Unknown result type (might be due to invalid IL or missing references) //IL_0a14: Unknown result type (might be due to invalid IL or missing references) //IL_0a20: Expected O, but got Unknown //IL_0a21: Expected O, but got Unknown //IL_0a39: Unknown result type (might be due to invalid IL or missing references) //IL_0a3e: Unknown result type (might be due to invalid IL or missing references) //IL_0a4e: Unknown result type (might be due to invalid IL or missing references) //IL_0a5e: Unknown result type (might be due to invalid IL or missing references) //IL_0a6f: Expected O, but got Unknown //IL_0a71: Unknown result type (might be due to invalid IL or missing references) //IL_0a76: Unknown result type (might be due to invalid IL or missing references) //IL_0a77: Unknown result type (might be due to invalid IL or missing references) //IL_0a81: Expected O, but got Unknown //IL_0a81: Unknown result type (might be due to invalid IL or missing references) //IL_0a91: Unknown result type (might be due to invalid IL or missing references) //IL_0aa1: Unknown result type (might be due to invalid IL or missing references) //IL_0aa9: Expected O, but got Unknown //IL_0aab: Unknown result type (might be due to invalid IL or missing references) //IL_0ab0: Unknown result type (might be due to invalid IL or missing references) //IL_0ab1: Unknown result type (might be due to invalid IL or missing references) //IL_0abb: Expected O, but got Unknown //IL_0abb: Unknown result type (might be due to invalid IL or missing references) //IL_0acb: Unknown result type (might be due to invalid IL or missing references) //IL_0adb: Unknown result type (might be due to invalid IL or missing references) //IL_0ae3: Expected O, but got Unknown //IL_0ae5: Unknown result type (might be due to invalid IL or missing references) //IL_0aea: Unknown result type (might be due to invalid IL or missing references) //IL_0b00: Unknown result type (might be due to invalid IL or missing references) //IL_0b10: Unknown result type (might be due to invalid IL or missing references) //IL_0b20: Unknown result type (might be due to invalid IL or missing references) //IL_0b30: Unknown result type (might be due to invalid IL or missing references) //IL_0b54: Unknown result type (might be due to invalid IL or missing references) //IL_0b69: Unknown result type (might be due to invalid IL or missing references) //IL_0b6e: Unknown result type (might be due to invalid IL or missing references) //IL_0b80: Unknown result type (might be due to invalid IL or missing references) //IL_0b90: Unknown result type (might be due to invalid IL or missing references) //IL_0b91: Unknown result type (might be due to invalid IL or missing references) //IL_0b96: Unknown result type (might be due to invalid IL or missing references) //IL_0ba1: Unknown result type (might be due to invalid IL or missing references) //IL_0bad: Expected O, but got Unknown //IL_0bae: Expected O, but got Unknown //IL_0bb0: Unknown result type (might be due to invalid IL or missing references) //IL_0bb5: Unknown result type (might be due to invalid IL or missing references) //IL_0bc5: Unknown result type (might be due to invalid IL or missing references) //IL_0bda: Unknown result type (might be due to invalid IL or missing references) //IL_0bdf: Unknown result type (might be due to invalid IL or missing references) //IL_0bf1: Unknown result type (might be due to invalid IL or missing references) //IL_0c01: Unknown result type (might be due to invalid IL or missing references) //IL_0c08: Unknown result type (might be due to invalid IL or missing references) //IL_0c10: Expected O, but got Unknown //IL_0c12: Unknown result type (might be due to invalid IL or missing references) //IL_0c17: Unknown result type (might be due to invalid IL or missing references) //IL_0c27: Unknown result type (might be due to invalid IL or missing references) //IL_0c38: Expected O, but got Unknown //IL_0c51: Unknown result type (might be due to invalid IL or missing references) //IL_0c56: Unknown result type (might be due to invalid IL or missing references) //IL_0c57: Unknown result type (might be due to invalid IL or missing references) //IL_0c61: Expected O, but got Unknown //IL_0c61: Unknown result type (might be due to invalid IL or missing references) //IL_0c71: Unknown result type (might be due to invalid IL or missing references) //IL_0c81: Unknown result type (might be due to invalid IL or missing references) //IL_0c88: Unknown result type (might be due to invalid IL or missing references) //IL_0c89: Unknown result type (might be due to invalid IL or missing references) //IL_0c8e: Unknown result type (might be due to invalid IL or missing references) //IL_0c95: Unknown result type (might be due to invalid IL or missing references) //IL_0ca5: Expected O, but got Unknown //IL_0ca6: Expected O, but got Unknown //IL_0ca8: Unknown result type (might be due to invalid IL or missing references) //IL_0cad: Unknown result type (might be due to invalid IL or missing references) //IL_0cb8: Unknown result type (might be due to invalid IL or missing references) //IL_0cc9: Unknown result type (might be due to invalid IL or missing references) //IL_0cd0: Unknown result type (might be due to invalid IL or missing references) //IL_0ce0: Unknown result type (might be due to invalid IL or missing references) //IL_0cec: Unknown result type (might be due to invalid IL or missing references) //IL_0cf3: Unknown result type (might be due to invalid IL or missing references) //IL_0cfa: Unknown result type (might be due to invalid IL or missing references) //IL_0d06: Expected O, but got Unknown //IL_0d08: Unknown result type (might be due to invalid IL or missing references) //IL_0d0d: Unknown result type (might be due to invalid IL or missing references) //IL_0d22: Unknown result type (might be due to invalid IL or missing references) //IL_0d27: Unknown result type (might be due to invalid IL or missing references) //IL_0d39: Unknown result type (might be due to invalid IL or missing references) //IL_0d44: Unknown result type (might be due to invalid IL or missing references) //IL_0d45: Unknown result type (might be due to invalid IL or missing references) //IL_0d4a: Unknown result type (might be due to invalid IL or missing references) //IL_0d5a: Unknown result type (might be due to invalid IL or missing references) //IL_0d69: Expected O, but got Unknown //IL_0d69: Unknown result type (might be due to invalid IL or missing references) //IL_0d75: Unknown result type (might be due to invalid IL or missing references) //IL_0d76: Unknown result type (might be due to invalid IL or missing references) //IL_0d80: Expected O, but got Unknown //IL_0d80: Unknown result type (might be due to invalid IL or missing references) //IL_0d81: Unknown result type (might be due to invalid IL or missing references) //IL_0d8b: Expected O, but got Unknown //IL_0d8c: Expected O, but got Unknown //IL_0d8e: Unknown result type (might be due to invalid IL or missing references) //IL_0d93: Unknown result type (might be due to invalid IL or missing references) //IL_0d94: Unknown result type (might be due to invalid IL or missing references) //IL_0d99: Unknown result type (might be due to invalid IL or missing references) //IL_0da0: Unknown result type (might be due to invalid IL or missing references) //IL_0dbf: Expected O, but got Unknown //IL_0dbf: Unknown result type (might be due to invalid IL or missing references) //IL_0dcb: Unknown result type (might be due to invalid IL or missing references) //IL_0dd2: Unknown result type (might be due to invalid IL or missing references) //IL_0dde: Unknown result type (might be due to invalid IL or missing references) //IL_0de6: Expected O, but got Unknown //IL_0de8: Unknown result type (might be due to invalid IL or missing references) //IL_0ded: Unknown result type (might be due to invalid IL or missing references) //IL_0dee: Unknown result type (might be due to invalid IL or missing references) //IL_0df3: Unknown result type (might be due to invalid IL or missing references) //IL_0dfa: Unknown result type (might be due to invalid IL or missing references) //IL_0e19: Expected O, but got Unknown //IL_0e19: Unknown result type (might be due to invalid IL or missing references) //IL_0e25: Unknown result type (might be due to invalid IL or missing references) //IL_0e2c: Unknown result type (might be due to invalid IL or missing references) //IL_0e38: Unknown result type (might be due to invalid IL or missing references) //IL_0e40: Expected O, but got Unknown //IL_0e42: Unknown result type (might be due to invalid IL or missing references) //IL_0e47: Unknown result type (might be due to invalid IL or missing references) //IL_0e52: Unknown result type (might be due to invalid IL or missing references) //IL_0e62: Unknown result type (might be due to invalid IL or missing references) //IL_0e73: Expected O, but got Unknown //IL_0e75: Unknown result type (might be due to invalid IL or missing references) //IL_0e7a: Unknown result type (might be due to invalid IL or missing references) //IL_0e90: Unknown result type (might be due to invalid IL or missing references) //IL_0ea0: Unknown result type (might be due to invalid IL or missing references) //IL_0eb0: Unknown result type (might be due to invalid IL or missing references) //IL_0ec0: Unknown result type (might be due to invalid IL or missing references) //IL_0ee4: Unknown result type (might be due to invalid IL or missing references) //IL_0ef9: Unknown result type (might be due to invalid IL or missing references) //IL_0efe: Unknown result type (might be due to invalid IL or missing references) //IL_0f10: Unknown result type (might be due to invalid IL or missing references) //IL_0f20: Unknown result type (might be due to invalid IL or missing references) //IL_0f21: Unknown result type (might be due to invalid IL or missing references) //IL_0f26: Unknown result type (might be due to invalid IL or missing references) //IL_0f31: Unknown result type (might be due to invalid IL or missing references) //IL_0f3d: Expected O, but got Unknown //IL_0f3e: Expected O, but got Unknown //IL_0f40: Unknown result type (might be due to invalid IL or missing references) //IL_0f45: Unknown result type (might be due to invalid IL or missing references) //IL_0f50: Unknown result type (might be due to invalid IL or missing references) //IL_0f52: Unknown result type (might be due to invalid IL or missing references) //IL_0f57: Unknown result type (might be due to invalid IL or missing references) //IL_0f59: Unknown result type (might be due to invalid IL or missing references) //IL_0f5e: Unknown result type (might be due to invalid IL or missing references) //IL_0f5f: Unknown result type (might be due to invalid IL or missing references) //IL_0f64: Unknown result type (might be due to invalid IL or missing references) //IL_0f6f: Unknown result type (might be due to invalid IL or missing references) //IL_0f7f: Expected O, but got Unknown //IL_0f80: Expected O, but got Unknown //IL_0f82: Unknown result type (might be due to invalid IL or missing references) //IL_0f87: Unknown result type (might be due to invalid IL or missing references) //IL_0f97: Unknown result type (might be due to invalid IL or missing references) //IL_0fa8: Expected O, but got Unknown //IL_0fc0: Unknown result type (might be due to invalid IL or missing references) //IL_0fc5: Unknown result type (might be due to invalid IL or missing references) //IL_0fd5: Unknown result type (might be due to invalid IL or missing references) //IL_0fe5: Unknown result type (might be due to invalid IL or missing references) //IL_0ff6: Expected O, but got Unknown //IL_0ff8: Unknown result type (might be due to invalid IL or missing references) //IL_0ffd: Unknown result type (might be due to invalid IL or missing references) //IL_0ffe: Unknown result type (might be due to invalid IL or missing references) //IL_1008: Expected O, but got Unknown //IL_1008: Unknown result type (might be due to invalid IL or missing references) //IL_1018: Unknown result type (might be due to invalid IL or missing references) //IL_1028: Unknown result type (might be due to invalid IL or missing references) //IL_1030: Expected O, but got Unknown //IL_1032: Unknown result type (might be due to invalid IL or missing references) //IL_1037: Unknown result type (might be due to invalid IL or missing references) //IL_1038: Unknown result type (might be due to invalid IL or missing references) //IL_1042: Expected O, but got Unknown //IL_1042: Unknown result type (might be due to invalid IL or missing references) //IL_1052: Unknown result type (might be due to invalid IL or missing references) //IL_1062: Unknown result type (might be due to invalid IL or missing references) //IL_106a: Expected O, but got Unknown //IL_106c: Unknown result type (might be due to invalid IL or missing references) //IL_1071: Unknown result type (might be due to invalid IL or missing references) //IL_1072: Unknown result type (might be due to invalid IL or missing references) //IL_1077: Unknown result type (might be due to invalid IL or missing references) //IL_107e: Unknown result type (might be due to invalid IL or missing references) //IL_10a3: Expected O, but got Unknown //IL_10a3: Unknown result type (might be due to invalid IL or missing references) //IL_10af: Unknown result type (might be due to invalid IL or missing references) //IL_10b6: Unknown result type (might be due to invalid IL or missing references) //IL_10c2: Unknown result type (might be due to invalid IL or missing references) //IL_10ca: Expected O, but got Unknown //IL_10cc: Unknown result type (might be due to invalid IL or missing references) //IL_10d1: Unknown result type (might be due to invalid IL or missing references) //IL_10d2: Unknown result type (might be due to invalid IL or missing references) //IL_10d7: Unknown result type (might be due to invalid IL or missing references) //IL_10de: Unknown result type (might be due to invalid IL or missing references) //IL_1103: Expected O, but got Unknown //IL_1103: Unknown result type (might be due to invalid IL or missing references) //IL_110f: Unknown result type (might be due to invalid IL or missing references) //IL_1116: Unknown result type (might be due to invalid IL or missing references) //IL_1122: Unknown result type (might be due to invalid IL or missing references) //IL_112a: Expected O, but got Unknown //IL_112c: Unknown result type (might be due to invalid IL or missing references) //IL_1131: Unknown result type (might be due to invalid IL or missing references) //IL_1147: Unknown result type (might be due to invalid IL or missing references) //IL_1157: Unknown result type (might be due to invalid IL or missing references) //IL_1167: Unknown result type (might be due to invalid IL or missing references) //IL_1177: Unknown result type (might be due to invalid IL or missing references) //IL_119b: Unknown result type (might be due to invalid IL or missing references) //IL_11b0: Unknown result type (might be due to invalid IL or missing references) //IL_11b5: Unknown result type (might be due to invalid IL or missing references) //IL_11c7: Unknown result type (might be due to invalid IL or missing references) //IL_11d7: Unknown result type (might be due to invalid IL or missing references) //IL_11d8: Unknown result type (might be due to invalid IL or missing references) //IL_11dd: Unknown result type (might be due to invalid IL or missing references) //IL_11e8: Unknown result type (might be due to invalid IL or missing references) //IL_11f4: Expected O, but got Unknown //IL_11f5: Expected O, but got Unknown //IL_122a: Unknown result type (might be due to invalid IL or missing references) //IL_122f: Unknown result type (might be due to invalid IL or missing references) //IL_1244: Unknown result type (might be due to invalid IL or missing references) //IL_1250: Unknown result type (might be due to invalid IL or missing references) //IL_1260: Unknown result type (might be due to invalid IL or missing references) //IL_126d: Expected O, but got Unknown //IL_126f: Unknown result type (might be due to invalid IL or missing references) //IL_1274: Unknown result type (might be due to invalid IL or missing references) //IL_1275: Unknown result type (might be due to invalid IL or missing references) //IL_127f: Expected O, but got Unknown //IL_127f: Unknown result type (might be due to invalid IL or missing references) //IL_128f: Unknown result type (might be due to invalid IL or missing references) //IL_129f: Unknown result type (might be due to invalid IL or missing references) //IL_12a7: Expected O, but got Unknown //IL_12a9: Unknown result type (might be due to invalid IL or missing references) //IL_12ae: Unknown result type (might be due to invalid IL or missing references) //IL_12be: Unknown result type (might be due to invalid IL or missing references) //IL_12ce: Unknown result type (might be due to invalid IL or missing references) //IL_12df: Expected O, but got Unknown //IL_1314: Unknown result type (might be due to invalid IL or missing references) //IL_1319: Unknown result type (might be due to invalid IL or missing references) //IL_131a: Unknown result type (might be due to invalid IL or missing references) //IL_1324: Expected O, but got Unknown //IL_1324: Unknown result type (might be due to invalid IL or missing references) //IL_1334: Unknown result type (might be due to invalid IL or missing references) //IL_133b: Unknown result type (might be due to invalid IL or missing references) //IL_134b: Unknown result type (might be due to invalid IL or missing references) //IL_1357: Unknown result type (might be due to invalid IL or missing references) //IL_135e: Unknown result type (might be due to invalid IL or missing references) //IL_1365: Unknown result type (might be due to invalid IL or missing references) //IL_1371: Expected O, but got Unknown //IL_1373: Unknown result type (might be due to invalid IL or missing references) //IL_1378: Unknown result type (might be due to invalid IL or missing references) //IL_1388: Unknown result type (might be due to invalid IL or missing references) //IL_1398: Unknown result type (might be due to invalid IL or missing references) //IL_13a9: Expected O, but got Unknown //IL_13ab: Unknown result type (might be due to invalid IL or missing references) //IL_13b0: Unknown result type (might be due to invalid IL or missing references) //IL_13c6: Unknown result type (might be due to invalid IL or missing references) //IL_13d6: Unknown result type (might be due to invalid IL or missing references) //IL_13e6: Unknown result type (might be due to invalid IL or missing references) //IL_13f6: Unknown result type (might be due to invalid IL or missing references) //IL_141a: Unknown result type (might be due to invalid IL or missing references) //IL_142f: Unknown result type (might be due to invalid IL or missing references) //IL_1434: Unknown result type (might be due to invalid IL or missing references) //IL_1446: Unknown result type (might be due to invalid IL or missing references) //IL_1456: Unknown result type (might be due to invalid IL or missing references) //IL_1457: Unknown result type (might be due to invalid IL or missing references) //IL_145c: Unknown result type (might be due to invalid IL or missing references) //IL_1467: Unknown result type (might be due to invalid IL or missing references) //IL_1473: Expected O, but got Unknown //IL_1474: Expected O, but got Unknown FsmUtil.AddState(_control, "Lock Hornet"); FsmUtil.AddState(_control, "Lace Rage"); FsmUtil.AddState(_control, "Lace Tele Out"); FsmUtil.AddState(_control, "Lace Tele In"); FsmUtil.AddState(_control, "Lace Charge Antic"); FsmUtil.AddState(_control, "Lace Charge Break"); FsmUtil.AddState(_control, "Lace Charge"); FsmUtil.AddState(_control, "Hornet Dies"); FsmUtil.AddState(_control, "Lace Laughs"); FsmUtil.AddTransition(_control, "Lace Scoff", "RAGE", "Lock Hornet"); FsmUtil.AddTransition(_control, "Lock Hornet", "FINISHED", "Lace Rage"); FsmUtil.AddTransition(_control, "Lace Rage", "FINISHED", "Lace Tele Out"); FsmUtil.AddTransition(_control, "Lace Tele Out", "FINISHED", "Lace Tele In"); FsmUtil.AddTransition(_control, "Lace Tele In", "FINISHED", "Lace Charge Antic"); FsmUtil.AddTransition(_control, "Lace Charge Antic", "FINISHED", "Lace Charge Break"); FsmUtil.AddTransition(_control, "Lace Charge Break", "FINISHED", "Lace Charge"); FsmUtil.AddTransition(_control, "Lace Charge", "MULTI HIT CONNECT", "Hornet Dies"); FsmUtil.AddTransition(_control, "Hornet Dies", "FINISHED", "Lace Laughs"); FsmUtil.AddActions(_control, "Lock Hornet", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new SendMessage { gameObject = SilkenSisters.hornetFSMOwner, delivery = (MessageType)0, options = (SendMessageOptions)1, functionCall = new FunctionCall { FunctionName = "RelinquishControl" } }, (FsmStateAction)new SendMessage { gameObject = SilkenSisters.hornetFSMOwner, delivery = (MessageType)0, options = (SendMessageOptions)1, functionCall = new FunctionCall { FunctionName = "StopAnimationControl" } } }); FsmUtil.AddActions(_control, "Lace Rage", (FsmStateAction[])(object)new FsmStateAction[8] { (FsmStateAction)new Tk2dPlayAnimationWithEvents { gameObject = new FsmOwnerDefault(), clipName = FsmString.op_Implicit("Mid Battle Roar"), animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED"), animationTriggerEvent = FsmEvent.GetFsmEvent("") }, (FsmStateAction)new StartRoarEmitter { spawnPoint = new FsmOwnerDefault(), delay = FsmFloat.op_Implicit(0f), stunHero = FsmBool.op_Implicit(false), roarBurst = FsmBool.op_Implicit(false), isSmall = FsmBool.op_Implicit(false), noVisualEffect = FsmBool.op_Implicit(false), forceThroughBind = FsmBool.op_Implicit(false), stopOnExit = true }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Lace"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "laceStance")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Lace"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "miscRumble")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } }, (FsmStateAction)new AudioPlayRandomVoiceFromTableV2 { gameObject = SilkenSisters.instance.laceNPCFSMOwner, audioClipTable = FsmObject.op_Implicit((Object)(object)SilkenSisters.instance.assetManager.audioClipTableCache["LaceWail"].Result), pitchOffset = FsmFloat.op_Implicit(0f), forcePlay = false, stopPreviousSound = true }, (FsmStateAction)new FaceObjectV2 { objectA = SilkenSisters.hornetFSMOwner, objectB = FsmGameObject.op_Implicit(((Component)this).gameObject), playNewAnimation = false, newAnimationClip = FsmString.op_Implicit(""), spriteFacesRight = FsmBool.op_Implicit(false), resetFrame = false, everyFrame = false, pauseBetweenTurns = 0f }, (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.hornetFSMOwner, clipName = FsmString.op_Implicit("Taunt Back Up"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(2f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddMethod(_control, "Lace Rage", (Action)makeFliesLeave, false); FsmUtil.AddActions(_control, "Lace Tele Out", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new Tk2dPlayAnimationWithEvents { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("Tele Out"), animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Lace"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "laceTeleOut")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } } }); FsmUtil.AddMethod(_control, "Lace Tele In", (Action)setTeleXPos, false); FsmUtil.AddActions(_control, "Lace Tele In", (FsmStateAction[])(object)new FsmStateAction[7] { (FsmStateAction)new SetPosition { x = FsmUtil.GetFloatVariable(_control, "TeleX"), y = FsmFloat.op_Implicit(104.5677f), z = FsmFloat.op_Implicit(0f), gameObject = new FsmOwnerDefault(), space = (Space)0, vector = new FsmVector3 { UseVariable = true, Name = "" }, everyFrame = false, lateUpdate = false }, (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.hornetFSMOwner, clipName = FsmString.op_Implicit("Challenge Talk Start"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Hornet"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "hornetSword")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } }, (FsmStateAction)new FaceObjectV2 { objectA = SilkenSisters.hornetFSMOwner, objectB = FsmGameObject.op_Implicit(((Component)this).gameObject), playNewAnimation = false, newAnimationClip = FsmString.op_Implicit(""), spriteFacesRight = FsmBool.op_Implicit(false), resetFrame = false, everyFrame = false, pauseBetweenTurns = 0f }, (FsmStateAction)new FaceObjectV2 { objectA = new FsmOwnerDefault(), objectB = FsmGameObject.op_Implicit(SilkenSisters.hornet), playNewAnimation = false, newAnimationClip = FsmString.op_Implicit(""), spriteFacesRight = FsmBool.op_Implicit(true), resetFrame = false, everyFrame = false, pauseBetweenTurns = 0f }, (FsmStateAction)new Tk2dPlayAnimationWithEvents { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("Tele In"), animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Lace"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "laceTeleIn")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } } }); FsmUtil.AddActions(_control, "Lace Charge Antic", (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("Charge Antic"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new SetVelocityByScale { gameObject = new FsmOwnerDefault(), speed = FsmFloat.op_Implicit(-32f), ySpeed = FsmFloat.op_Implicit(0f), everyFrame = false }, (FsmStateAction)new DecelerateXY { gameObject = new FsmOwnerDefault(), decelerationX = FsmFloat.op_Implicit(0.825f), decelerationY = FsmFloat.op_Implicit(0f), brakeOnExit = true }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Lace"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "laceBackstep")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } }, (FsmStateAction)new AudioPlayRandomVoiceFromTableV2 { gameObject = SilkenSisters.instance.laceNPCFSMOwner, audioClipTable = FsmObject.op_Implicit((Object)(object)SilkenSisters.instance.assetManager.audioClipTableCache["LaceAttack"].Result), pitchOffset = FsmFloat.op_Implicit(0f), forcePlay = false, stopPreviousSound = true }, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(0.15f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddActions(_control, "Lace Charge Break", (FsmStateAction[])(object)new FsmStateAction[9] { (FsmStateAction)new SetVelocity2d { gameObject = new FsmOwnerDefault(), x = FsmFloat.op_Implicit(0f), y = FsmFloat.op_Implicit(0f), everyFrame = false, vector = new FsmVector2 { UseVariable = true, Name = "" } }, (FsmStateAction)new FaceObjectV2 { objectA = SilkenSisters.hornetFSMOwner, objectB = FsmGameObject.op_Implicit(((Component)this).gameObject), playNewAnimation = false, newAnimationClip = FsmString.op_Implicit(""), spriteFacesRight = FsmBool.op_Implicit(false), resetFrame = false, everyFrame = false, pauseBetweenTurns = 0f }, (FsmStateAction)new PlayRandomAudioClipTableV3 { Table = FsmObject.op_Implicit((Object)(object)SilkenSisters.instance.assetManager.audioClipTableCache["HornetSpeak"].Result), SpawnPoint = SilkenSisters.hornetFSMOwner, SpawnPosition = new FsmVector3 { Value = new Vector3(0f, 0f, 0f) }, ForcePlay = FsmBool.op_Implicit(true), AudioPlayerPrefab = new FsmObject(), StoreSpawned = new FsmGameObject() }, (FsmStateAction)new ActivateGameObject { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)1, GameObject = FsmGameObject.op_Implicit(UnityExtensions.FindChild(SilkenSisters.hornet, "Special Attacks/Parry Stance Flash")) }, activate = FsmBool.op_Implicit(true), everyFrame = false, recursive = FsmBool.op_Implicit(false), resetOnExit = false }, (FsmStateAction)new ActivateGameObject { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)1, GameObject = FsmGameObject.op_Implicit(UnityExtensions.FindChild(SilkenSisters.hornet, "Special Attacks/Parry Thread")) }, activate = FsmBool.op_Implicit(true), everyFrame = false, recursive = FsmBool.op_Implicit(false), resetOnExit = false }, (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.hornetFSMOwner, clipName = FsmString.op_Implicit("Parry Stance Ground"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Hornet"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "hornetParry")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } }, (FsmStateAction)new SendMessage { gameObject = SilkenSisters.hornetFSMOwner, delivery = (MessageType)0, options = (SendMessageOptions)1, functionCall = new FunctionCall { ParameterType = "None", FunctionName = "flashArmoured" } }, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(0.2f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddActions(_control, "Lace Charge", (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("Charge"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new SetVelocityByScale { gameObject = new FsmOwnerDefault(), speed = FsmFloat.op_Implicit(70f), ySpeed = FsmFloat.op_Implicit(0f), everyFrame = false }, (FsmStateAction)new DecelerateXY { gameObject = new FsmOwnerDefault(), decelerationX = FsmFloat.op_Implicit(0.8f), decelerationY = FsmFloat.op_Implicit(0f), brakeOnExit = false }, (FsmStateAction)new ActivateGameObject { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)1, GameObject = FsmGameObject.op_Implicit(FsmUtil.GetGameObjectVariable(_control, "Dash Burst").Value) }, activate = FsmBool.op_Implicit(true), resetOnExit = false, recursive = FsmBool.op_Implicit(false), everyFrame = false }, (FsmStateAction)new ActivateGameObject { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)1, GameObject = FsmGameObject.op_Implicit(FsmUtil.GetGameObjectVariable(_control, "Charge Hit").Value) }, activate = FsmBool.op_Implicit(true), resetOnExit = true, recursive = FsmBool.op_Implicit(false), everyFrame = false }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Lace"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "laceBackstep")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } } }); FsmUtil.AddMethod(_control, "Hornet Dies", (Action)SetLaceMet, false); FsmUtil.AddActions(_control, "Hornet Dies", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new SetDeathRespawn { gameManager = FsmGameObject.op_Implicit(((Component)GameManager.instance).gameObject), respawnFacingRight = FsmBool.op_Implicit(false), respawnMarkerName = FsmString.op_Implicit("Death Respawn Marker"), respawnType = FsmInt.op_Implicit(0) }, (FsmStateAction)new DecelerateXY { gameObject = new FsmOwnerDefault(), decelerationX = FsmFloat.op_Implicit(0.825f), decelerationY = FsmFloat.op_Implicit(0f), brakeOnExit = true }, (FsmStateAction)new Tk2dPlayAnimationWithEvents { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("Charge Recover"), animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddMethod(_control, "Hornet Dies", (Action)KnockOutHornet, false); FsmUtil.AddActions(_control, "Lace Laughs", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new FaceObjectV2 { objectA = new FsmOwnerDefault(), objectB = FsmGameObject.op_Implicit(SilkenSisters.hornet), playNewAnimation = false, newAnimationClip = FsmString.op_Implicit(""), spriteFacesRight = FsmBool.op_Implicit(true), resetFrame = false, everyFrame = false, pauseBetweenTurns = 0f }, (FsmStateAction)new Tk2dPlayAnimationWithEvents { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("Laugh"), animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED") }, (FsmStateAction)new AudioPlayerOneShotSingle { spawnPoint = FsmUtil.GetGameObjectVariable(_control, "Hornet"), delay = FsmFloat.op_Implicit(0f), pitchMax = FsmFloat.op_Implicit(1f), pitchMin = FsmFloat.op_Implicit(1f), audioClip = FsmObject.op_Implicit((Object)(object)ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.audioClipCache, "laceLaugh")), audioPlayer = FsmGameObject.op_Implicit(SilkenSisters.instance.assetManager.prefabCache["AudioPlayerActor"].Result), volume = FsmFloat.op_Implicit(1f), storePlayer = new FsmGameObject { name = "", useVariable = true } } }); } private void SetLaceLeave() { //IL_003f: Unknown result type (might be due to invalid IL or missing references) //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_0054: Unknown result type (might be due to invalid IL or missing references) //IL_0064: Unknown result type (might be due to invalid IL or missing references) //IL_0075: Expected O, but got Unknown //IL_0077: Unknown result type (might be due to invalid IL or missing references) //IL_007c: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Expected O, but got Unknown //IL_008f: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00a1: Unknown result type (might be due to invalid IL or missing references) //IL_00a6: Unknown result type (might be due to invalid IL or missing references) //IL_00a8: Unknown result type (might be due to invalid IL or missing references) //IL_00ad: Unknown result type (might be due to invalid IL or missing references) //IL_00ae: Unknown result type (might be due to invalid IL or missing references) //IL_00b3: Unknown result type (might be due to invalid IL or missing references) //IL_00c3: Expected O, but got Unknown //IL_00c4: Expected O, but got Unknown //IL_00c6: Unknown result type (might be due to invalid IL or missing references) //IL_00cb: Unknown result type (might be due to invalid IL or missing references) //IL_00d6: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00dd: Unknown result type (might be due to invalid IL or missing references) //IL_00df: Unknown result type (might be due to invalid IL or missing references) //IL_00e4: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_00ea: Unknown result type (might be due to invalid IL or missing references) //IL_00fa: Expected O, but got Unknown //IL_00fb: Expected O, but got Unknown //IL_00fd: Unknown result type (might be due to invalid IL or missing references) //IL_0102: Unknown result type (might be due to invalid IL or missing references) //IL_010d: 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 //IL_0130: Unknown result type (might be due to invalid IL or missing references) //IL_0135: 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_0156: Expected O, but got Unknown //IL_019a: 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) //IL_01af: Unknown result type (might be due to invalid IL or missing references) //IL_01c4: Unknown result type (might be due to invalid IL or missing references) //IL_01c9: 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_01eb: Unknown result type (might be due to invalid IL or missing references) //IL_01f2: Unknown result type (might be due to invalid IL or missing references) //IL_01fa: Expected O, but got Unknown //IL_01fc: Unknown result type (might be due to invalid IL or missing references) //IL_0201: 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_0221: Unknown result type (might be due to invalid IL or missing references) //IL_0222: Unknown result type (might be due to invalid IL or missing references) //IL_022c: Expected O, but got Unknown //IL_022c: 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_0244: Unknown result type (might be due to invalid IL or missing references) //IL_0250: Unknown result type (might be due to invalid IL or missing references) //IL_0261: Unknown result type (might be due to invalid IL or missing references) //IL_0271: Unknown result type (might be due to invalid IL or missing references) //IL_0281: Expected O, but got Unknown //IL_0282: Expected O, but got Unknown FsmUtil.AddState(_control, "Stop Singing"); FsmUtil.AddTransition(_control, "Lace Sing", "FINISHED", "Stop Singing"); FsmUtil.AddActions(_control, "Stop Singing", (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.instance.laceNPCFSMOwner, clipName = FsmString.op_Implicit("NPC Idle Right"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new SendEventToRegister { eventName = FsmString.op_Implicit("FSM CANCEL") }, (FsmStateAction)new SendMessage { gameObject = SilkenSisters.hornetFSMOwner, delivery = (MessageType)0, options = (SendMessageOptions)1, functionCall = new FunctionCall { FunctionName = "RelinquishControl" } }, (FsmStateAction)new SendMessage { gameObject = SilkenSisters.hornetFSMOwner, delivery = (MessageType)0, options = (SendMessageOptions)1, functionCall = new FunctionCall { FunctionName = "StopAnimationControl" } }, (FsmStateAction)new Tk2dPlayAnimation { gameObject = SilkenSisters.hornetFSMOwner, clipName = FsmString.op_Implicit("Turn Back Three Quarter"), animLibName = FsmString.op_Implicit("") }, (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(1f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") } }); FsmUtil.AddState(_control, "Lace Thanks"); FsmUtil.AddTransition(_control, "Stop Singing", "FINISHED", "Lace Thanks"); PlayMakerFSM control = _control; FsmStateAction[] obj = new FsmStateAction[2] { (FsmStateAction)new AudioPlayRandomVoiceFromTableV2 { gameObject = SilkenSisters.instance.laceNPCFSMOwner, audioClipTable = FsmObject.op_Implicit((Object)(object)SilkenSisters.instance.assetManager.audioClipTableCache["LaceSpeak"].Result), pitchOffset = FsmFloat.op_Implicit(0f), forcePlay = false, stopPreviousSound = true }, default(FsmStateAction) }; RunDialogue val = new RunDialogue { Sheet = FsmString.op_Implicit("Mods.io.github.al3ks1s.silkensisters"), Key = FsmString.op_Implicit("SILKEN_SISTERS_LACE_MOURN_2"), PlayerVoiceTableOverride = new FsmObject(), OverrideContinue = FsmBool.op_Implicit(false), PreventHeroAnimation = FsmBool.op_Implicit(false), HideDecorators = FsmBool.op_Implicit(false), TextAlignment = FsmEnum.op_Implicit((Enum)(object)(TextAlignment)0), OffsetY = FsmFloat.op_Implicit(0f) }; ((GetComponentFsmStateAction)val).Target = SilkenSisters.instance.laceNPCFSMOwner; obj[1] = (FsmStateAction)val; FsmUtil.AddActions(control, "Lace Thanks", (FsmStateAction[])(object)obj); FsmUtil.AddMethod(_control, "Lace Laughs", (Action)SetLaceMet, false); FsmUtil.AddTransition(_control, "Lace Thanks", "CONVO_END", "End Dialogue"); } private void AddOutOfRange() { //IL_007e: 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_0098: Expected O, but got Unknown //IL_00a3: Unknown result type (might be due to invalid IL or missing references) //IL_00a8: Unknown result type (might be due to invalid IL or missing references) //IL_00b8: Unknown result type (might be due to invalid IL or missing references) //IL_00cd: Expected O, but got Unknown FsmUtil.AddState(_control, "Needolin Range Out"); FsmUtil.AddState(_control, "Needolin range wait"); FsmUtil.AddTransition(_control, "Needolin Range Out", "ENTER", "Needolin range wait"); FsmUtil.AddTransition(_control, "Needolin range wait", "FINISHED", "Needolin Ready"); FsmUtil.AddTransition(_control, "Needolin Ready", "EXIT", "Needolin Range Out"); FsmUtil.AddAction(_control, "Needolin Range Out", (FsmStateAction)new SendEventToRegister { eventName = FsmString.op_Implicit("REMINDER NEEDOLIN END") }); FsmUtil.AddAction(_control, "Needolin range wait", (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(0.2f), finishEvent = FsmEvent.GetFsmEvent("FINISHED") }); } private void SpawnFlies() { SilkenSisters.instance.silkflies = ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.sceneCache, "silkfliesCache"); SilkenSisters.instance.silkflies.SetActive(false); SilkenSisters.instance.silkflies.AddComponent(); SilkenSisters.instance.silkflies.SetActive(true); FsmUtil.AddMethod(_control, "Jump Away", (Action)makeFliesLeave, false); } private void setTeleXPos() { //IL_001a: Unknown result type (might be due to invalid IL or missing references) FsmUtil.GetFloatVariable(_control, "TeleX").Value = SilkenSisters.hornet.transform.position.x + 3.5f; } private void DisableNpc() { ((Behaviour)((Component)this).gameObject.GetComponent()).enabled = false; } private void WakeFlies() { if ((Object)(object)SilkenSisters.instance.silkflies != (Object)null) { SilkenSisters.instance.silkflies.GetComponent().Wake(); } } private void makeFliesLeave() { if ((Object)(object)SilkenSisters.instance.silkflies != (Object)null) { SilkenSisters.instance.silkflies.GetComponent().Leave(); } } private void makeFliesPerch() { if ((Object)(object)SilkenSisters.instance.silkflies != (Object)null) { SilkenSisters.instance.silkflies.GetComponent().Perch(); } } private void KnockOutHornet() { ((MonoBehaviour)this).StartCoroutine(HeroController.instance.Die(true, false)); } private void SetLaceMet() { } } internal class MourningSilkFlies : MonoBehaviour { [CompilerGenerated] private sealed class d__17 : IEnumerator, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public MourningSilkFlies <>4__this; private int 5__2; object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public d__17(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0038: Expected O, but got Unknown int num = <>1__state; MourningSilkFlies mourningSilkFlies = <>4__this; switch (num) { default: return false; case 0: <>1__state = -1; 5__2 = 0; break; case 1: <>1__state = -1; mourningSilkFlies._controls[mourningSilkFlies.currentFly % 5].SendEvent("WAKE"); mourningSilkFlies.currentFly += 2; 5__2++; break; } if (5__2 < 5) { <>2__current = (object)new WaitForSeconds(mourningSilkFlies.flyDelay); <>1__state = 1; return true; } mourningSilkFlies.currentFly++; 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 int currentFly; private GameObject _baseFly; private List _flies = new List(); private List _controls = new List(); private Coroutine coro; private float flyDelay = 1f; private List _positions = new List(5) { new Vector3(82.704f, 109.3679f, 3.4468f), new Vector3(86.4011f, 106.8389f, 3.4468f), new Vector3(85.9573f, 105.7356f, 3.0432f), new Vector3(82.2009f, 105.5666f, 2.7087f), new Vector3(81.7496f, 106.8397f, 3.9087f) }; private List _flightPositions = new List(5) { new Vector3(83.3257f, 110.2663f, 3.4468f), new Vector3(86.4011f, 109.0555f, 3.4468f), new Vector3(86.0776f, 107.0265f, 3.0432f), new Vector3(81.2117f, 106.7379f, 2.7087f), new Vector3(81.2605f, 109.0688f, 3.9087f) }; private void Awake() { Setup(); } private void Setup() { GetComponents(); SpawnNewFlies(); SpawnNewFlies(); SpawnNewFlies(); SpawnNewFlies(); SpawnNewFlies(); SetPositions(); ReduceBuzz(); AddPerch(); foreach (PlayMakerFSM control in _controls) { control.SetState("Pause"); ((Behaviour)control).enabled = true; } } private void GetComponents() { _baseFly = ((Component)((Component)this).gameObject.transform.GetChild(0)).gameObject; for (int i = 0; i < ((Component)this).gameObject.transform.childCount; i++) { ((Component)((Component)this).gameObject.transform.GetChild(i)).gameObject.SetActive(false); ((Behaviour)((Component)((Component)this).gameObject.transform.GetChild(i)).gameObject.GetComponent()).enabled = false; } } private void SetPositions() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0082: Unknown result type (might be due to invalid IL or missing references) for (int i = 0; i < _flies.Count; i++) { _flies[i].transform.position = _positions[i]; Extensions.SetScaleX(_flies[i].transform, 0.9f); Extensions.SetScaleY(_flies[i].transform, 0.9f); FsmUtil.GetAction(_controls[i], "Idle", 0).manualStartPos.Value = _flightPositions[i]; ((NamedVariable)FsmUtil.GetAction(_controls[i], "Idle", 0).manualStartPos).name = "Target"; FsmUtil.AddVector2Variable(_controls[i], "Position"); FsmUtil.AddFloatVariable(_controls[i], "DistanceToPerch"); } } private void ReduceBuzz() { foreach (PlayMakerFSM control in _controls) { FsmUtil.GetAction(control, "Idle", 0).roamingRangeX = FsmFloat.op_Implicit(0.35f); FsmUtil.GetAction(control, "Idle", 0).roamingRangeY = FsmFloat.op_Implicit(0.25f); } } private void SpawnNewFlies() { GameObject val = Object.Instantiate(_baseFly); val.transform.parent = ((Component)this).gameObject.transform; _flies.Add(val); _controls.Add(FsmUtil.GetFsmPreprocessed(val, "Control")); val.SetActive(true); } private void AddPerch() { //IL_00fd: Unknown result type (might be due to invalid IL or missing references) //IL_0102: Unknown result type (might be due to invalid IL or missing references) //IL_0103: Unknown result type (might be due to invalid IL or missing references) //IL_010d: Expected O, but got Unknown //IL_010d: 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_012d: Unknown result type (might be due to invalid IL or missing references) //IL_0138: Unknown result type (might be due to invalid IL or missing references) //IL_0147: Unknown result type (might be due to invalid IL or missing references) //IL_014f: Expected O, but got Unknown //IL_0151: Unknown result type (might be due to invalid IL or missing references) //IL_0156: Unknown result type (might be due to invalid IL or missing references) //IL_0157: 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_0168: Expected O, but got Unknown //IL_0168: Unknown result type (might be due to invalid IL or missing references) //IL_0178: Unknown result type (might be due to invalid IL or missing references) //IL_017f: Unknown result type (might be due to invalid IL or missing references) //IL_018f: Unknown result type (might be due to invalid IL or missing references) //IL_0190: Unknown result type (might be due to invalid IL or missing references) //IL_0195: 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_01ac: Expected O, but got Unknown //IL_01ad: Expected O, but got Unknown //IL_01b8: 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_01be: Unknown result type (might be due to invalid IL or missing references) //IL_01c3: Unknown result type (might be due to invalid IL or missing references) //IL_01cf: Expected O, but got Unknown //IL_01cf: Unknown result type (might be due to invalid IL or missing references) //IL_01df: 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_01f7: Unknown result type (might be due to invalid IL or missing references) //IL_01fc: Unknown result type (might be due to invalid IL or missing references) //IL_0203: Unknown result type (might be due to invalid IL or missing references) //IL_0213: Expected O, but got Unknown //IL_0218: Expected O, but got Unknown //IL_0226: Unknown result type (might be due to invalid IL or missing references) //IL_022b: Unknown result type (might be due to invalid IL or missing references) //IL_022c: Unknown result type (might be due to invalid IL or missing references) //IL_0236: Expected O, but got Unknown //IL_0236: Unknown result type (might be due to invalid IL or missing references) //IL_0246: Unknown result type (might be due to invalid IL or missing references) //IL_0256: Unknown result type (might be due to invalid IL or missing references) //IL_0266: Unknown result type (might be due to invalid IL or missing references) //IL_0276: Unknown result type (might be due to invalid IL or missing references) //IL_0286: Unknown result type (might be due to invalid IL or missing references) //IL_0296: 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) //IL_02a7: Unknown result type (might be due to invalid IL or missing references) //IL_02ac: Unknown result type (might be due to invalid IL or missing references) //IL_02b7: Unknown result type (might be due to invalid IL or missing references) //IL_02bf: Unknown result type (might be due to invalid IL or missing references) //IL_02ce: Expected O, but got Unknown //IL_02cf: Expected O, but got Unknown //IL_02d1: Unknown result type (might be due to invalid IL or missing references) //IL_02d6: Unknown result type (might be due to invalid IL or missing references) //IL_02d7: Unknown result type (might be due to invalid IL or missing references) //IL_02e1: Expected O, but got Unknown //IL_02e1: Unknown result type (might be due to invalid IL or missing references) //IL_02f2: 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_02fd: Expected O, but got Unknown //IL_02fd: Unknown result type (might be due to invalid IL or missing references) //IL_02fe: Unknown result type (might be due to invalid IL or missing references) //IL_0308: Expected O, but got Unknown //IL_0308: Unknown result type (might be due to invalid IL or missing references) //IL_030a: Unknown result type (might be due to invalid IL or missing references) //IL_030f: Unknown result type (might be due to invalid IL or missing references) //IL_0317: Expected O, but got Unknown //IL_0319: Unknown result type (might be due to invalid IL or missing references) //IL_031e: Unknown result type (might be due to invalid IL or missing references) //IL_032f: Unknown result type (might be due to invalid IL or missing references) //IL_0337: Unknown result type (might be due to invalid IL or missing references) //IL_0348: Unknown result type (might be due to invalid IL or missing references) //IL_0352: Unknown result type (might be due to invalid IL or missing references) //IL_0361: Unknown result type (might be due to invalid IL or missing references) //IL_0368: Unknown result type (might be due to invalid IL or missing references) //IL_037a: Expected O, but got Unknown //IL_037c: Unknown result type (might be due to invalid IL or missing references) //IL_0381: Unknown result type (might be due to invalid IL or missing references) //IL_0392: Unknown result type (might be due to invalid IL or missing references) //IL_03a2: Unknown result type (might be due to invalid IL or missing references) //IL_03b2: Unknown result type (might be due to invalid IL or missing references) //IL_03c2: Unknown result type (might be due to invalid IL or missing references) //IL_03d2: Unknown result type (might be due to invalid IL or missing references) //IL_03e2: Unknown result type (might be due to invalid IL or missing references) //IL_03ea: Expected O, but got Unknown //IL_03f5: Unknown result type (might be due to invalid IL or missing references) //IL_03fa: Unknown result type (might be due to invalid IL or missing references) //IL_040f: 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_0426: 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_0456: Unknown result type (might be due to invalid IL or missing references) //IL_0457: Unknown result type (might be due to invalid IL or missing references) //IL_045c: Unknown result type (might be due to invalid IL or missing references) //IL_0463: Unknown result type (might be due to invalid IL or missing references) //IL_0473: Expected O, but got Unknown //IL_0473: Unknown result type (might be due to invalid IL or missing references) //IL_0474: Unknown result type (might be due to invalid IL or missing references) //IL_047e: Expected O, but got Unknown //IL_047e: Unknown result type (might be due to invalid IL or missing references) //IL_047f: Unknown result type (might be due to invalid IL or missing references) //IL_0484: Unknown result type (might be due to invalid IL or missing references) //IL_0485: Unknown result type (might be due to invalid IL or missing references) //IL_0494: Expected O, but got Unknown //IL_0494: Unknown result type (might be due to invalid IL or missing references) //IL_0495: Unknown result type (might be due to invalid IL or missing references) //IL_049a: Unknown result type (might be due to invalid IL or missing references) //IL_04a1: Unknown result type (might be due to invalid IL or missing references) //IL_04b1: Expected O, but got Unknown //IL_04b6: Expected O, but got Unknown int num = 0; foreach (PlayMakerFSM control in _controls) { FsmUtil.AddState(control, "Perched"); FsmUtil.AddState(control, "Perch"); FsmUtil.AddState(control, "Wake"); FsmUtil.ChangeTransition(control, "Pause", "FINISHED", "Perched"); FsmUtil.AddTransition(control, "Idle", "PERCH", "Perch"); FsmUtil.AddTransition(control, "Idle", "FINISHED", "Perched"); FsmUtil.AddTransition(control, "Perch", "FINISHED", "Perched"); FsmUtil.AddTransition(control, "Perch", "WAKE", "Idle"); FsmUtil.AddTransition(control, "Perched", "WAKE", "Idle"); FsmUtil.AddTransition(control, "Perched", "LEAVE", "Leave"); FsmUtil.AddTransition(control, "Perch", "LEAVE", "Leave"); FsmUtil.AddActions(control, "Perched", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new SetVelocity2d { gameObject = new FsmOwnerDefault(), x = FsmFloat.op_Implicit(0f), y = FsmFloat.op_Implicit(0f), vector = FsmVector2.op_Implicit(new Vector2(0f, 0f)), everyFrame = false }, (FsmStateAction)new AnimatorPlay { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, stateName = FsmString.op_Implicit("silk_fly_perched"), everyFrame = false, normalizedTime = FsmFloat.op_Implicit(1f), layer = new FsmInt { useVariable = true, name = "" } } }); FsmUtil.AddAction(control, "Idle", (FsmStateAction)new AnimatorPlay { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, stateName = FsmString.op_Implicit("silk_fly"), everyFrame = false, normalizedTime = FsmFloat.op_Implicit(1f), layer = new FsmInt { useVariable = true, name = "" } }); FsmUtil.AddActions(control, "Perch", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new IdleBuzzV3 { gameObject = new FsmOwnerDefault(), waitMax = FsmFloat.op_Implicit(0.3f), waitMin = FsmFloat.op_Implicit(0f), speedMax = FsmFloat.op_Implicit(5f), accelerationMax = FsmFloat.op_Implicit(30f), accelerationMin = FsmFloat.op_Implicit(1f), roamingRangeX = FsmFloat.op_Implicit(0f), roamingRangeY = FsmFloat.op_Implicit(0f), manualStartPos = new FsmVector3 { name = "Target", Value = _positions[num] } }, (FsmStateAction)new GetPosition2D { gameObject = new FsmOwnerDefault(), vector = FsmUtil.GetVector2Variable(control, "Position"), x = new FsmFloat(), y = new FsmFloat(), space = (Space)0, everyFrame = true }, (FsmStateAction)new DistanceBetweenPoints2D { point1 = FsmUtil.GetVector2Variable(control, "Position"), point2 = FsmVector2.op_Implicit(new Vector2(_positions[num].x, _positions[num].y)), everyFrame = true, distanceResult = FsmUtil.GetFloatVariable(control, "DistanceToPerch") }, (FsmStateAction)new FloatCompare { float1 = FsmUtil.GetFloatVariable(control, "DistanceToPerch"), float2 = FsmFloat.op_Implicit(0f), tolerance = FsmFloat.op_Implicit(0.01f), equal = FsmEvent.GetFsmEvent("FINISHED"), greaterThan = FsmEvent.GetFsmEvent(""), lessThan = FsmEvent.GetFsmEvent(""), everyFrame = true } }); FsmUtil.AddAction(control, "Leave", (FsmStateAction)new PlayAudioEvent { audioClip = FsmObject.op_Implicit((Object)(object)SilkenSisters.instance.assetManager.audioClipCache["focusReady"].Result), pitchMax = FsmFloat.op_Implicit(1.15f), pitchMin = FsmFloat.op_Implicit(1.45f), volume = FsmFloat.op_Implicit(0.6f), audioPlayerPrefab = new FsmObject { UseVariable = true, Name = "" }, spawnPoint = new FsmOwnerDefault(), spawnPosition = new FsmVector3 { Value = Vector3.zero }, SpawnedPlayerRef = new FsmGameObject { UseVariable = true, Name = "" } }); num++; } } public void Perch() { if (coro != null) { ((MonoBehaviour)this).StopCoroutine(coro); } foreach (PlayMakerFSM control in _controls) { control.SendEvent("PERCH"); } } public void Wake() { coro = ((MonoBehaviour)this).StartCoroutine(WakeFlyCoro()); } [IteratorStateMachine(typeof(d__17))] public IEnumerator WakeFlyCoro() { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new d__17(0) { <>4__this = this }; } public void Leave() { foreach (PlayMakerFSM control in _controls) { control.SendEvent("LEAVE"); } } } internal class PhantomBoss : MonoBehaviour { private PlayMakerFSM _control; private HealthManager _healthManager; private void Awake() { Setup(); } private async Task Setup() { try { SilkenSisters.Log.LogDebug((object)"[PhantomBoss.Setup] Started setting phantom boss up"); Extensions.SetPositionX(((Component)this).gameObject.transform, 77.1797f); getComponents(); triggerLace(); listenForLaceDead(); if (SilkenSisters.isMemory()) { skipCutscene(); prepareExitMemoryEffect(); addDamageDelegate(); prepareSync(); } else { TriggerLace1Jump(); } FsmUtil.AddMethod(_control, "Final Parry", (Action)endHornetConstrain, false); SilkenSisters.Log.LogDebug((object)"[PhantomBoss.Setup] Finished setting phantom boss up"); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void getComponents() { _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Control"); _healthManager = ((Component)this).gameObject.GetComponent(); } private void triggerLace() { //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_0033: Expected O, but got Unknown //IL_007b: Unknown result type (might be due to invalid IL or missing references) //IL_0081: Expected O, but got Unknown //IL_00a1: Unknown result type (might be due to invalid IL or missing references) //IL_00a7: Expected O, but got Unknown //IL_00b9: Unknown result type (might be due to invalid IL or missing references) SilkenSisters.Log.LogDebug((object)$"[PhantomBoss.skipCutscene] Enable laceBoss {SilkenSisters.instance.laceBossFSMOwner} {SilkenSisters.instance.laceBossFSMOwner.gameObject}"); ActivateGameObject val = new ActivateGameObject(); val.activate = FsmBool.op_Implicit(true); val.gameObject = SilkenSisters.instance.laceBossFSMOwner; val.recursive = FsmBool.op_Implicit(false); FsmUtil.AddAction(_control, "Appear", (FsmStateAction)(object)val); SilkenSisters.Log.LogDebug((object)"[PhantomBoss.skipCutscene] Trigger lace boss"); SendEventByName val2 = new SendEventByName(); val2.sendEvent = FsmString.op_Implicit("BATTLE START FIRST"); val2.delay = FsmFloat.op_Implicit(0f); FsmEventTarget val3 = new FsmEventTarget(); val3.gameObject = SilkenSisters.instance.laceBossFSMOwner; val3.target = (EventTarget)1; val2.eventTarget = val3; FsmUtil.AddAction(_control, "To Idle", (FsmStateAction)(object)val2); } private void skipCutscene() { SilkenSisters.Log.LogDebug((object)"[PhantomBoss.skipCutscene] Skip cutscene interaction"); FsmUtil.GetAction(_control, "Time Freeze", 4).time = FsmFloat.op_Implicit(0.001f); FsmUtil.GetAction(_control, "Time Freeze", 5).timeScale = FsmFloat.op_Implicit(1f); FsmUtil.DisableAction(_control, "Parry Ready", 0); FsmUtil.DisableAction(_control, "Parry Ready", 1); FsmUtil.GetAction(_control, "Parry Ready", 4).time = FsmFloat.op_Implicit(0.001f); FsmUtil.GetAction(_control, "Parry Ready", 4).finishEvent = FsmEvent.GetFsmEvent("PARRY"); FsmUtil.ChangeTransition(_control, "Death Explode", "FINISHED", "End Recover"); FsmUtil.AddAction(_control, "End Recover", (FsmStateAction)(object)FsmUtil.GetAction(_control, "Get Control", 2)); FsmUtil.AddAction(_control, "End Recover", (FsmStateAction)(object)FsmUtil.GetAction(_control, "Get Control", 4)); FsmUtil.DisableAction(_control, "Set Data", 0); FsmUtil.DisableAction(_control, "Set Data", 1); FsmUtil.DisableAction(_control, "Set Data", 2); FsmUtil.DisableAction(_control, "Set Data", 7); } private void listenForLaceDead() { //IL_002f: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Unknown result type (might be due to invalid IL or missing references) //IL_0057: Unknown result type (might be due to invalid IL or missing references) //IL_006d: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Expected O, but got Unknown //IL_0080: 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_009b: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_00bc: Expected O, but got Unknown FsmUtil.AddTransition(_control, "Final Parry", "BLOCKED HIT", "Counter Stance"); FsmUtil.InsertActions(_control, "Final Parry", 0, (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new FindGameObject { objectName = FsmString.op_Implicit(((Object)SilkenSisters.instance.laceBossInstance).name ?? ""), store = FsmUtil.GetGameObjectVariable(_control, "LaceBoss"), withTag = FsmString.op_Implicit("Untagged") }, (FsmStateAction)new GameObjectIsNull { gameObject = FsmUtil.GetGameObjectVariable(_control, "LaceBoss"), isNull = FsmEvent.GetFsmEvent(""), isNotNull = FsmEvent.GetFsmEvent("BLOCKED HIT") } }); } private void prepareExitMemoryEffect() { //IL_0050: Unknown result type (might be due to invalid IL or missing references) //IL_0056: Expected O, but got Unknown //IL_008c: Unknown result type (might be due to invalid IL or missing references) //IL_0096: Expected O, but got Unknown //IL_0097: Unknown result type (might be due to invalid IL or missing references) //IL_00a1: Expected O, but got Unknown //IL_00a1: Unknown result type (might be due to invalid IL or missing references) //IL_00a7: Expected O, but got Unknown //IL_00de: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Expected O, but got Unknown //IL_014c: Unknown result type (might be due to invalid IL or missing references) //IL_0152: Unknown result type (might be due to invalid IL or missing references) //IL_0157: Unknown result type (might be due to invalid IL or missing references) //IL_015d: Unknown result type (might be due to invalid IL or missing references) //IL_0162: Unknown result type (might be due to invalid IL or missing references) //IL_0169: Expected O, but got Unknown //IL_0192: Unknown result type (might be due to invalid IL or missing references) //IL_0199: Expected O, but got Unknown //IL_01c2: Unknown result type (might be due to invalid IL or missing references) //IL_01c9: Expected O, but got Unknown //IL_01f2: Unknown result type (might be due to invalid IL or missing references) //IL_01f9: Expected O, but got Unknown //IL_0233: Unknown result type (might be due to invalid IL or missing references) //IL_023a: Expected O, but got Unknown //IL_02de: Unknown result type (might be due to invalid IL or missing references) //IL_02e5: Expected O, but got Unknown //IL_03e2: Unknown result type (might be due to invalid IL or missing references) //IL_03e9: Expected O, but got Unknown //IL_048d: Unknown result type (might be due to invalid IL or missing references) //IL_0494: Expected O, but got Unknown //IL_0538: Unknown result type (might be due to invalid IL or missing references) //IL_053d: Unknown result type (might be due to invalid IL or missing references) //IL_0563: Unknown result type (might be due to invalid IL or missing references) //IL_056a: Expected O, but got Unknown //IL_05cc: Unknown result type (might be due to invalid IL or missing references) //IL_05d3: Expected O, but got Unknown //IL_05ef: Unknown result type (might be due to invalid IL or missing references) //IL_061a: Unknown result type (might be due to invalid IL or missing references) PlayMakerFSM fsmPreprocessed = FsmUtil.GetFsmPreprocessed(UnityExtensions.FindChild(ManagedAssetExtensions.InstantiateAsset(SilkenSisters.instance.assetManager.sceneCache, "deepMemoryCache"), "before/thread_memory"), "FSM"); FsmGameObject storeObject = FsmUtil.AddGameObjectVariable(_control, "Deep Memory Enter"); FsmUtil.AddState(_control, "Deep Memory Enter"); SpawnObjectFromGlobalPool val = new SpawnObjectFromGlobalPool(); val.gameObject = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter", 4).gameObject; val.spawnPoint = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter", 4).spawnPoint; val.storeObject = storeObject; val.position = new FsmVector3(); val.rotation = new FsmVector3(); SetMainCameraFovOffset val2 = new SetMainCameraFovOffset(); val2.FovOffset = FsmFloat.op_Implicit(-1f); val2.TransitionTime = FsmFloat.op_Implicit(4.7f); val2.TransitionCurve = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter", 5).TransitionCurve; Wait val3 = new Wait(); val3.time = FsmFloat.op_Implicit(4.7f); val3.finishEvent = FsmEvent.GetFsmEvent("FINISHED"); FsmUtil.AddAction(_control, "Deep Memory Enter", (FsmStateAction)(object)val); FsmUtil.AddAction(_control, "Deep Memory Enter", (FsmStateAction)(object)val2); FsmUtil.AddAction(_control, "Deep Memory Enter", (FsmStateAction)(object)val3); FsmUtil.AddState(_control, "Deep Memory Enter Fall"); new HeroControllerMethods().method = (Method)7; new HeroControllerMethods().method = (Method)1; TransitionToAudioSnapshot val4 = new TransitionToAudioSnapshot(); val4.snapshot = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 3).snapshot; val4.transitionTime = FsmFloat.op_Implicit(2f); TransitionToAudioSnapshot val5 = new TransitionToAudioSnapshot(); val5.snapshot = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 4).snapshot; val5.transitionTime = FsmFloat.op_Implicit(2f); TransitionToAudioSnapshot val6 = new TransitionToAudioSnapshot(); val6.snapshot = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 5).snapshot; val6.transitionTime = FsmFloat.op_Implicit(2f); SetMainCameraFovOffset val7 = new SetMainCameraFovOffset(); val7.FovOffset = FsmFloat.op_Implicit(-2f); val7.TransitionTime = FsmFloat.op_Implicit(2f); val7.TransitionCurve = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 6).TransitionCurve; AudioPlayerOneShotSingle val8 = new AudioPlayerOneShotSingle(); val8.audioPlayer = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 7).audioPlayer; val8.spawnPoint = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 7).spawnPoint; val8.audioClip = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 7).audioClip; val8.pitchMax = FsmFloat.op_Implicit(1f); val8.pitchMin = FsmFloat.op_Implicit(1f); val8.volume = FsmFloat.op_Implicit(1f); val8.delay = FsmFloat.op_Implicit(0f); val8.storePlayer = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 7).storePlayer; Tk2dPlayAnimationWithEvents val9 = new Tk2dPlayAnimationWithEvents(); val9.gameObject = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 8).gameObject; val9.clipName = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 8).clipName; val9.animationTriggerEvent = FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 8).animationTriggerEvent; FsmUtil.AddAction(_control, "Deep Memory Enter Fall", (FsmStateAction)(object)FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 1)); FsmUtil.AddAction(_control, "Deep Memory Enter Fall", (FsmStateAction)(object)FsmUtil.GetAction(fsmPreprocessed, "Deep Memory Enter Fall", 2)); FsmUtil.AddAction(_control, "Deep Memory Enter Fall", (FsmStateAction)(object)val4); FsmUtil.AddAction(_control, "Deep Memory Enter Fall", (FsmStateAction)(object)val5); FsmUtil.AddAction(_control, "Deep Memory Enter Fall", (FsmStateAction)(object)val6); FsmUtil.AddAction(_control, "Deep Memory Enter Fall", (FsmStateAction)(object)val7); FsmUtil.AddAction(_control, "Deep Memory Enter Fall", (FsmStateAction)(object)val8); FsmUtil.AddAction(_control, "Deep Memory Enter Fall", (FsmStateAction)(object)val9); FsmUtil.AddState(_control, "Collapse"); AudioPlayerOneShotSingle val10 = new AudioPlayerOneShotSingle(); val10.audioPlayer = FsmUtil.GetAction(fsmPreprocessed, "Collapse", 2).audioPlayer; val10.spawnPoint = FsmUtil.GetAction(fsmPreprocessed, "Collapse", 2).spawnPoint; val10.audioClip = FsmUtil.GetAction(fsmPreprocessed, "Collapse", 2).audioClip; val10.pitchMax = FsmFloat.op_Implicit(1f); val10.pitchMin = FsmFloat.op_Implicit(1f); val10.volume = FsmFloat.op_Implicit(1f); val10.delay = FsmFloat.op_Implicit(0f); val10.storePlayer = FsmUtil.GetAction(fsmPreprocessed, "Collapse", 2).storePlayer; AudioPlayerOneShotSingle val11 = new AudioPlayerOneShotSingle(); val11.audioPlayer = FsmUtil.GetAction(fsmPreprocessed, "Collapse", 3).audioPlayer; val11.spawnPoint = FsmUtil.GetAction(fsmPreprocessed, "Collapse", 3).spawnPoint; val11.audioClip = FsmUtil.GetAction(fsmPreprocessed, "Collapse", 3).audioClip; val11.pitchMax = FsmFloat.op_Implicit(1f); val11.pitchMin = FsmFloat.op_Implicit(1f); val11.volume = FsmFloat.op_Implicit(1f); val11.delay = FsmFloat.op_Implicit(0f); val11.storePlayer = FsmUtil.GetAction(fsmPreprocessed, "Collapse", 3).storePlayer; new ListenForAnimationEvent { Response = FsmEvent.GetFsmEvent("FINISHED"), Target = FsmUtil.GetAction(fsmPreprocessed, "Collapse", 4).Target }; Wait val12 = new Wait(); val12.time = FsmFloat.op_Implicit(1f); val12.finishEvent = FsmEvent.GetFsmEvent("FINISHED"); FsmUtil.AddAction(_control, "Collapse", (FsmStateAction)(object)val10); FsmUtil.AddAction(_control, "Collapse", (FsmStateAction)(object)val11); FsmUtil.AddAction(_control, "Collapse", (FsmStateAction)(object)val12); FsmState val13 = new FsmState(SilkenSisters.instance.ExitMemoryCache); FsmUtil.GetAction(val13, 1).startColour = FsmColor.op_Implicit(new Color(0f, 0f, 0f, 0f)); FsmUtil.GetAction(val13, 1).endColour = FsmColor.op_Implicit(new Color(0f, 0f, 0f, 1f)); FsmUtil.GetAction(val13, 0).SceneName = FsmString.op_Implicit("Organ_01"); FsmUtil.GetAction(val13, 4).sceneName = FsmString.op_Implicit("Organ_01"); FsmUtil.GetAction(val13, 4).entryGateName = FsmString.op_Implicit(((Object)SilkenSisters.instance.respawnPointInstance).name ?? ""); SilkenSisters.Log.LogDebug((object)("[PhantomBoss.prepareExitMemoryEffect] Transition Gate to exit memory: " + ((Object)SilkenSisters.instance.respawnPointInstance).name)); FsmUtil.GetAction(val13, 2).time = FsmFloat.op_Implicit(2f); FsmUtil.AddState(_control, val13); FsmUtil.AddTransition(_control, "Set Data", "FINISHED", "Deep Memory Enter"); FsmUtil.AddTransition(_control, "Deep Memory Enter", "FINISHED", "Deep Memory Enter Fall"); FsmUtil.AddTransition(_control, "Deep Memory Enter Fall", "FINISHED", "Collapse"); FsmUtil.AddTransition(_control, "Collapse", "FINISHED", "Exit Memory"); FsmUtil.DisableAction(_control, "Set Data", 2); resetPlayerData(); } private void resetPlayerData() { FsmUtil.InsertMethod(_control, "Collapse", (Action)ResetPlayerData, 0, false); } private void endHornetConstrain() { ((Behaviour)SilkenSisters.hornetConstrain).enabled = false; SilkenSisters.Log.LogDebug((object)$"[PhantomBoss.endHornetConstrain] HornetConstrain?:{((Behaviour)SilkenSisters.hornetConstrain).enabled}"); } private void addDamageDelegate() { _healthManager.initHp = SilkenSisters.instance.configManager.MaxHP.Value + 100; _healthManager.HealToMax(); FsmUtil.GetIntVariable(_control, "Dragoon HP").Value = SilkenSisters.instance.configManager.P2HP.Value; FsmUtil.GetIntVariable(_control, "Rage HP").Value = SilkenSisters.instance.configManager.P3HP.Value; _healthManager.TookDamage += TransferDamage; } private void TransferDamage() { if ((Object)(object)SilkenSisters.instance.laceBossInstance != (Object)null) { HealthManager component = SilkenSisters.instance.laceBossInstance.GetComponent(); if (component.hp - _healthManager.lastHitInstance.DamageDealt > 0) { component.ApplyExtraDamage(_healthManager.lastHitInstance.DamageDealt); } } } private void TriggerLace1Jump() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Unknown result type (might be due to invalid IL or missing references) //IL_0016: 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_0022: Expected O, but got Unknown //IL_0022: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Unknown result type (might be due to invalid IL or missing references) //IL_0047: Expected O, but got Unknown FsmUtil.AddAction(_control, "End", (FsmStateAction)new SendEvent { eventTarget = new FsmEventTarget { target = (EventTarget)4 }, sendEvent = FsmEvent.GetFsmEvent("LACE JUMP"), delay = FsmFloat.op_Implicit(0f) }); } private void prepareSync() { if (SilkenSisters.instance.configManager.syncedFight.Value && SilkenSisters.isMemory()) { AddVars(); Synchronize(); NukeStates(); AddParryBait(); AddDefensiveParry(); AddMock(); AddHorizontalDragoon(); AddRunStates(); AddPhaseStates(); AddWaitDefense(); } } private void AddVars() { FsmUtil.AddGameObjectVariable(_control, "Lace").Value = SilkenSisters.instance.laceBossInstance; FsmUtil.AddStringVariable(_control, "NextPhaseEvent"); FsmUtil.AddFloatVariable(_control, "Hornet Facing Right"); FsmUtil.AddFloatVariable(_control, "Phase Left X").Value = 73f; FsmUtil.AddFloatVariable(_control, "Phase Right X").Value = 96f; FsmUtil.AddVector3Variable(_control, "Lace Pos"); FsmUtil.AddFloatVariable(_control, "Wait Time").Value = SilkenSisters.instance.configManager.syncWaitTime.Value; FsmUtil.AddFloatVariable(_control, "Async Delay").Value = SilkenSisters.instance.configManager.syncDelay.Value; FsmUtil.AddFloatVariable(_control, "Gather Distance").Value = SilkenSisters.instance.configManager.syncGatherDistance.Value; FsmUtil.AddFloatVariable(_control, "Tele Distance").Value = SilkenSisters.instance.configManager.syncTeleDistance.Value; FsmUtil.AddBoolVariable(_control, "Stun Defense").Value = false; } private void Synchronize() { //IL_001c: Unknown result type (might be due to invalid IL or missing references) //IL_0021: Unknown result type (might be due to invalid IL or missing references) //IL_0031: Unknown result type (might be due to invalid IL or missing references) //IL_0041: Unknown result type (might be due to invalid IL or missing references) //IL_0042: Unknown result type (might be due to invalid IL or missing references) //IL_0047: Unknown result type (might be due to invalid IL or missing references) //IL_0053: Expected O, but got Unknown //IL_0058: Expected O, but got Unknown //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_0069: 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_008e: Unknown result type (might be due to invalid IL or missing references) //IL_0090: Unknown result type (might be due to invalid IL or missing references) //IL_009a: Expected O, but got Unknown //IL_009a: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00ba: Unknown result type (might be due to invalid IL or missing references) //IL_00c6: Expected O, but got Unknown FsmUtil.AddState(_control, "SyncWait"); FsmUtil.AddAction(_control, "SyncWait", (FsmStateAction)new Tk2dPlayAnimation { animLibName = FsmString.op_Implicit(""), clipName = FsmString.op_Implicit("Idle"), gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 } }); FsmUtil.AddAction(_control, "SyncWait", (FsmStateAction)new SendEventByName { eventTarget = new FsmEventTarget { gameObject = SilkenSisters.instance.phantomBossSceneFSMOwner, fsmName = FsmString.op_Implicit("Silken Sisters Sync Control"), target = (EventTarget)2 }, sendEvent = FsmString.op_Implicit("PHANTOM READY"), delay = FsmFloat.op_Implicit(0f), everyFrame = true }); FsmUtil.AddTransition(_control, "SyncWait", "STAB", "Stab Antic"); FsmUtil.AddTransition(_control, "SyncWait", "EVADE", "Evade Antic"); FsmUtil.AddTransition(_control, "SyncWait", "PARRY", "Parry Antic"); FsmUtil.AddTransition(_control, "SyncWait", "GTHROW", "G Throw Antic"); FsmUtil.AddTransition(_control, "SyncWait", "ATHROW", "Set A Throw"); FsmUtil.AddTransition(_control, "SyncWait", "DRAGOON RAGE", "Dragoon Rage"); FsmUtil.AddTransition(_control, "SyncWait", "DRAGOON", "Normal Dragoon"); FsmUtil.ChangeTransition(_control, "Run To", "CLOSE RANGE", "To Idle"); } private void NukeStates() { FsmUtil.RemoveState(_control, "Final Phase?"); FsmUtil.RemoveState(_control, "Rage?"); FsmUtil.RemoveState(_control, "Dragoon?"); FsmUtil.RemoveState(_control, "Phase?"); FsmUtil.RemoveState(_control, "Range Check"); FsmUtil.RemoveState(_control, "Close Range"); FsmUtil.RemoveState(_control, "Far Range"); FsmUtil.ChangeTransition(_control, "To Idle", "FINISHED", "SyncWait"); FsmUtil.ChangeTransition(_control, "Sing End", "FINISHED", "To Idle"); FsmUtil.ChangeTransition(_control, "Phase In", "FINISHED", "To Idle"); FsmUtil.AddTransition(_control, "To Idle", "SING", "Sing"); } private void AddRunStates() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Unknown result type (might be due to invalid IL or missing references) //IL_008f: 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_00b6: Expected O, but got Unknown //IL_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_00ea: Unknown result type (might be due to invalid IL or missing references) //IL_00fa: Unknown result type (might be due to invalid IL or missing references) //IL_0110: Unknown result type (might be due to invalid IL or missing references) //IL_0126: Unknown result type (might be due to invalid IL or missing references) //IL_0132: Expected O, but got Unknown //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_0160: Unknown result type (might be due to invalid IL or missing references) //IL_017f: Unknown result type (might be due to invalid IL or missing references) //IL_018f: 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) //IL_01af: Unknown result type (might be due to invalid IL or missing references) //IL_01b7: Expected O, but got Unknown //IL_01e0: Unknown result type (might be due to invalid IL or missing references) //IL_022b: Unknown result type (might be due to invalid IL or missing references) //IL_0230: Unknown result type (might be due to invalid IL or missing references) //IL_023c: Unknown result type (might be due to invalid IL or missing references) //IL_0257: Expected O, but got Unknown //IL_0262: Unknown result type (might be due to invalid IL or missing references) //IL_0267: 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_028d: Unknown result type (might be due to invalid IL or missing references) //IL_02a3: Unknown result type (might be due to invalid IL or missing references) //IL_02af: Expected O, but got Unknown //IL_02c2: Unknown result type (might be due to invalid IL or missing references) //IL_02c7: Unknown result type (might be due to invalid IL or missing references) //IL_02dd: 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_030c: Unknown result type (might be due to invalid IL or missing references) //IL_031c: Unknown result type (might be due to invalid IL or missing references) //IL_032c: Unknown result type (might be due to invalid IL or missing references) //IL_0334: Expected O, but got Unknown FsmUtil.AddState(_control, "Run To Lace").Position = new Rect(330.0859f, 1430.102f, 121.98f, 64f); FsmUtil.AddTransition(_control, "SyncWait", "RUN TO LACE", "Run To Lace"); FsmUtil.AddTransition(_control, "SyncWait", "RUN TO", "Run To Lace"); FsmUtil.AddTransition(_control, "Run To Lace", "FINISHED", "Run To Antic"); FsmUtil.AddAction(_control, "Run To Lace", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Ran") }); FsmUtil.DisableAction(_control, "Run To Lace", 3); FsmUtil.DisableAction(_control, "Run To Lace", 4); FsmUtil.AddAction(_control, "Run To", (FsmStateAction)new GetXDistance { gameObject = SilkenSisters.instance.phantomBossFSMOwner, target = FsmUtil.GetGameObjectVariable(_control, "Lace"), storeResult = FsmUtil.GetFloatVariable(_control, "Distance"), everyFrame = true }); FsmUtil.AddActions(_control, "Run To", (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)new FloatCompare { float1 = FsmUtil.GetFloatVariable(_control, "Distance"), float2 = FsmFloat.op_Implicit(SilkenSisters.instance.configManager.syncGatherDistance.Value), tolerance = FsmFloat.op_Implicit(0f), equal = FsmEvent.GetFsmEvent("FINISHED"), lessThan = FsmEvent.GetFsmEvent("FINISHED"), everyFrame = true } }); FsmUtil.AddState(_control, "Run Away Lace").Position = new Rect(330.0859f, 1430.102f, 121.98f, 64f); FsmUtil.AddTransition(_control, "SyncWait", "RUN AWAY LACE", "Run Away Lace"); FsmUtil.AddTransition(_control, "Run Away Lace", "FINISHED", "Run Away Antic"); FsmUtil.AddAction(_control, "Run Away Lace", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Ran") }); FsmUtil.AddAction(_control, "Run Away", (FsmStateAction)new GetXDistance { gameObject = SilkenSisters.instance.phantomBossFSMOwner, target = FsmUtil.GetGameObjectVariable(_control, "Lace"), storeResult = FsmUtil.GetFloatVariable(_control, "Distance"), everyFrame = true }); FsmUtil.AddActions(_control, "Run Away", (FsmStateAction[])(object)new FsmStateAction[1] { (FsmStateAction)new FloatCompare { float1 = FsmUtil.GetFloatVariable(_control, "Distance"), float2 = FsmFloat.op_Implicit(SilkenSisters.instance.configManager.syncGatherDistance.Value), tolerance = FsmFloat.op_Implicit(0f), equal = FsmEvent.GetFsmEvent("FINISHED"), lessThan = FsmEvent.GetFsmEvent("FINISHED"), everyFrame = true } }); } private void AddPhaseStates() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_0052: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0140: 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_0155: Unknown result type (might be due to invalid IL or missing references) //IL_0170: Expected O, but got Unknown //IL_017b: 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_0190: Unknown result type (might be due to invalid IL or missing references) //IL_01ab: Expected O, but got Unknown //IL_01b6: 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_01e6: Expected O, but got Unknown //IL_01f1: 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_01f7: Unknown result type (might be due to invalid IL or missing references) //IL_01fc: Unknown result type (might be due to invalid IL or missing references) //IL_020c: Unknown result type (might be due to invalid IL or missing references) //IL_021c: Unknown result type (might be due to invalid IL or missing references) //IL_021e: Unknown result type (might be due to invalid IL or missing references) //IL_0228: Expected O, but got Unknown //IL_0228: Unknown result type (might be due to invalid IL or missing references) //IL_023e: Unknown result type (might be due to invalid IL or missing references) //IL_0253: Expected O, but got Unknown //IL_0277: Unknown result type (might be due to invalid IL or missing references) //IL_02df: Unknown result type (might be due to invalid IL or missing references) //IL_02e4: Unknown result type (might be due to invalid IL or missing references) //IL_02e5: Unknown result type (might be due to invalid IL or missing references) //IL_02ea: Unknown result type (might be due to invalid IL or missing references) //IL_02f6: Expected O, but got Unknown //IL_02f6: Unknown result type (might be due to invalid IL or missing references) //IL_02f7: 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_0308: Expected O, but got Unknown //IL_0308: Unknown result type (might be due to invalid IL or missing references) //IL_031e: Unknown result type (might be due to invalid IL or missing references) //IL_031f: Unknown result type (might be due to invalid IL or missing references) //IL_0324: Unknown result type (might be due to invalid IL or missing references) //IL_0330: Expected O, but got Unknown //IL_0330: Unknown result type (might be due to invalid IL or missing references) //IL_0331: Unknown result type (might be due to invalid IL or missing references) //IL_0336: Unknown result type (might be due to invalid IL or missing references) //IL_0342: Expected O, but got Unknown //IL_0347: Expected O, but got Unknown FsmUtil.AddState(_control, "Phase Tele").Position = new Rect(1873.398f, 1200.492f, 110.63f, 48f); FsmUtil.AddState(_control, "Phase Dragoon").Position = new Rect(1873.398f, 1200.492f, 110.63f, 48f); FsmUtil.AddState(_control, "Phase Throw").Position = new Rect(1873.398f, 1200.492f, 110.63f, 48f); FsmUtil.AddTransition(_control, "SyncWait", "PHASE TELE", "Phase Tele"); FsmUtil.AddTransition(_control, "SyncWait", "PHASE THROW", "Phase Throw"); FsmUtil.AddTransition(_control, "Phase Tele", "FINISHED", "Phase Antic"); FsmUtil.AddTransition(_control, "Phase Dragoon", "FINISHED", "Phase Antic"); FsmUtil.AddTransition(_control, "Phase Throw", "FINISHED", "Phase Antic"); FsmUtil.DisableAction(_control, "Phase Move", 3); FsmUtil.DisableAction(_control, "Phase Move", 4); FsmUtil.AddAction(_control, "Phase Tele", (FsmStateAction)new SetStringValue { stringValue = FsmString.op_Implicit("TELE"), stringVariable = FsmUtil.GetStringVariable(_control, "NextPhaseEvent") }); FsmUtil.AddAction(_control, "Phase Dragoon", (FsmStateAction)new SetStringValue { stringValue = FsmString.op_Implicit("DRAGOON"), stringVariable = FsmUtil.GetStringVariable(_control, "NextPhaseEvent") }); FsmUtil.AddAction(_control, "Phase Throw", (FsmStateAction)new SetStringValue { stringValue = FsmString.op_Implicit("A THROW"), stringVariable = FsmUtil.GetStringVariable(_control, "NextPhaseEvent") }); FsmUtil.AddAction(_control, "Phase Move", (FsmStateAction)new SendEventByName { eventTarget = new FsmEventTarget { gameObject = SilkenSisters.instance.phantomBossFSMOwner, fsmName = FsmString.op_Implicit("Control"), target = (EventTarget)2 }, sendEvent = FsmUtil.GetStringVariable(_control, "NextPhaseEvent"), delay = FsmFloat.op_Implicit(0f) }); FsmUtil.AddState(_control, "Phase Tele Pos").Position = new Rect(1873.398f, 1200.492f, 110.63f, 48f); FsmUtil.AddTransition(_control, "Phase Move", "TELE", "Phase Tele Pos"); FsmUtil.AddTransition(_control, "Phase Tele Pos", "FINISHED", "Fog In"); FsmUtil.AddMethod(_control, "Phase Tele Pos", (Action)GetTelePos, false); FsmUtil.AddAction(_control, "Phase Tele Pos", (FsmStateAction)new SetPosition { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, vector = new FsmVector3 { UseVariable = true }, x = FsmUtil.GetFloatVariable(_control, "Tele X"), y = new FsmFloat { UseVariable = true }, z = new FsmFloat { UseVariable = true } }); } private void AddHorizontalDragoon() { } private void AddParryBait() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Unknown result type (might be due to invalid IL or missing references) //IL_00c4: Unknown result type (might be due to invalid IL or missing references) //IL_00d4: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Expected O, but got Unknown //IL_0113: Unknown result type (might be due to invalid IL or missing references) //IL_0194: Unknown result type (might be due to invalid IL or missing references) //IL_0199: Unknown result type (might be due to invalid IL or missing references) //IL_01a4: Unknown result type (might be due to invalid IL or missing references) //IL_01ba: 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_01c5: Expected O, but got Unknown //IL_01c5: 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_01d0: Expected O, but got Unknown //IL_01d0: Unknown result type (might be due to invalid IL or missing references) //IL_01d1: Unknown result type (might be due to invalid IL or missing references) //IL_01db: Expected O, but got Unknown //IL_01db: Unknown result type (might be due to invalid IL or missing references) //IL_01e7: Expected O, but got Unknown //IL_01f2: Unknown result type (might be due to invalid IL or missing references) //IL_01f7: Unknown result type (might be due to invalid IL or missing references) //IL_0202: Unknown result type (might be due to invalid IL or missing references) //IL_0203: Unknown result type (might be due to invalid IL or missing references) //IL_020d: Expected O, but got Unknown //IL_020d: Unknown result type (might be due to invalid IL or missing references) //IL_0223: 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_022e: Expected O, but got Unknown //IL_022e: 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_0239: Unknown result type (might be due to invalid IL or missing references) //IL_0245: Expected O, but got Unknown //IL_026d: Unknown result type (might be due to invalid IL or missing references) //IL_0272: Unknown result type (might be due to invalid IL or missing references) //IL_0273: Unknown result type (might be due to invalid IL or missing references) //IL_0278: Unknown result type (might be due to invalid IL or missing references) //IL_0284: Expected O, but got Unknown //IL_0284: Unknown result type (might be due to invalid IL or missing references) //IL_029a: Unknown result type (might be due to invalid IL or missing references) //IL_029b: 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_02ac: Expected O, but got Unknown //IL_02ac: Unknown result type (might be due to invalid IL or missing references) //IL_02ad: Unknown result type (might be due to invalid IL or missing references) //IL_02b2: Unknown result type (might be due to invalid IL or missing references) //IL_02be: Expected O, but got Unknown //IL_02be: Unknown result type (might be due to invalid IL or missing references) //IL_02bf: Unknown result type (might be due to invalid IL or missing references) //IL_02c4: Unknown result type (might be due to invalid IL or missing references) //IL_02d0: Expected O, but got Unknown //IL_02d6: Expected O, but got Unknown //IL_02e1: Unknown result type (might be due to invalid IL or missing references) //IL_02e6: Unknown result type (might be due to invalid IL or missing references) //IL_02e7: Unknown result type (might be due to invalid IL or missing references) //IL_02ec: Unknown result type (might be due to invalid IL or missing references) //IL_02f8: Expected O, but got Unknown //IL_02f8: Unknown result type (might be due to invalid IL or missing references) //IL_0309: Expected O, but got Unknown FsmUtil.AddState(_control, "Phase Parry Bait").Position = new Rect(1873.398f, 1200.492f, 110.63f, 48f); FsmUtil.CopyState(_control, "Fog In 2", "Parry Bait Fog In"); FsmUtil.CopyState(_control, "Phase In Air", "Parry Bait In Air"); FsmUtil.DisableAction(_control, "Parry Bait Fog In", 0); FsmUtil.DisableAction(_control, "Parry Bait Fog In", 1); FsmUtil.AddTransition(_control, "SyncWait", "PARRY BAIT", "Phase Parry Bait"); FsmUtil.AddTransition(_control, "Phase Parry Bait", "FINISHED", "Phase Antic"); FsmUtil.AddAction(_control, "Phase Parry Bait", (FsmStateAction)new SetStringValue { stringValue = FsmString.op_Implicit("PARRY"), stringVariable = FsmUtil.GetStringVariable(_control, "NextPhaseEvent") }); FsmUtil.AddState(_control, "Parry Bait Pos").Position = new Rect(1873.398f, 1200.492f, 110.63f, 48f); FsmUtil.AddTransition(_control, "Phase Move", "PARRY", "Parry Bait Pos"); FsmUtil.AddTransition(_control, "Parry Bait Pos", "FINISHED", "Parry Bait Fog In"); FsmUtil.ChangeTransition(_control, "Parry Bait Fog In", "FINISHED", "Parry Bait In Air"); FsmUtil.ChangeTransition(_control, "Parry Bait In Air", "FINISHED", "Parry Antic"); FsmUtil.AddAction(_control, "Parry Bait Pos", (FsmStateAction)new GetPosition { gameObject = SilkenSisters.hornetFSMOwner, vector = FsmUtil.GetVector3Variable(_control, "Hornet Pos"), x = new FsmFloat(), y = new FsmFloat(), z = new FsmFloat(), everyFrame = false }); FsmUtil.AddAction(_control, "Parry Bait Pos", (FsmStateAction)new GetScale { gameObject = SilkenSisters.hornetFSMOwner, vector = new FsmVector3(), xScale = FsmUtil.GetFloatVariable(_control, "Hornet Facing Right"), yScale = new FsmFloat(), zScale = new FsmFloat(), everyFrame = false }); FsmUtil.AddMethod(_control, "Parry Bait Pos", (Action)SetParryBaitPos, false); FsmUtil.InsertAction(_control, "Parry Bait Fog In", (FsmStateAction)new SetPosition { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, vector = FsmUtil.GetVector3Variable(_control, "Hornet Pos"), x = new FsmFloat { UseVariable = true }, y = new FsmFloat { UseVariable = true }, z = new FsmFloat { UseVariable = true } }, 0); FsmUtil.AddAction(_control, "Parry Antic", (FsmStateAction)new SetIsKinematic2d { gameObject = new FsmOwnerDefault { OwnerOption = (OwnerDefaultOption)0 }, isKinematic = FsmBool.op_Implicit(false) }); } private void AddDefensiveParry() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Unknown result type (might be due to invalid IL or missing references) //IL_00c4: Unknown result type (might be due to invalid IL or missing references) //IL_00d4: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Expected O, but got Unknown //IL_0113: Unknown result type (might be due to invalid IL or missing references) //IL_0194: Unknown result type (might be due to invalid IL or missing references) //IL_0199: Unknown result type (might be due to invalid IL or missing references) //IL_01a9: Unknown result type (might be due to invalid IL or missing references) //IL_01bf: Unknown result type (might be due to invalid IL or missing references) //IL_01c0: Unknown result type (might be due to invalid IL or missing references) //IL_01ca: Expected O, but got Unknown //IL_01ca: 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_01d5: Expected O, but got Unknown //IL_01d5: Unknown result type (might be due to invalid IL or missing references) //IL_01d6: Unknown result type (might be due to invalid IL or missing references) //IL_01e0: Expected O, but got Unknown //IL_01e0: Unknown result type (might be due to invalid IL or missing references) //IL_01ec: Expected O, but got Unknown //IL_01f7: Unknown result type (might be due to invalid IL or missing references) //IL_01fc: Unknown result type (might be due to invalid IL or missing references) //IL_0207: Unknown result type (might be due to invalid IL or missing references) //IL_021d: Unknown result type (might be due to invalid IL or missing references) //IL_021e: Unknown result type (might be due to invalid IL or missing references) //IL_0228: Expected O, but got Unknown //IL_0228: Unknown result type (might be due to invalid IL or missing references) //IL_0229: Unknown result type (might be due to invalid IL or missing references) //IL_0233: Expected O, but got Unknown //IL_0233: Unknown result type (might be due to invalid IL or missing references) //IL_0234: Unknown result type (might be due to invalid IL or missing references) //IL_023e: Expected O, but got Unknown //IL_023e: Unknown result type (might be due to invalid IL or missing references) //IL_024a: 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_0287: 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_029e: Unknown result type (might be due to invalid IL or missing references) //IL_02a3: Unknown result type (might be due to invalid IL or missing references) //IL_02af: Expected O, but got Unknown //IL_02af: 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_02b5: Unknown result type (might be due to invalid IL or missing references) //IL_02c1: Expected O, but got Unknown //IL_02c1: Unknown result type (might be due to invalid IL or missing references) //IL_02c2: Unknown result type (might be due to invalid IL or missing references) //IL_02c7: Unknown result type (might be due to invalid IL or missing references) //IL_02d3: Expected O, but got Unknown //IL_02d9: Expected O, but got Unknown //IL_02fa: Unknown result type (might be due to invalid IL or missing references) //IL_02ff: Unknown result type (might be due to invalid IL or missing references) //IL_0300: Unknown result type (might be due to invalid IL or missing references) //IL_0305: Unknown result type (might be due to invalid IL or missing references) //IL_0315: Unknown result type (might be due to invalid IL or missing references) //IL_0325: Unknown result type (might be due to invalid IL or missing references) //IL_0327: Unknown result type (might be due to invalid IL or missing references) //IL_0331: Expected O, but got Unknown //IL_0331: Unknown result type (might be due to invalid IL or missing references) //IL_0341: Unknown result type (might be due to invalid IL or missing references) //IL_0357: Unknown result type (might be due to invalid IL or missing references) //IL_036d: 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_0389: Unknown result type (might be due to invalid IL or missing references) //IL_03a5: Expected O, but got Unknown //IL_03b0: 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_03c1: Unknown result type (might be due to invalid IL or missing references) //IL_03dd: Expected O, but got Unknown FsmUtil.AddState(_control, "Phase Defense Parry").Position = new Rect(1873.398f, 1200.492f, 110.63f, 48f); FsmUtil.CopyState(_control, "Fog In 2", "Defense Parry Fog In"); FsmUtil.CopyState(_control, "Phase In Air", "Defense Parry In Air"); FsmUtil.DisableAction(_control, "Defense Parry Fog In", 0); FsmUtil.DisableAction(_control, "Defense Parry Fog In", 1); FsmUtil.AddTransition(_control, "SyncWait", "DEFEND", "Phase Defense Parry"); FsmUtil.AddTransition(_control, "Phase Defense Parry", "FINISHED", "Phase Antic"); FsmUtil.AddAction(_control, "Phase Defense Parry", (FsmStateAction)new SetStringValue { stringValue = FsmString.op_Implicit("DEFEND"), stringVariable = FsmUtil.GetStringVariable(_control, "NextPhaseEvent") }); FsmUtil.AddState(_control, "Defense Parry Pos").Position = new Rect(1873.398f, 1200.492f, 110.63f, 48f); FsmUtil.AddTransition(_control, "Phase Move", "DEFEND", "Defense Parry Pos"); FsmUtil.AddTransition(_control, "Defense Parry Pos", "FINISHED", "Defense Parry Fog In"); FsmUtil.ChangeTransition(_control, "Defense Parry Fog In", "FINISHED", "Defense Parry In Air"); FsmUtil.ChangeTransition(_control, "Defense Parry In Air", "FINISHED", "Parry Antic"); FsmUtil.AddAction(_control, "Defense Parry Pos", (FsmStateAction)new GetPosition { gameObject = SilkenSisters.instance.laceBossFSMOwner, vector = FsmUtil.GetVector3Variable(_control, "Lace Pos"), x = new FsmFloat(), y = new FsmFloat(), z = new FsmFloat(), everyFrame = false }); FsmUtil.AddAction(_control, "Defense Parry Pos", (FsmStateAction)new GetPosition { gameObject = SilkenSisters.hornetFSMOwner, vector = FsmUtil.GetVector3Variable(_control, "Hornet Pos"), x = new FsmFloat(), y = new FsmFloat(), z = new FsmFloat(), everyFrame = false }); FsmUtil.AddMethod(_control, "Defense Parry Pos", (Action)SetDefenseParryPos, false); FsmUtil.InsertAction(_control, "Defense Parry Fog In", (FsmStateAction)new SetPosition { gameObject = SilkenSisters.instance.phantomBossFSMOwner, vector = FsmUtil.GetVector3Variable(_control, "Lace Pos"), x = new FsmFloat { UseVariable = true }, y = new FsmFloat { UseVariable = true }, z = new FsmFloat { UseVariable = true } }, 0); FsmUtil.AddGlobalTransition(_control, "LACE STUN", "Phase Defense Parry"); FsmUtil.InsertAction(_control, "Stun Damage", (FsmStateAction)new SendEventByNameV3 { eventTarget = new FsmEventTarget { gameObject = SilkenSisters.instance.laceBossFSMOwner, fsmName = FsmString.op_Implicit("Control"), target = (EventTarget)2 }, sendEvent = FsmString.op_Implicit("PHANTOM STUN"), activeBool = FsmUtil.GetBoolVariable(_control, "Stun Defense"), delay = FsmFloat.op_Implicit(0f) }, 0); FsmUtil.InsertAction(_control, "Stun Damage", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Stun Defense") }, 1); FsmUtil.InsertAction(_control, "Stun Recover", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(true), boolVariable = FsmUtil.GetBoolVariable(_control, "Stun Defense") }, 0); } private void AddMock() { //IL_0057: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0071: Expected O, but got Unknown FsmUtil.CopyState(_control, "Hornet Dead", "Mock Hornet"); FsmUtil.AddTransition(_control, "SyncWait", "MOCK", "Mock Hornet"); FsmUtil.AddTransition(_control, "Mock Hornet", "FINISHED", "SyncWait"); FsmUtil.AddAction(_control, "Mock Hornet", (FsmStateAction)new Wait { time = FsmFloat.op_Implicit(1f) }); } private void AddWaitDefense() { //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008e: Expected O, but got Unknown FsmUtil.AddState(_control, "Wait Move"); FsmUtil.AddTransition(_control, "SyncWait", "TOOK DAMAGE", "Wait Move"); FsmUtil.AddTransition(_control, "Wait Move", "EVADE", "Evade Antic"); FsmUtil.AddTransition(_control, "Wait Move", "PARRY", "Parry Antic"); FsmUtil.AddTransition(_control, "Wait Move", "NONE", "SyncWait"); PlayMakerFSM control = _control; SendRandomEventV4 val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[3] { FsmEvent.GetFsmEvent("EVADE"), FsmEvent.GetFsmEvent("PARRY"), FsmEvent.GetFsmEvent("NONE") }; val.weights = (FsmFloat[])(object)new FsmFloat[3] { FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(0f) }; val.missedMax = (FsmInt[])(object)new FsmInt[3] { FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10) }; val.eventMax = (FsmInt[])(object)new FsmInt[3] { FsmInt.op_Implicit(2), FsmInt.op_Implicit(2), FsmInt.op_Implicit(2) }; val.activeBool = FsmBool.op_Implicit(true); FsmUtil.AddAction(control, "Wait Move", (FsmStateAction)(object)val); } private void Update() { if (SilkenSisters.instance.configManager.syncWaitTime.Value != FsmUtil.GetFloatVariable(_control, "Wait Time").Value) { FsmUtil.GetFloatVariable(_control, "Wait Time").Value = SilkenSisters.instance.configManager.syncWaitTime.Value; } if (SilkenSisters.instance.configManager.syncDelay.Value != FsmUtil.GetFloatVariable(_control, "Async Delay").Value) { FsmUtil.GetFloatVariable(_control, "Async Delay").Value = SilkenSisters.instance.configManager.syncDelay.Value; } if (SilkenSisters.instance.configManager.syncGatherDistance.Value != FsmUtil.GetFloatVariable(_control, "Gather Distance").Value) { FsmUtil.GetFloatVariable(_control, "Gather Distance").Value = SilkenSisters.instance.configManager.syncGatherDistance.Value; } if (SilkenSisters.instance.configManager.syncTeleDistance.Value != FsmUtil.GetFloatVariable(_control, "Tele Distance").Value) { FsmUtil.GetFloatVariable(_control, "Tele Distance").Value = SilkenSisters.instance.configManager.syncTeleDistance.Value; } } private void SetParryBaitPos() { FsmVector3 vector3Variable = FsmUtil.GetVector3Variable(_control, "Hornet Pos"); float num = FsmUtil.GetFloatVariable(_control, "Hornet Facing Right").Value * SilkenSisters.instance.configManager.ParryBaitDistance.Value; if (vector3Variable.value.x + num < FsmUtil.GetFloatVariable(_control, "Phase Left X").Value || vector3Variable.value.x + num > FsmUtil.GetFloatVariable(_control, "Phase Right X").Value) { num *= -1f; } vector3Variable.value.x += num; vector3Variable.value.y -= 0.3183f; } private void SetDefenseParryPos() { //IL_0023: Unknown result type (might be due to invalid IL or missing references) //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0060: Unknown result type (might be due to invalid IL or missing references) //IL_006b: Unknown result type (might be due to invalid IL or missing references) FsmVector3 vector3Variable = FsmUtil.GetVector3Variable(_control, "Lace Pos"); FsmVector3 vector3Variable2 = FsmUtil.GetVector3Variable(_control, "Hornet Pos"); if (vector3Variable.Value.x > vector3Variable2.Value.x) { vector3Variable.value.x -= SilkenSisters.instance.configManager.DefenseParryDistance.Value; } else if (vector3Variable.Value.x < vector3Variable2.Value.x) { vector3Variable.value.x += SilkenSisters.instance.configManager.DefenseParryDistance.Value; } vector3Variable.value.y -= 0.29679996f; } private void GetTelePos() { FsmUtil.GetFloatVariable(_control, "Tele X").Value = FsmUtil.GetFloatVariable(FsmUtil.GetFsm(SilkenSisters.instance.phantomBossScene, "Silken Sisters Sync Control"), "Phantom X").Value; } private void ResetPlayerData() { PlayerDataVariableEvents.OnGetBool -= PrepatcherUtils.SilkenSisterMonitor; } } internal class PhantomScene : MonoBehaviour { private PlayMakerFSM _control; private void Awake() { Setup(); } private async Task Setup() { try { getComponents(); disableAreaDetection(); editFSMEvents(); editBossTitle(); setupHornetControl(); } catch (Exception ex) { SilkenSisters.Log.LogError((object)$"{ex} {ex.Message}"); } } private void getComponents() { _control = FsmUtil.GetFsmPreprocessed(((Component)this).gameObject, "Control"); } private void disableAreaDetection() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) if (SilkenSisters.isMemory()) { ((Behaviour)(BoxCollider2D)((Component)this).GetComponent(typeof(BoxCollider2D))).enabled = false; } } private void editFSMEvents() { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown //IL_0018: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Expected O, but got Unknown //IL_00bb: Unknown result type (might be due to invalid IL or missing references) //IL_00c1: Expected O, but got Unknown //IL_00e3: Unknown result type (might be due to invalid IL or missing references) //IL_00e9: Expected O, but got Unknown //IL_011c: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Expected O, but got Unknown //IL_015f: Unknown result type (might be due to invalid IL or missing references) //IL_0166: Expected O, but got Unknown //IL_0172: Unknown result type (might be due to invalid IL or missing references) //IL_0179: Expected O, but got Unknown //IL_0188: Unknown result type (might be due to invalid IL or missing references) //IL_0190: Unknown result type (might be due to invalid IL or missing references) //IL_01b0: Unknown result type (might be due to invalid IL or missing references) //IL_01b7: Expected O, but got Unknown FsmEventTarget val = new FsmEventTarget(); val.gameObject = SilkenSisters.instance.laceNPCFSMOwner; val.target = (EventTarget)1; SilkenSisters.Log.LogDebug((object)"[PhantomBoss.editFSMEvents] Trigger lace sit up"); SendEventByName val2 = new SendEventByName(); val2.sendEvent = FsmString.op_Implicit("ENTER"); val2.delay = FsmFloat.op_Implicit(0f); val2.eventTarget = val; FsmUtil.AddAction(_control, "Organ Hit", (FsmStateAction)(object)val2); FsmUtil.GetAction(_control, "Organ Hit", 0).animationTriggerEvent = FsmEvent.GetFsmEvent("SOMETHINGELSE"); FsmUtil.GetAction(_control, "Organ Hit", 0).animationCompleteEvent = FsmEvent.GetFsmEvent("FINISHED"); FsmUtil.AddIntVariable(_control, "Dummy"); FsmOwnerDefault val3 = new FsmOwnerDefault(); val3.OwnerOption = (OwnerDefaultOption)1; val3.GameObject = FsmGameObject.op_Implicit(UnityExtensions.FindChild(((Component)this).gameObject, "Organ Phantom")); Tk2dPauseAnimation val4 = new Tk2dPauseAnimation(); val4.gameObject = val3; val4.pause = FsmBool.op_Implicit(true); FsmUtil.AddAction(_control, "Organ Hit", (FsmStateAction)(object)val4); SilkenSisters.Log.LogDebug((object)"[PhantomBoss.editFSMEvents] Trigger lace jump"); SendEventByName val5 = new SendEventByName(); val5.sendEvent = FsmString.op_Implicit("JUMP"); val5.delay = FsmFloat.op_Implicit(0.2f); val5.eventTarget = val; FsmUtil.AddAction(_control, "Organ Note", (FsmStateAction)(object)val5); FunctionCall val6 = new FunctionCall(); val6.FunctionName = "FaceLeft"; SendMessage val7 = new SendMessage(); val7.gameObject = SilkenSisters.hornetFSMOwner; val7.delivery = (MessageType)0; val7.options = (SendMessageOptions)1; val7.functionCall = val6; FsmUtil.AddAction(_control, "BG Fog", (FsmStateAction)(object)val7); Tk2dPlayAnimation val8 = new Tk2dPlayAnimation(); val8.gameObject = SilkenSisters.hornetFSMOwner; val8.clipName = FsmString.op_Implicit("Challenge Talk Start"); val8.animLibName = FsmString.op_Implicit(""); FsmUtil.AddAction(_control, "BG Fog", (FsmStateAction)(object)val8); FsmUtil.GetAction(_control, "Organ Note", 3).time = FsmFloat.op_Implicit(0.3f); } private void setupHornetControl() { //IL_000f: Unknown result type (might be due to invalid IL or missing references) //IL_0015: Expected O, but got Unknown //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Expected O, but got Unknown //IL_003a: 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_0045: Expected O, but got Unknown //IL_0045: Unknown result type (might be due to invalid IL or missing references) //IL_004b: Expected O, but got Unknown //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0076: Expected O, but got Unknown //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009b: Expected O, but got Unknown SilkenSisters.Log.LogDebug((object)"[PhantomBoss.setupHornetControl] Setting actions to give back hornet control"); SendMessage val = new SendMessage(); FunctionCall val2 = new FunctionCall(); val2.FunctionName = "StartControlToIdle"; val.functionCall = val2; val.gameObject = SilkenSisters.hornetFSMOwner; val.options = (SendMessageOptions)1; SendMessage val3 = new SendMessage(); FunctionCall val4 = new FunctionCall(); val4.FunctionName = "RegainControl"; val3.functionCall = val4; val3.gameObject = SilkenSisters.hornetFSMOwner; val3.options = (SendMessageOptions)1; SetPlayerDataBool val5 = new SetPlayerDataBool(); val5.boolName = FsmString.op_Implicit("disablePause"); val5.value = FsmBool.op_Implicit(false); Tk2dPlayAnimation val6 = new Tk2dPlayAnimation(); val6.gameObject = SilkenSisters.hornetFSMOwner; val6.clipName = FsmString.op_Implicit("Challenge Talk End"); val6.animLibName = FsmString.op_Implicit(""); FsmUtil.AddAction(_control, "Start Battle", (FsmStateAction)(object)val6); FsmUtil.AddAction(_control, "Start Battle", (FsmStateAction)(object)val3); FsmUtil.AddAction(_control, "Start Battle", (FsmStateAction)(object)val); FsmUtil.AddAction(_control, "Start Battle", (FsmStateAction)(object)val5); } private void editBossTitle() { FsmUtil.GetAction(_control, "Start Battle", 3).bossTitle = FsmString.op_Implicit("SILKEN_SISTERS"); SilkenSisters.Log.LogDebug((object)string.Format("[PhantomBoss.editBossTitle] NewTitleBase:{0}", FsmUtil.GetAction(_control, "Start Battle", 3).bossTitle)); } } internal class SyncControl : MonoBehaviour { private PlayMakerFSM _control; private FsmOwnerDefault lacefsmowner; private FsmOwnerDefault phantomfsmowner; private FsmOwnerDefault hornetfsmowner; private FsmEventTarget LaceTarget; private FsmEventTarget PhantomTarget; private void Awake() { if (SilkenSisters.instance.configManager.syncedFight.Value) { Setup(); } else { ((Behaviour)this).enabled = false; } } private void Setup() { //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0031: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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_0053: Unknown result type (might be due to invalid IL or missing references) //IL_005d: Expected O, but got Unknown //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_0073: 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_008f: Expected O, but got Unknown lacefsmowner = SilkenSisters.instance.laceBossFSMOwner; phantomfsmowner = SilkenSisters.instance.phantomBossFSMOwner; hornetfsmowner = SilkenSisters.hornetFSMOwner; LaceTarget = new FsmEventTarget { gameObject = SilkenSisters.instance.laceBossFSMOwner, fsmName = FsmString.op_Implicit("Control"), target = (EventTarget)2 }; PhantomTarget = new FsmEventTarget { gameObject = SilkenSisters.instance.phantomBossFSMOwner, fsmName = FsmString.op_Implicit("Control"), target = (EventTarget)2 }; CreateControlFSM(); CreateVariables(); CreateStates(); MakeTransition(); Synchronize(); AddBusyActions(); SetupP3Check(); setupHealthCheck(); SetupRangeCheck(); SetupRangeCheckHornet(); SetupGatherRunMovements(); SetupGatherTeleMovements(); SetupSplitRunMovements(); SetupSplitTeleMovements(); SetupAttackChoice(); SetupSoloPhantom(); OrderAround(); StartFSM(); } private void StartFSM() { ((Behaviour)_control).enabled = true; } private void CreateControlFSM() { //IL_0076: Unknown result type (might be due to invalid IL or missing references) _control = ((Component)this).gameObject.AddComponent(); ((Behaviour)_control).enabled = false; _control.Reset(); _control.FsmName = "Silken Sisters Sync Control"; FsmUtil.GetState(_control, "State 1").Name = "Init"; FsmUtil.GetState(_control, "Init").Position = new Rect(0f, 0f, 20f, 10f); _control.fsm.StartState = "Init"; } private void CreateVariables() { FsmUtil.AddIntVariable(_control, "P2 HP").Value = SilkenSisters.instance.configManager.P2HP.Value; FsmUtil.AddIntVariable(_control, "P3 HP").Value = SilkenSisters.instance.configManager.P3HP.Value; FsmUtil.AddBoolVariable(_control, "Did P2").Value = false; FsmUtil.AddBoolVariable(_control, "Did P3").Value = false; FsmUtil.AddBoolVariable(_control, "First Rage").Value = false; FsmUtil.AddBoolVariable(_control, "Synchronous").Value = true; FsmUtil.AddBoolVariable(_control, "Keep Close").Value = true; FsmUtil.AddBoolVariable(_control, "Should Hop").Value = false; FsmUtil.AddBoolVariable(_control, "Lace Closest").Value = false; FsmUtil.AddBoolVariable(_control, "Hornet Between").Value = false; FsmUtil.AddBoolVariable(_control, "Phantom Alternate Attack").Value = false; FsmUtil.AddBoolVariable(_control, "Lace Alternate Attack").Value = false; FsmUtil.AddBoolVariable(_control, "Can Run").Value = false; FsmUtil.AddBoolVariable(_control, "Can Parry").Value = true; FsmUtil.AddIntVariable(_control, "Parry Cooldown").Value = 0; FsmUtil.AddStringVariable(_control, "Phantom Alternate Attack String").Value = ""; FsmUtil.AddStringVariable(_control, "Lace Alternate Attack String").Value = ""; FsmUtil.AddFloatVariable(_control, "Wait Time").Value = SilkenSisters.instance.configManager.syncWaitTime.Value; FsmUtil.AddFloatVariable(_control, "Async Delay").Value = SilkenSisters.instance.configManager.syncDelay.Value; FsmUtil.AddFloatVariable(_control, "Gather Distance").Value = SilkenSisters.instance.configManager.syncGatherDistance.Value; FsmUtil.AddFloatVariable(_control, "Tele Distance").Value = SilkenSisters.instance.configManager.syncTeleDistance.Value; FsmUtil.AddFloatVariable(_control, "Range Distance").Value = SilkenSisters.instance.configManager.syncRangeDistance.Value; FsmUtil.AddFloatVariable(_control, "Hornet Distance"); FsmUtil.AddFloatVariable(_control, "Lace Hornet Distance"); FsmUtil.AddFloatVariable(_control, "Phantom Hornet Distance"); FsmUtil.AddFloatVariable(_control, "Phantom Lace Distance"); FsmUtil.AddFloatVariable(_control, "Lace X"); FsmUtil.AddFloatVariable(_control, "Phantom X"); FsmUtil.AddGameObjectVariable(_control, "Phantom").Value = phantomfsmowner.gameObject.Value; FsmUtil.AddGameObjectVariable(_control, "Lace").Value = lacefsmowner.gameObject.Value; FsmUtil.AddGameObjectVariable(_control, "Hornet").Value = hornetfsmowner.gameObject.Value; FsmUtil.AddBoolVariable(_control, "Close enough"); FsmUtil.AddBoolVariable(_control, "Should Tele"); FsmUtil.AddBoolVariable(_control, "Should Run"); } private void CreateStates() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_0052: Unknown result type (might be due to invalid IL or missing references) //IL_0080: 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_00dc: Unknown result type (might be due to invalid IL or missing references) //IL_010a: Unknown result type (might be due to invalid IL or missing references) //IL_0138: Unknown result type (might be due to invalid IL or missing references) //IL_0166: Unknown result type (might be due to invalid IL or missing references) //IL_0194: Unknown result type (might be due to invalid IL or missing references) //IL_01c2: Unknown result type (might be due to invalid IL or missing references) //IL_01f0: Unknown result type (might be due to invalid IL or missing references) //IL_021e: Unknown result type (might be due to invalid IL or missing references) //IL_024c: Unknown result type (might be due to invalid IL or missing references) //IL_027a: Unknown result type (might be due to invalid IL or missing references) //IL_02a8: Unknown result type (might be due to invalid IL or missing references) //IL_02d6: Unknown result type (might be due to invalid IL or missing references) //IL_0304: Unknown result type (might be due to invalid IL or missing references) //IL_0332: Unknown result type (might be due to invalid IL or missing references) //IL_0360: Unknown result type (might be due to invalid IL or missing references) //IL_038e: Unknown result type (might be due to invalid IL or missing references) //IL_03bc: Unknown result type (might be due to invalid IL or missing references) //IL_03ea: Unknown result type (might be due to invalid IL or missing references) //IL_0418: Unknown result type (might be due to invalid IL or missing references) //IL_0457: Unknown result type (might be due to invalid IL or missing references) //IL_0485: Unknown result type (might be due to invalid IL or missing references) //IL_04b3: Unknown result type (might be due to invalid IL or missing references) //IL_04e1: Unknown result type (might be due to invalid IL or missing references) //IL_050f: Unknown result type (might be due to invalid IL or missing references) //IL_053d: Unknown result type (might be due to invalid IL or missing references) //IL_056b: Unknown result type (might be due to invalid IL or missing references) //IL_0599: Unknown result type (might be due to invalid IL or missing references) //IL_05c7: Unknown result type (might be due to invalid IL or missing references) //IL_05f5: Unknown result type (might be due to invalid IL or missing references) //IL_0623: Unknown result type (might be due to invalid IL or missing references) //IL_0651: Unknown result type (might be due to invalid IL or missing references) //IL_067f: Unknown result type (might be due to invalid IL or missing references) //IL_06ad: Unknown result type (might be due to invalid IL or missing references) //IL_06db: Unknown result type (might be due to invalid IL or missing references) //IL_0709: Unknown result type (might be due to invalid IL or missing references) //IL_0737: Unknown result type (might be due to invalid IL or missing references) //IL_0765: Unknown result type (might be due to invalid IL or missing references) //IL_0793: Unknown result type (might be due to invalid IL or missing references) //IL_07c1: Unknown result type (might be due to invalid IL or missing references) //IL_07ef: Unknown result type (might be due to invalid IL or missing references) //IL_081d: Unknown result type (might be due to invalid IL or missing references) //IL_084b: Unknown result type (might be due to invalid IL or missing references) //IL_0879: Unknown result type (might be due to invalid IL or missing references) //IL_08a7: Unknown result type (might be due to invalid IL or missing references) //IL_08d8: Unknown result type (might be due to invalid IL or missing references) FsmUtil.AddState(_control, "Wait Synchro").Position = new Rect(100f, 40f, 20f, 10f); FsmUtil.AddState(_control, "Wait Lace").Position = new Rect(325f, 150f, 20f, 10f); FsmUtil.AddState(_control, "Wait Phantom").Position = new Rect(325f, 250f, 20f, 10f); FsmUtil.AddState(_control, "Range Check").Position = new Rect(300f, -100f, 20f, 10f); FsmUtil.AddState(_control, "Range Check Hornet").Position = new Rect(650f, -100f, 20f, 10f); FsmUtil.AddState(_control, "Health Check").Position = new Rect(300f, -200f, 20f, 10f); FsmUtil.AddState(_control, "P2 Shift").Position = new Rect(400f, -200f, 20f, 10f); FsmUtil.AddState(_control, "P3 Shift").Position = new Rect(500f, -200f, 20f, 10f); FsmUtil.AddState(_control, "Hornet Close").Position = new Rect(900f, 15f, 20f, 10f); FsmUtil.AddState(_control, "Hornet Far").Position = new Rect(900f, 300f, 20f, 10f); FsmUtil.AddState(_control, "Gather Run").Position = new Rect(500f, 0f, 20f, 10f); FsmUtil.AddState(_control, "Split Run").Position = new Rect(500f, 100f, 20f, 10f); FsmUtil.AddState(_control, "Gather Tele").Position = new Rect(500f, 200f, 20f, 10f); FsmUtil.AddState(_control, "Split Tele").Position = new Rect(500f, 300f, 20f, 10f); FsmUtil.AddState(_control, "Lace Busy").Position = new Rect(50f, 300f, 20f, 10f); FsmUtil.AddState(_control, "Phantom Busy").Position = new Rect(50f, 200f, 20f, 10f); FsmUtil.AddState(_control, "Phantom Busy Mock").Position = new Rect(-50f, 200f, 20f, 10f); FsmUtil.AddState(_control, "Phantom Busy Defend").Position = new Rect(-50f, 200f, 20f, 10f); FsmUtil.AddState(_control, "Lace Busy Mock").Position = new Rect(-50f, 200f, 20f, 10f); FsmUtil.AddState(_control, "Lace Busy Defend").Position = new Rect(-50f, 200f, 20f, 10f); FsmUtil.AddState(_control, "P3?").Position = new Rect(500f, -100f, 20f, 10f); FsmUtil.AddState(_control, "P3!").Position = new Rect(900f, 600f, 20f, 10f); FsmUtil.AddState(_control, "Phantom Range Check").Position = new Rect(-50f, 400f, 20f, 10f); int num = 2; int num2 = 40; int num3 = -200; int num4 = 1250; FsmUtil.AddState(_control, "Duo Charge Stab").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Charge A Throw").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Charge Dragoon").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Charge Parry Bait").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Charge AH Dragoon").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo J Slash Stab").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo J Slash Parry").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo J Slash G Throw").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo J Slash GH Dragoon").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Counter Stab").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Counter Parry").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Combo Slash Parry").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Combo Slash G Throw").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Combo Slash A Throw").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Combo Slash Dragoon").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Combo Slash Parry Bait").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Combo Slash AH Dragoon").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Cross Slash Parry Bait").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Cross Slash AH Dragoon").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Cross Slash GH Dragoon").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Parry Bait Stab").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Parry Bait A Throw").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Parry Bait Dragoon").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Duo Counter Parry Bait").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "RAAAAAAGE").Position = new Rect((float)num4, (float)(num3 += num2 * num), 20f, 10f); FsmUtil.AddState(_control, "Attack End").Position = new Rect((float)(num4 + 200), -200f, 20f, 10f); } private void MakeTransition() { FsmUtil.AddTransition(_control, "Init", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Wait Synchro", "PHANTOM READY", "Wait Lace"); FsmUtil.AddTransition(_control, "Wait Synchro", "LACE READY", "Wait Phantom"); FsmUtil.AddTransition(_control, "Wait Lace", "LACE READY", "Range Check"); FsmUtil.AddTransition(_control, "Wait Phantom", "PHANTOM READY", "Range Check"); FsmUtil.AddTransition(_control, "Wait Lace", "LACE BUSY", "Lace Busy"); FsmUtil.AddTransition(_control, "Wait Phantom", "PHANTOM BUSY", "Phantom Busy"); FsmUtil.AddTransition(_control, "Lace Busy", "MOCK", "Lace Busy Mock"); FsmUtil.AddTransition(_control, "Lace Busy", "DEFEND", "Lace Busy Defend"); FsmUtil.AddTransition(_control, "Phantom Busy", "MOCK", "Phantom Busy Mock"); FsmUtil.AddTransition(_control, "Phantom Busy", "DEFEND", "Phantom Busy Defend"); FsmUtil.AddTransition(_control, "Lace Busy Mock", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Lace Busy Defend", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Phantom Busy Mock", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Phantom Busy Defend", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Range Check", "GATHER R", "Gather Run"); FsmUtil.AddTransition(_control, "Range Check", "SPLIT R", "Split Run"); FsmUtil.AddTransition(_control, "Range Check", "GATHER T", "Gather Tele"); FsmUtil.AddTransition(_control, "Range Check", "SPLIT T", "Split Tele"); FsmUtil.AddTransition(_control, "Range Check", "FINISHED", "Health Check"); FsmUtil.AddTransition(_control, "Health Check", "FINISHED", "P3?"); FsmUtil.AddTransition(_control, "Health Check", "TO P2", "P2 Shift"); FsmUtil.AddTransition(_control, "Health Check", "TO P3", "P3 Shift"); FsmUtil.AddTransition(_control, "P2 Shift", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "P3 Shift", "FINISHED", "RAAAAAAGE"); FsmUtil.AddTransition(_control, "Gather Run", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Split Run", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Gather Tele", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Split Tele", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Range Check Hornet", "FAR", "Hornet Far"); FsmUtil.AddTransition(_control, "Range Check Hornet", "CLOSE", "Hornet Close"); FsmUtil.AddTransition(_control, "P3?", "NO", "Range Check Hornet"); FsmUtil.AddTransition(_control, "P3?", "YES", "P3!"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO JSLASH STAB", "Duo J Slash Stab"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO JSLASH PARRY", "Duo J Slash Parry"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO COUNTER STAB", "Duo Counter Stab"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO COUNTER PARRY", "Duo Counter Parry"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO COUNTER PARRY BAIT", "Duo Counter Parry Bait"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO COMBOSLASH PARRY", "Duo Combo Slash Parry"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO COMBOSLASH GTHROW", "Duo Combo Slash G Throw"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO COMBOSLASH ATHROW", "Duo Combo Slash A Throw"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO COMBOSLASH DRAGOON", "Duo Combo Slash Dragoon"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO COMBOSLASH PARRYBAIT", "Duo Combo Slash Parry Bait"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO COMBOSLASH AHDRAGOON", "Duo Combo Slash AH Dragoon"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO PARRYBAIT STAB", "Duo Parry Bait Stab"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO PARRYBAIT ATHROW", "Duo Parry Bait A Throw"); FsmUtil.AddTransition(_control, "Hornet Close", "DUO PARRYBAIT DRAGOON", "Duo Parry Bait Dragoon"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO CHARGE STAB", "Duo Charge Stab"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO CHARGE ATHROW", "Duo Charge A Throw"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO CHARGE DRAGOON", "Duo Charge Dragoon"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO CHARGE PARRYBAIT", "Duo Charge Parry Bait"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO CHARGE AHDRAGOON", "Duo Charge AH Dragoon"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO JSLASH STAB", "Duo J Slash Stab"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO JSLASH GTHROW", "Duo J Slash G Throw"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO COMBOSLASH GTHROW", "Duo Combo Slash G Throw"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO COMBOSLASH ATHROW", "Duo Combo Slash A Throw"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO COMBOSLASH AHDRAGOON", "Duo Combo Slash AH Dragoon"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO COMBOSLASH PARRYBAIT", "Duo Combo Slash Parry Bait"); FsmUtil.AddTransition(_control, "Hornet Far", "DUO COUNTER PARRY BAIT", "Duo Counter Parry Bait"); FsmUtil.AddTransition(_control, "P3!", "RAGE", "RAAAAAAGE"); FsmUtil.AddTransition(_control, "P3!", "DUO CHARGE AHDRAGOON", "Duo Charge AH Dragoon"); FsmUtil.AddTransition(_control, "P3!", "DUO JSLASH GHDRAGOON", "Duo J Slash GH Dragoon"); FsmUtil.AddTransition(_control, "P3!", "DUO COMBOSLASH AHDRAGOON", "Duo Combo Slash AH Dragoon"); FsmUtil.AddTransition(_control, "P3!", "DUO CROSSSLASH PARRYBAIT", "Duo Cross Slash Parry Bait"); FsmUtil.AddTransition(_control, "P3!", "DUO CROSSSLASH AHDRAGOON", "Duo Cross Slash AH Dragoon"); FsmUtil.AddTransition(_control, "P3!", "DUO CROSSSLASH GHDRAGOON", "Duo Cross Slash GH Dragoon"); FsmUtil.AddTransition(_control, "Attack End", "FINISHED", "Wait Synchro"); FsmUtil.AddTransition(_control, "Duo Charge Stab", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Charge A Throw", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Charge Dragoon", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Charge Parry Bait", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Charge Parry Bait", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo Charge AH Dragoon", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo J Slash Stab", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo J Slash Parry", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo J Slash Parry", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo J Slash G Throw", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo J Slash GH Dragoon", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Counter Stab", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Counter Stab", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo Counter Parry", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Counter Parry", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo Combo Slash Parry", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Combo Slash Parry", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo Combo Slash G Throw", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Combo Slash A Throw", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Combo Slash Dragoon", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Combo Slash Parry Bait", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Combo Slash Parry Bait", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo Combo Slash AH Dragoon", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Cross Slash Parry Bait", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Cross Slash Parry Bait", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo Cross Slash AH Dragoon", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Cross Slash GH Dragoon", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Parry Bait Stab", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Parry Bait Stab", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo Parry Bait A Throw", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Parry Bait A Throw", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo Parry Bait Dragoon", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Parry Bait Dragoon", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "Duo Counter Parry Bait", "FINISHED", "Attack End"); FsmUtil.AddTransition(_control, "Duo Counter Parry Bait", "RETRY", "Range Check Hornet"); FsmUtil.AddTransition(_control, "RAAAAAAGE", "FINISHED", "Attack End"); } private void Synchronize() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0020: Unknown result type (might be due to invalid IL or missing references) //IL_003b: 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_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0076: Expected O, but got Unknown FsmUtil.AddAction(_control, "Wait Lace", (FsmStateAction)new Wait { finishEvent = FsmEvent.GetFsmEvent("LACE BUSY"), time = FsmUtil.GetFloatVariable(_control, "Wait Time") }); FsmUtil.AddAction(_control, "Wait Phantom", (FsmStateAction)new Wait { finishEvent = FsmEvent.GetFsmEvent("PHANTOM BUSY"), time = FsmUtil.GetFloatVariable(_control, "Wait Time") }); } private void AddBusyActions() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Expected O, but got Unknown //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00bf: Expected O, but got Unknown //IL_0164: Unknown result type (might be due to invalid IL or missing references) //IL_0169: Unknown result type (might be due to invalid IL or missing references) //IL_0175: Unknown result type (might be due to invalid IL or missing references) //IL_0185: Unknown result type (might be due to invalid IL or missing references) //IL_019a: Expected O, but got Unknown //IL_01a5: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Unknown result type (might be due to invalid IL or missing references) //IL_01b6: 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_01db: Expected O, but got Unknown //IL_01e6: Unknown result type (might be due to invalid IL or missing references) //IL_01eb: Unknown result type (might be due to invalid IL or missing references) //IL_01f7: Unknown result type (might be due to invalid IL or missing references) //IL_0207: Unknown result type (might be due to invalid IL or missing references) //IL_021c: Expected O, but got Unknown //IL_0227: Unknown result type (might be due to invalid IL or missing references) //IL_022c: 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_0248: Unknown result type (might be due to invalid IL or missing references) //IL_025d: Expected O, but got Unknown PlayMakerFSM control = _control; SendRandomEventV4 val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[2] { FsmEvent.GetFsmEvent("MOCK"), FsmEvent.GetFsmEvent("DEFEND") }; val.weights = (FsmFloat[])(object)new FsmFloat[2] { FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(3f) }; val.eventMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(1), FsmInt.op_Implicit(10) }; val.missedMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(10), FsmInt.op_Implicit(10) }; val.activeBool = FsmBool.op_Implicit(true); FsmUtil.AddAction(control, "Lace Busy", (FsmStateAction)(object)val); PlayMakerFSM control2 = _control; val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[2] { FsmEvent.GetFsmEvent("MOCK"), FsmEvent.GetFsmEvent("DEFEND") }; val.weights = (FsmFloat[])(object)new FsmFloat[2] { FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f) }; val.eventMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(2), FsmInt.op_Implicit(2) }; val.missedMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(2), FsmInt.op_Implicit(2) }; val.activeBool = FsmBool.op_Implicit(true); FsmUtil.AddAction(control2, "Phantom Busy", (FsmStateAction)(object)val); FsmUtil.AddAction(_control, "Lace Busy Mock", (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("MOCK"), delay = FsmFloat.op_Implicit(0f) }); FsmUtil.AddAction(_control, "Lace Busy Defend", (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DEFEND"), delay = FsmFloat.op_Implicit(0f) }); FsmUtil.AddAction(_control, "Phantom Busy Mock", (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("MOCK"), delay = FsmFloat.op_Implicit(0f) }); FsmUtil.AddAction(_control, "Phantom Busy Defend", (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("DEFEND"), delay = FsmFloat.op_Implicit(0f) }); } private void SetupRangeCheck() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0026: Unknown result type (might be due to invalid IL or missing references) //IL_003b: 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_0057: Unknown result type (might be due to invalid IL or missing references) //IL_006d: Unknown result type (might be due to invalid IL or missing references) //IL_0079: Expected O, but got Unknown //IL_0084: Unknown result type (might be due to invalid IL or missing references) //IL_0089: Unknown result type (might be due to invalid IL or missing references) //IL_0095: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_00b7: Expected O, but got Unknown //IL_00df: 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_00f0: Unknown result type (might be due to invalid IL or missing references) //IL_0106: Unknown result type (might be due to invalid IL or missing references) //IL_0121: Expected O, but got Unknown //IL_012c: Unknown result type (might be due to invalid IL or missing references) //IL_0131: Unknown result type (might be due to invalid IL or missing references) //IL_013d: Unknown result type (might be due to invalid IL or missing references) //IL_0153: Unknown result type (might be due to invalid IL or missing references) //IL_016e: Expected O, but got Unknown //IL_0179: Unknown result type (might be due to invalid IL or missing references) //IL_017e: 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_01a0: Unknown result type (might be due to invalid IL or missing references) //IL_01bb: Expected O, but got Unknown //IL_01c6: 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_01d7: Unknown result type (might be due to invalid IL or missing references) //IL_01ed: Unknown result type (might be due to invalid IL or missing references) //IL_01f9: Expected O, but got Unknown //IL_0204: Unknown result type (might be due to invalid IL or missing references) //IL_0209: Unknown result type (might be due to invalid IL or missing references) //IL_021f: Unknown result type (might be due to invalid IL or missing references) //IL_0235: Unknown result type (might be due to invalid IL or missing references) //IL_024b: Unknown result type (might be due to invalid IL or missing references) //IL_0261: Unknown result type (might be due to invalid IL or missing references) //IL_0262: Unknown result type (might be due to invalid IL or missing references) //IL_026c: Expected O, but got Unknown //IL_026c: Unknown result type (might be due to invalid IL or missing references) //IL_027c: Unknown result type (might be due to invalid IL or missing references) //IL_0288: Expected O, but got Unknown //IL_0293: Unknown result type (might be due to invalid IL or missing references) //IL_0298: Unknown result type (might be due to invalid IL or missing references) //IL_02a4: Unknown result type (might be due to invalid IL or missing references) //IL_02ba: Unknown result type (might be due to invalid IL or missing references) //IL_02c6: Expected O, but got Unknown //IL_02d1: Unknown result type (might be due to invalid IL or missing references) //IL_02d6: 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_02f8: Unknown result type (might be due to invalid IL or missing references) //IL_0304: Expected O, but got Unknown //IL_030f: Unknown result type (might be due to invalid IL or missing references) //IL_0314: Unknown result type (might be due to invalid IL or missing references) //IL_0320: Unknown result type (might be due to invalid IL or missing references) //IL_0336: Unknown result type (might be due to invalid IL or missing references) //IL_0342: Expected O, but got Unknown //IL_034d: Unknown result type (might be due to invalid IL or missing references) //IL_0352: Unknown result type (might be due to invalid IL or missing references) //IL_0368: Unknown result type (might be due to invalid IL or missing references) //IL_037e: Unknown result type (might be due to invalid IL or missing references) //IL_0394: Unknown result type (might be due to invalid IL or missing references) //IL_03aa: Unknown result type (might be due to invalid IL or missing references) //IL_03ab: Unknown result type (might be due to invalid IL or missing references) //IL_03b5: Expected O, but got Unknown //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_03d1: Expected O, but got Unknown //IL_03dc: Unknown result type (might be due to invalid IL or missing references) //IL_03e1: Unknown result type (might be due to invalid IL or missing references) //IL_03f7: Unknown result type (might be due to invalid IL or missing references) //IL_040d: Unknown result type (might be due to invalid IL or missing references) //IL_0423: Unknown result type (might be due to invalid IL or missing references) //IL_0439: Unknown result type (might be due to invalid IL or missing references) //IL_044f: Unknown result type (might be due to invalid IL or missing references) //IL_045f: Unknown result type (might be due to invalid IL or missing references) //IL_046b: Expected O, but got Unknown //IL_0476: Unknown result type (might be due to invalid IL or missing references) //IL_047c: Expected O, but got Unknown //IL_04bf: Unknown result type (might be due to invalid IL or missing references) //IL_04c9: Expected O, but got Unknown //IL_04e1: Unknown result type (might be due to invalid IL or missing references) //IL_04e7: Expected O, but got Unknown //IL_052a: Unknown result type (might be due to invalid IL or missing references) //IL_0534: Expected O, but got Unknown //IL_054c: Unknown result type (might be due to invalid IL or missing references) //IL_0552: Expected O, but got Unknown //IL_0595: Unknown result type (might be due to invalid IL or missing references) //IL_059f: Expected O, but got Unknown //IL_05b7: Unknown result type (might be due to invalid IL or missing references) //IL_05bd: Expected O, but got Unknown //IL_061e: Unknown result type (might be due to invalid IL or missing references) //IL_0628: Expected O, but got Unknown //IL_0640: Unknown result type (might be due to invalid IL or missing references) //IL_0646: Expected O, but got Unknown //IL_06a7: Unknown result type (might be due to invalid IL or missing references) //IL_06b1: Expected O, but got Unknown //IL_06c9: Unknown result type (might be due to invalid IL or missing references) //IL_06cf: Expected O, but got Unknown //IL_0730: Unknown result type (might be due to invalid IL or missing references) //IL_073a: Expected O, but got Unknown FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Run"), isFalse = FsmEvent.GetFsmEvent("FINISHED") }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Can Run"), everyFrame = false }); FsmUtil.AddAction(_control, "Attack End", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(true), boolVariable = FsmUtil.GetBoolVariable(_control, "Can Run"), everyFrame = false }); FsmUtil.AddMethod(_control, "Range Check", (Action)IsHornetBetween, false); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new GetXDistance { gameObject = lacefsmowner, target = FsmUtil.GetGameObjectVariable(_control, "Phantom"), storeResult = FsmUtil.GetFloatVariable(_control, "Phantom Lace Distance") }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new GetXDistance { gameObject = lacefsmowner, target = FsmUtil.GetGameObjectVariable(_control, "Hornet"), storeResult = FsmUtil.GetFloatVariable(_control, "Lace Hornet Distance") }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new GetXDistance { gameObject = phantomfsmowner, target = FsmUtil.GetGameObjectVariable(_control, "Hornet"), storeResult = FsmUtil.GetFloatVariable(_control, "Phantom Hornet Distance") }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Lace Closest"), everyFrame = false }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new FloatTestToBool { float1 = FsmUtil.GetFloatVariable(_control, "Lace Hornet Distance"), float2 = FsmUtil.GetFloatVariable(_control, "Phantom Hornet Distance"), lessThanBool = FsmUtil.GetBoolVariable(_control, "Lace Closest"), equalBool = FsmUtil.GetBoolVariable(_control, "Lace Closest"), greaterThanBool = new FsmBool(), tolerance = FsmFloat.op_Implicit(0f), everyFrame = false }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Should Tele"), everyFrame = false }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Should Run"), everyFrame = false }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new SetBoolValue { boolValue = FsmBool.op_Implicit(false), boolVariable = FsmUtil.GetBoolVariable(_control, "Close Enough"), everyFrame = false }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new FloatTestToBool { float1 = FsmUtil.GetFloatVariable(_control, "Phantom Lace Distance"), float2 = FsmUtil.GetFloatVariable(_control, "Gather Distance"), lessThanBool = FsmUtil.GetBoolVariable(_control, "Close Enough"), equalBool = FsmUtil.GetBoolVariable(_control, "Close Enough"), greaterThanBool = new FsmBool(), tolerance = FsmFloat.op_Implicit(0f), everyFrame = false }); FsmUtil.AddAction(_control, "Range Check", (FsmStateAction)new FloatTestToBool { float1 = FsmUtil.GetFloatVariable(_control, "Phantom Lace Distance"), float2 = FsmUtil.GetFloatVariable(_control, "Tele Distance"), lessThanBool = FsmUtil.GetBoolVariable(_control, "Should Run"), equalBool = FsmUtil.GetBoolVariable(_control, "Should Run"), greaterThanBool = FsmUtil.GetBoolVariable(_control, "Should Tele"), tolerance = FsmFloat.op_Implicit(0f), everyFrame = false }); PlayMakerFSM control = _control; BoolAllTrue val = new BoolAllTrue(); val.boolVariables = (FsmBool[])(object)new FsmBool[2] { FsmUtil.GetBoolVariable(_control, "Keep Close"), FsmUtil.GetBoolVariable(_control, "Close Enough") }; val.sendEvent = FsmEvent.GetFsmEvent("FINISHED"); val.storeResult = new FsmBool(); val.everyFrame = false; FsmUtil.AddAction(control, "Range Check", (FsmStateAction)(object)val); PlayMakerFSM control2 = _control; val = new BoolAllTrue(); val.boolVariables = (FsmBool[])(object)new FsmBool[2] { FsmUtil.GetBoolVariable(_control, "Keep Close"), FsmUtil.GetBoolVariable(_control, "Should Run") }; val.sendEvent = FsmEvent.GetFsmEvent("GATHER R"); val.storeResult = new FsmBool(); val.everyFrame = false; FsmUtil.AddAction(control2, "Range Check", (FsmStateAction)(object)val); PlayMakerFSM control3 = _control; val = new BoolAllTrue(); val.boolVariables = (FsmBool[])(object)new FsmBool[2] { FsmUtil.GetBoolVariable(_control, "Keep Close"), FsmUtil.GetBoolVariable(_control, "Should Tele") }; val.sendEvent = FsmEvent.GetFsmEvent("GATHER T"); val.storeResult = new FsmBool(); val.everyFrame = false; FsmUtil.AddAction(control3, "Range Check", (FsmStateAction)(object)val); PlayMakerFSM control4 = _control; BoolTestMulti val2 = new BoolTestMulti(); val2.boolVariables = (FsmBool[])(object)new FsmBool[2] { FsmUtil.GetBoolVariable(_control, "Keep Close"), FsmUtil.GetBoolVariable(_control, "Close Enough") }; val2.boolStates = (FsmBool[])(object)new FsmBool[2] { FsmBool.op_Implicit(false), FsmBool.op_Implicit(true) }; val2.trueEvent = FsmEvent.GetFsmEvent("SPLIT T"); val2.storeResult = new FsmBool(); val2.everyFrame = false; FsmUtil.AddAction(control4, "Range Check", (FsmStateAction)(object)val2); PlayMakerFSM control5 = _control; val2 = new BoolTestMulti(); val2.boolVariables = (FsmBool[])(object)new FsmBool[2] { FsmUtil.GetBoolVariable(_control, "Keep Close"), FsmUtil.GetBoolVariable(_control, "Should Run") }; val2.boolStates = (FsmBool[])(object)new FsmBool[2] { FsmBool.op_Implicit(false), FsmBool.op_Implicit(true) }; val2.trueEvent = FsmEvent.GetFsmEvent("SPLIT R"); val2.storeResult = new FsmBool(); val2.everyFrame = false; FsmUtil.AddAction(control5, "Range Check", (FsmStateAction)(object)val2); PlayMakerFSM control6 = _control; val2 = new BoolTestMulti(); val2.boolVariables = (FsmBool[])(object)new FsmBool[2] { FsmUtil.GetBoolVariable(_control, "Keep Close"), FsmUtil.GetBoolVariable(_control, "Should Tele") }; val2.boolStates = (FsmBool[])(object)new FsmBool[2] { FsmBool.op_Implicit(false), FsmBool.op_Implicit(true) }; val2.trueEvent = FsmEvent.GetFsmEvent("FINISHED"); val2.storeResult = new FsmBool(); val2.everyFrame = false; FsmUtil.AddAction(control6, "Range Check", (FsmStateAction)(object)val2); } private void SetupGatherRunMovements() { //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_001c: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0033: Unknown result type (might be due to invalid IL or missing references) //IL_0049: Unknown result type (might be due to invalid IL or missing references) //IL_005e: Expected O, but got Unknown //IL_0069: 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_007a: Unknown result type (might be due to invalid IL or missing references) //IL_008a: Unknown result type (might be due to invalid IL or missing references) //IL_0091: Unknown result type (might be due to invalid IL or missing references) //IL_00a7: Unknown result type (might be due to invalid IL or missing references) //IL_00bc: Expected O, but got Unknown //IL_00c7: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Unknown result type (might be due to invalid IL or missing references) //IL_00fb: Unknown result type (might be due to invalid IL or missing references) //IL_0110: Expected O, but got Unknown //IL_011b: Unknown result type (might be due to invalid IL or missing references) //IL_0120: Unknown result type (might be due to invalid IL or missing references) //IL_012c: Unknown result type (might be due to invalid IL or missing references) //IL_013c: Unknown result type (might be due to invalid IL or missing references) //IL_0143: Unknown result type (might be due to invalid IL or missing references) //IL_014f: Unknown result type (might be due to invalid IL or missing references) //IL_0164: Expected O, but got Unknown FsmUtil.AddAction(_control, "Gather Run", (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("EVADE PHANTOM"), everyFrame = false, activeBool = FsmUtil.GetBoolVariable(_control, "Lace Closest"), delay = FsmFloat.op_Implicit(0f) }); FsmUtil.AddAction(_control, "Gather Run", (FsmStateAction)new SendEventByNameV3 { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("RUN TO LACE"), everyFrame = false, activeBool = FsmUtil.GetBoolVariable(_control, "Lace Closest"), delay = FsmFloat.op_Implicit(0f) }); FsmUtil.AddAction(_control, "Gather Run", (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("HOP PHANTOM"), everyFrame = false, activeBool = FsmBool.op_Implicit(true), delay = FsmFloat.op_Implicit(0f) }); FsmUtil.AddAction(_control, "Gather Run", (FsmStateAction)new SendEventByNameV3 { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("RUN AWAY LACE"), everyFrame = false, activeBool = FsmBool.op_Implicit(true), delay = FsmFloat.op_Implicit(0f) }); } private void SetupGatherTeleMovements() { //IL_0028: Unknown result type (might be due to invalid IL or missing references) //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_0049: Unknown result type (might be due to invalid IL or missing references) //IL_0050: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0071: Expected O, but got Unknown //IL_007c: Unknown result type (might be due to invalid IL or missing references) //IL_0081: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_009d: Unknown result type (might be due to invalid IL or missing references) //IL_00a4: Unknown result type (might be due to invalid IL or missing references) //IL_00b0: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Expected O, but got Unknown FsmUtil.AddMethod(_control, "Gather Tele", (Action)SelectGatherTelePosX, false); FsmUtil.AddAction(_control, "Gather Tele", (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("TELE"), everyFrame = false, activeBool = FsmBool.op_Implicit(true), delay = FsmFloat.op_Implicit(0f) }); FsmUtil.AddAction(_control, "Gather Tele", (FsmStateAction)new SendEventByNameV3 { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("PHASE TELE"), everyFrame = false, activeBool = FsmBool.op_Implicit(true), delay = FsmFloat.op_Implicit(0f) }); } private void SetupSplitRunMovements() { //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_0024: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Unknown result type (might be due to invalid IL or missing references) //IL_003b: Unknown result type (might be due to invalid IL or missing references) //IL_0051: Unknown result type (might be due to invalid IL or missing references) //IL_0062: Expected O, but got Unknown //IL_0064: Unknown result type (might be due to invalid IL or missing references) //IL_0069: Unknown result type (might be due to invalid IL or missing references) //IL_0075: Unknown result type (might be due to invalid IL or missing references) //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008c: Unknown result type (might be due to invalid IL or missing references) //IL_00a2: Unknown result type (might be due to invalid IL or missing references) //IL_00b3: Expected O, but got Unknown //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_00c5: Unknown result type (might be due to invalid IL or missing references) //IL_00d5: Unknown result type (might be due to invalid IL or missing references) //IL_00dc: Unknown result type (might be due to invalid IL or missing references) //IL_00f2: Unknown result type (might be due to invalid IL or missing references) //IL_0103: Expected O, but got Unknown //IL_0105: Unknown result type (might be due to invalid IL or missing references) //IL_010a: Unknown result type (might be due to invalid IL or missing references) //IL_0116: Unknown result type (might be due to invalid IL or missing references) //IL_0126: Unknown result type (might be due to invalid IL or missing references) //IL_012d: Unknown result type (might be due to invalid IL or missing references) //IL_0143: Unknown result type (might be due to invalid IL or missing references) //IL_0154: Expected O, but got Unknown //IL_0156: Unknown result type (might be due to invalid IL or missing references) //IL_015b: Unknown result type (might be due to invalid IL or missing references) //IL_0167: Unknown result type (might be due to invalid IL or missing references) //IL_0177: Unknown result type (might be due to invalid IL or missing references) //IL_017e: Unknown result type (might be due to invalid IL or missing references) //IL_0194: Unknown result type (might be due to invalid IL or missing references) //IL_01a5: Expected O, but got Unknown //IL_01a7: Unknown result type (might be due to invalid IL or missing references) //IL_01ac: Unknown result type (might be due to invalid IL or missing references) //IL_01b8: Unknown result type (might be due to invalid IL or missing references) //IL_01c8: Unknown result type (might be due to invalid IL or missing references) //IL_01cf: Unknown result type (might be due to invalid IL or missing references) //IL_01db: Unknown result type (might be due to invalid IL or missing references) //IL_01ec: Expected O, but got Unknown //IL_01ee: 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_01ff: Unknown result type (might be due to invalid IL or missing references) //IL_020f: Unknown result type (might be due to invalid IL or missing references) //IL_0216: Unknown result type (might be due to invalid IL or missing references) //IL_0222: Unknown result type (might be due to invalid IL or missing references) //IL_0233: Expected O, but got Unknown FsmUtil.AddActions(_control, "Split Run", (FsmStateAction[])(object)new FsmStateAction[7] { (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("EVADE"), everyFrame = false, activeBool = FsmUtil.GetBoolVariable(_control, "Hornet Between"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByNameV3 { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("EVADE"), everyFrame = false, activeBool = FsmUtil.GetBoolVariable(_control, "Hornet Between"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByNameV3 { eventTarget = FsmEventTarget.Self, sendEvent = FsmString.op_Implicit("FINISHED"), everyFrame = false, activeBool = FsmUtil.GetBoolVariable(_control, "Hornet Between"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("HOP NONE"), everyFrame = false, activeBool = FsmUtil.GetBoolVariable(_control, "Lace Closest"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByNameV3 { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("EVADE"), everyFrame = false, activeBool = FsmUtil.GetBoolVariable(_control, "Lace Closest"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("EVADE"), everyFrame = false, activeBool = FsmBool.op_Implicit(true), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByNameV3 { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("RUN TO"), everyFrame = false, activeBool = FsmBool.op_Implicit(true), delay = FsmFloat.op_Implicit(0f) } }); } private void SetupSplitTeleMovements() { //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_0035: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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_0058: Unknown result type (might be due to invalid IL or missing references) //IL_0064: Unknown result type (might be due to invalid IL or missing references) //IL_0075: Expected O, but got Unknown //IL_0077: Unknown result type (might be due to invalid IL or missing references) //IL_007c: 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_0098: 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_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_00bc: Expected O, but got Unknown FsmUtil.AddMethod(_control, "Split Tele", (Action)SelectSplitTelePosX, false); FsmUtil.AddActions(_control, "Split Tele", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("TELE"), everyFrame = false, activeBool = FsmBool.op_Implicit(true), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByNameV3 { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("PHASE TELE"), everyFrame = false, activeBool = FsmBool.op_Implicit(true), delay = FsmFloat.op_Implicit(0f) } }); } private void SetupRangeCheckHornet() { //IL_0028: Unknown result type (might be due to invalid IL or missing references) //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_0043: Unknown result type (might be due to invalid IL or missing references) //IL_0059: Unknown result type (might be due to invalid IL or missing references) //IL_0069: Unknown result type (might be due to invalid IL or missing references) //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_0089: Unknown result type (might be due to invalid IL or missing references) //IL_009e: Expected O, but got Unknown FsmUtil.AddMethod(_control, "Range Check Hornet", (Action)GetDuoDistanceToHornet, false); FsmUtil.AddAction(_control, "Range Check Hornet", (FsmStateAction)new FloatCompare { float1 = FsmUtil.GetFloatVariable(_control, "Hornet Distance"), float2 = FsmUtil.GetFloatVariable(_control, "Range Distance"), lessThan = FsmEvent.GetFsmEvent("CLOSE"), equal = FsmEvent.GetFsmEvent("CLOSE"), greaterThan = FsmEvent.GetFsmEvent("FAR"), tolerance = FsmFloat.op_Implicit(0f) }); } private void setupHealthCheck() { //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_002e: Unknown result type (might be due to invalid IL or missing references) //IL_003f: Expected O, but got Unknown //IL_0041: Unknown result type (might be due to invalid IL or missing references) //IL_0046: Unknown result type (might be due to invalid IL or missing references) //IL_005c: 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_0082: Unknown result type (might be due to invalid IL or missing references) //IL_0093: Expected O, but got Unknown //IL_0095: Unknown result type (might be due to invalid IL or missing references) //IL_009a: Unknown result type (might be due to invalid IL or missing references) //IL_00b0: Unknown result type (might be due to invalid IL or missing references) //IL_00c1: Expected O, but got Unknown //IL_00c3: Unknown result type (might be due to invalid IL or missing references) //IL_00c8: Unknown result type (might be due to invalid IL or missing references) //IL_00de: 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_0115: Expected O, but got Unknown //IL_012d: Unknown result type (might be due to invalid IL or missing references) //IL_0132: Unknown result type (might be due to invalid IL or missing references) //IL_0148: Unknown result type (might be due to invalid IL or missing references) //IL_0155: Expected O, but got Unknown //IL_0157: 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_0172: Unknown result type (might be due to invalid IL or missing references) //IL_017f: Expected O, but got Unknown //IL_0181: Unknown result type (might be due to invalid IL or missing references) //IL_0186: Unknown result type (might be due to invalid IL or missing references) //IL_0192: Unknown result type (might be due to invalid IL or missing references) //IL_01a2: Unknown result type (might be due to invalid IL or missing references) //IL_01b3: Expected O, but got Unknown //IL_01b5: Unknown result type (might be due to invalid IL or missing references) //IL_01ba: 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_01d6: Unknown result type (might be due to invalid IL or missing references) //IL_01e7: Expected O, but got Unknown //IL_01f7: Unknown result type (might be due to invalid IL or missing references) //IL_01fc: Unknown result type (might be due to invalid IL or missing references) //IL_0212: Unknown result type (might be due to invalid IL or missing references) //IL_0223: Expected O, but got Unknown FsmUtil.AddActions(_control, "Health Check", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Did P3"), isTrue = FsmEvent.GetFsmEvent("FINISHED") }, (FsmStateAction)new CompareHP { enemy = FsmUtil.GetGameObjectVariable(_control, "Phantom"), integer2 = FsmUtil.GetIntVariable(_control, "P3 HP"), lessThan = FsmEvent.GetFsmEvent("TO P3"), equal = FsmEvent.GetFsmEvent("TO P3") }, (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Did P2"), isTrue = FsmEvent.GetFsmEvent("FINISHED") }, (FsmStateAction)new CompareHP { enemy = FsmUtil.GetGameObjectVariable(_control, "Phantom"), integer2 = FsmUtil.GetIntVariable(_control, "P2 HP"), lessThan = FsmEvent.GetFsmEvent("TO P2"), equal = FsmEvent.GetFsmEvent("TO P2") } }); FsmUtil.AddActions(_control, "P2 Shift", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new SetBoolValue { boolVariable = FsmUtil.GetBoolVariable(_control, "Did P2"), boolValue = FsmBool.op_Implicit(true) }, (FsmStateAction)new SetBoolValue { boolVariable = FsmUtil.GetBoolVariable(_control, "Keep Close"), boolValue = FsmBool.op_Implicit(false) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("TO P2"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddAction(_control, "P3 Shift", (FsmStateAction)new SetBoolValue { boolVariable = FsmUtil.GetBoolVariable(_control, "Did P3"), boolValue = FsmBool.op_Implicit(true) }); } private void SetupP3Check() { //IL_0013: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Expected O, but got Unknown //IL_00be: 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_00ce: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Unknown result type (might be due to invalid IL or missing references) //IL_00ee: Unknown result type (might be due to invalid IL or missing references) //IL_00f6: Expected O, but got Unknown PlayMakerFSM control = _control; FsmStateAction[] array = new FsmStateAction[2]; SendRandomEventV4 val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[2] { FsmEvent.GetFsmEvent("YES"), FsmEvent.GetFsmEvent("NO") }; val.weights = (FsmFloat[])(object)new FsmFloat[2] { FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(6f) }; val.eventMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(1), FsmInt.op_Implicit(10) }; val.missedMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(10), FsmInt.op_Implicit(10) }; val.activeBool = FsmUtil.GetBoolVariable(_control, "Did P3"); array[0] = (FsmStateAction)val; array[1] = (FsmStateAction)new SendEventByName { eventTarget = FsmEventTarget.Self, sendEvent = FsmString.op_Implicit("NO"), delay = FsmFloat.op_Implicit(0f), everyFrame = false }; FsmUtil.AddActions(control, "P3?", (FsmStateAction[])(object)array); } private void SetupAttackChoice() { //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_002e: Unknown result type (might be due to invalid IL or missing references) //IL_003b: Expected O, but got Unknown //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_0043: Expected O, but got Unknown //IL_02ea: Unknown result type (might be due to invalid IL or missing references) //IL_02f0: Expected O, but got Unknown //IL_0541: Unknown result type (might be due to invalid IL or missing references) //IL_0546: Unknown result type (might be due to invalid IL or missing references) //IL_055c: Unknown result type (might be due to invalid IL or missing references) //IL_0569: Expected O, but got Unknown //IL_056b: Unknown result type (might be due to invalid IL or missing references) //IL_0571: Expected O, but got Unknown //IL_0785: Unknown result type (might be due to invalid IL or missing references) //IL_078b: Expected O, but got Unknown //IL_091c: Unknown result type (might be due to invalid IL or missing references) //IL_0921: Unknown result type (might be due to invalid IL or missing references) //IL_0938: Expected O, but got Unknown //IL_093a: Unknown result type (might be due to invalid IL or missing references) //IL_0940: Expected O, but got Unknown PlayMakerFSM control = _control; FsmStateAction[] obj = new FsmStateAction[3] { (FsmStateAction)new SetBoolValue { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), boolValue = FsmBool.op_Implicit(false) }, default(FsmStateAction), default(FsmStateAction) }; SendRandomEventV4 val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[13] { FsmEvent.GetFsmEvent("DUO JSLASH STAB"), FsmEvent.GetFsmEvent("DUO JSLASH PARRY"), FsmEvent.GetFsmEvent("DUO COUNTER STAB"), FsmEvent.GetFsmEvent("DUO COUNTER PARRY"), FsmEvent.GetFsmEvent("DUO COMBOSLASH PARRY"), FsmEvent.GetFsmEvent("DUO COMBOSLASH GTHROW"), FsmEvent.GetFsmEvent("DUO COMBOSLASH ATHROW"), FsmEvent.GetFsmEvent("DUO COMBOSLASH DRAGOON"), FsmEvent.GetFsmEvent("DUO COMBOSLASH PARRYBAIT"), FsmEvent.GetFsmEvent("DUO PARRYBAIT STAB"), FsmEvent.GetFsmEvent("DUO PARRYBAIT ATHROW"), FsmEvent.GetFsmEvent("DUO PARRYBAIT DRAGOON"), FsmEvent.GetFsmEvent("DUO COUNTER PARRY BAIT") }; val.weights = (FsmFloat[])(object)new FsmFloat[13] { FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(0.5f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(0.5f), FsmFloat.op_Implicit(1f) }; val.eventMax = (FsmInt[])(object)new FsmInt[13] { FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1) }; val.missedMax = (FsmInt[])(object)new FsmInt[13] { FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13) }; val.activeBool = FsmUtil.GetBoolVariable(_control, "Did P2"); obj[1] = (FsmStateAction)val; val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[11] { FsmEvent.GetFsmEvent("DUO JSLASH STAB"), FsmEvent.GetFsmEvent("DUO JSLASH PARRY"), FsmEvent.GetFsmEvent("DUO COUNTER STAB"), FsmEvent.GetFsmEvent("DUO COUNTER PARRY"), FsmEvent.GetFsmEvent("DUO COMBOSLASH PARRY"), FsmEvent.GetFsmEvent("DUO COMBOSLASH GTHROW"), FsmEvent.GetFsmEvent("DUO COMBOSLASH ATHROW"), FsmEvent.GetFsmEvent("DUO COMBOSLASH PARRYBAIT"), FsmEvent.GetFsmEvent("DUO PARRYBAIT STAB"), FsmEvent.GetFsmEvent("DUO PARRYBAIT ATHROW"), FsmEvent.GetFsmEvent("DUO COUNTER PARRY BAIT") }; val.weights = (FsmFloat[])(object)new FsmFloat[11] { FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f) }; val.eventMax = (FsmInt[])(object)new FsmInt[11] { FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1) }; val.missedMax = (FsmInt[])(object)new FsmInt[11] { FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13), FsmInt.op_Implicit(13) }; val.activeBool = FsmBool.op_Implicit(true); obj[2] = (FsmStateAction)val; FsmUtil.AddActions(control, "Hornet Close", (FsmStateAction[])(object)obj); PlayMakerFSM control2 = _control; FsmStateAction[] obj2 = new FsmStateAction[3] { (FsmStateAction)new SetBoolValue { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), boolValue = FsmBool.op_Implicit(true) }, default(FsmStateAction), default(FsmStateAction) }; val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[10] { FsmEvent.GetFsmEvent("DUO CHARGE STAB"), FsmEvent.GetFsmEvent("DUO CHARGE ATHROW"), FsmEvent.GetFsmEvent("DUO CHARGE DRAGOON"), FsmEvent.GetFsmEvent("DUO CHARGE PARRYBAIT"), FsmEvent.GetFsmEvent("DUO JSLASH STAB"), FsmEvent.GetFsmEvent("DUO JSLASH GTHROW"), FsmEvent.GetFsmEvent("DUO COMBOSLASH GTHROW"), FsmEvent.GetFsmEvent("DUO COMBOSLASH ATHROW"), FsmEvent.GetFsmEvent("DUO COMBOSLASH PARRYBAIT"), FsmEvent.GetFsmEvent("DUO COUNTER PARRY BAIT") }; val.weights = (FsmFloat[])(object)new FsmFloat[10] { FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(0.5f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f) }; val.eventMax = (FsmInt[])(object)new FsmInt[10] { FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1) }; val.missedMax = (FsmInt[])(object)new FsmInt[10] { FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10) }; val.activeBool = FsmUtil.GetBoolVariable(_control, "Did P2"); obj2[1] = (FsmStateAction)val; val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[7] { FsmEvent.GetFsmEvent("DUO CHARGE STAB"), FsmEvent.GetFsmEvent("DUO CHARGE ATHROW"), FsmEvent.GetFsmEvent("DUO CHARGE PARRYBAIT"), FsmEvent.GetFsmEvent("DUO JSLASH STAB"), FsmEvent.GetFsmEvent("DUO JSLASH GTHROW"), FsmEvent.GetFsmEvent("DUO COMBOSLASH PARRYBAIT"), FsmEvent.GetFsmEvent("DUO COUNTER PARRY BAIT") }; val.weights = (FsmFloat[])(object)new FsmFloat[7] { FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f), FsmFloat.op_Implicit(1f) }; val.eventMax = (FsmInt[])(object)new FsmInt[7] { FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1), FsmInt.op_Implicit(1) }; val.missedMax = (FsmInt[])(object)new FsmInt[7] { FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10), FsmInt.op_Implicit(10) }; val.activeBool = FsmBool.op_Implicit(true); obj2[2] = (FsmStateAction)val; FsmUtil.AddActions(control2, "Hornet Far", (FsmStateAction[])(object)obj2); PlayMakerFSM control3 = _control; FsmStateAction[] obj3 = new FsmStateAction[2] { (FsmStateAction)new BoolFlip { boolVariable = FsmUtil.GetBoolVariable(_control, "Keep Close") }, default(FsmStateAction) }; val = new SendRandomEventV4(); val.events = (FsmEvent[])(object)new FsmEvent[2] { FsmEvent.GetFsmEvent("RAGE"), FsmEvent.GetFsmEvent("DUO CROSSSLASH PARRYBAIT") }; val.weights = (FsmFloat[])(object)new FsmFloat[2] { FsmFloat.op_Implicit(0.05f), FsmFloat.op_Implicit(1f) }; val.eventMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(1), FsmInt.op_Implicit(1) }; val.missedMax = (FsmInt[])(object)new FsmInt[2] { FsmInt.op_Implicit(10), FsmInt.op_Implicit(10) }; val.activeBool = FsmBool.op_Implicit(true); obj3[1] = (FsmStateAction)val; FsmUtil.AddActions(control3, "P3!", (FsmStateAction[])(object)obj3); } private void SetupSoloPhantom() { //IL_0065: Unknown result type (might be due to invalid IL or missing references) //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_00a3: Unknown result type (might be due to invalid IL or missing references) //IL_00b4: Expected O, but got Unknown //IL_00b6: 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_00d1: Unknown result type (might be due to invalid IL or missing references) //IL_00e1: Unknown result type (might be due to invalid IL or missing references) //IL_00f2: Expected O, but got Unknown //IL_010a: Unknown result type (might be due to invalid IL or missing references) //IL_010f: Unknown result type (might be due to invalid IL or missing references) //IL_011b: Unknown result type (might be due to invalid IL or missing references) //IL_0131: Unknown result type (might be due to invalid IL or missing references) //IL_0148: Expected O, but got Unknown //IL_014a: Unknown result type (might be due to invalid IL or missing references) //IL_014f: Unknown result type (might be due to invalid IL or missing references) //IL_0165: Unknown result type (might be due to invalid IL or missing references) //IL_017b: Unknown result type (might be due to invalid IL or missing references) //IL_018b: Unknown result type (might be due to invalid IL or missing references) //IL_019b: Unknown result type (might be due to invalid IL or missing references) //IL_01ab: Unknown result type (might be due to invalid IL or missing references) //IL_01bc: Expected O, but got Unknown FsmUtil.AddTransition(_control, "Wait Lace", "LACE DEAD", "Phantom Range Check"); FsmUtil.AddTransition(_control, "Phantom Range Check", "FAR", "Hornet Far"); FsmUtil.AddTransition(_control, "Phantom Range Check", "CLOSE", "Hornet Close"); FsmUtil.InsertActions(_control, "Wait Lace", 0, (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new FindGameObject { objectName = FsmString.op_Implicit(((Object)SilkenSisters.instance.laceBossInstance).name ?? ""), store = FsmUtil.GetGameObjectVariable(_control, "Lace"), withTag = FsmString.op_Implicit("Untagged") }, (FsmStateAction)new GameObjectIsNull { gameObject = FsmUtil.GetGameObjectVariable(_control, "Lace"), isNull = FsmEvent.GetFsmEvent("LACE DEAD"), isNotNull = FsmEvent.GetFsmEvent("") } }); FsmUtil.AddActions(_control, "Phantom Range Check", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new GetXDistance { gameObject = phantomfsmowner, target = FsmUtil.GetGameObjectVariable(_control, "Hornet"), storeResult = FsmUtil.GetFloatVariable(_control, "Phantom Hornet Distance") }, (FsmStateAction)new FloatCompare { float1 = FsmUtil.GetFloatVariable(_control, "Phantom Hornet Distance"), float2 = FsmUtil.GetFloatVariable(_control, "Range Distance"), lessThan = FsmEvent.GetFsmEvent("CLOSE"), equal = FsmEvent.GetFsmEvent("CLOSE"), greaterThan = FsmEvent.GetFsmEvent("FAR"), tolerance = FsmFloat.op_Implicit(0f) } }); } private void OrderAround() { //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_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_0054: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Expected O, but got Unknown //IL_0067: Unknown result type (might be due to invalid IL or missing references) //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_0078: Unknown result type (might be due to invalid IL or missing references) //IL_008e: Unknown result type (might be due to invalid IL or missing references) //IL_009e: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Expected O, but got Unknown //IL_00ad: Unknown result type (might be due to invalid IL or missing references) //IL_00b2: Unknown result type (might be due to invalid IL or missing references) //IL_00be: Unknown result type (might be due to invalid IL or missing references) //IL_00ce: Unknown result type (might be due to invalid IL or missing references) //IL_00df: Expected O, but got Unknown //IL_00f7: 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_0112: Unknown result type (might be due to invalid IL or missing references) //IL_0128: Unknown result type (might be due to invalid IL or missing references) //IL_0138: Unknown result type (might be due to invalid IL or missing references) //IL_0149: Expected O, but got Unknown //IL_014b: Unknown result type (might be due to invalid IL or missing references) //IL_0150: 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_0172: Unknown result type (might be due to invalid IL or missing references) //IL_0182: Unknown result type (might be due to invalid IL or missing references) //IL_018f: Expected O, but got Unknown //IL_0191: Unknown result type (might be due to invalid IL or missing references) //IL_0196: Unknown result type (might be due to invalid IL or missing references) //IL_01ad: 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_01ca: Unknown result type (might be due to invalid IL or missing references) //IL_01e0: Unknown result type (might be due to invalid IL or missing references) //IL_01f0: Unknown result type (might be due to invalid IL or missing references) //IL_0201: Expected O, but got Unknown //IL_0203: Unknown result type (might be due to invalid IL or missing references) //IL_0208: Unknown result type (might be due to invalid IL or missing references) //IL_0214: Unknown result type (might be due to invalid IL or missing references) //IL_022a: Unknown result type (might be due to invalid IL or missing references) //IL_023a: Unknown result type (might be due to invalid IL or missing references) //IL_0251: Expected O, but got Unknown //IL_0253: Unknown result type (might be due to invalid IL or missing references) //IL_0258: 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_0274: Unknown result type (might be due to invalid IL or missing references) //IL_0285: Expected O, but got Unknown //IL_029d: Unknown result type (might be due to invalid IL or missing references) //IL_02a2: Unknown result type (might be due to invalid IL or missing references) //IL_02b8: Unknown result type (might be due to invalid IL or missing references) //IL_02ce: Unknown result type (might be due to invalid IL or missing references) //IL_02de: Unknown result type (might be due to invalid IL or missing references) //IL_02ef: Expected O, but got Unknown //IL_02f1: Unknown result type (might be due to invalid IL or missing references) //IL_02f6: Unknown result type (might be due to invalid IL or missing references) //IL_0302: Unknown result type (might be due to invalid IL or missing references) //IL_0318: Unknown result type (might be due to invalid IL or missing references) //IL_0328: Unknown result type (might be due to invalid IL or missing references) //IL_0335: Expected O, but got Unknown //IL_0337: Unknown result type (might be due to invalid IL or missing references) //IL_033c: Unknown result type (might be due to invalid IL or missing references) //IL_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_0369: Expected O, but got Unknown //IL_0381: Unknown result type (might be due to invalid IL or missing references) //IL_0386: Unknown result type (might be due to invalid IL or missing references) //IL_039c: Unknown result type (might be due to invalid IL or missing references) //IL_03ad: Expected O, but got Unknown //IL_03af: Unknown result type (might be due to invalid IL or missing references) //IL_03b4: Unknown result type (might be due to invalid IL or missing references) //IL_03ca: Unknown result type (might be due to invalid IL or missing references) //IL_03ea: Expected O, but got Unknown //IL_03ec: Unknown result type (might be due to invalid IL or missing references) //IL_03f1: Unknown result type (might be due to invalid IL or missing references) //IL_0407: Unknown result type (might be due to invalid IL or missing references) //IL_041d: Unknown result type (might be due to invalid IL or missing references) //IL_042d: Unknown result type (might be due to invalid IL or missing references) //IL_043e: Expected O, but got Unknown //IL_0440: Unknown result type (might be due to invalid IL or missing references) //IL_0445: Unknown result type (might be due to invalid IL or missing references) //IL_0451: Unknown result type (might be due to invalid IL or missing references) //IL_0467: Unknown result type (might be due to invalid IL or missing references) //IL_0477: Unknown result type (might be due to invalid IL or missing references) //IL_0484: Expected O, but got Unknown //IL_0486: Unknown result type (might be due to invalid IL or missing references) //IL_048b: Unknown result type (might be due to invalid IL or missing references) //IL_0497: Unknown result type (might be due to invalid IL or missing references) //IL_04a7: Unknown result type (might be due to invalid IL or missing references) //IL_04b8: 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_04eb: Unknown result type (might be due to invalid IL or missing references) //IL_0501: Unknown result type (might be due to invalid IL or missing references) //IL_0511: Unknown result type (might be due to invalid IL or missing references) //IL_0522: Expected O, but got Unknown //IL_0524: Unknown result type (might be due to invalid IL or missing references) //IL_0529: Unknown result type (might be due to invalid IL or missing references) //IL_0535: Unknown result type (might be due to invalid IL or missing references) //IL_054b: Unknown result type (might be due to invalid IL or missing references) //IL_055b: Unknown result type (might be due to invalid IL or missing references) //IL_0568: Expected O, but got Unknown //IL_056a: Unknown result type (might be due to invalid IL or missing references) //IL_056f: Unknown result type (might be due to invalid IL or missing references) //IL_057b: Unknown result type (might be due to invalid IL or missing references) //IL_058b: Unknown result type (might be due to invalid IL or missing references) //IL_059c: Expected O, but got Unknown //IL_05b4: Unknown result type (might be due to invalid IL or missing references) //IL_05b9: Unknown result type (might be due to invalid IL or missing references) //IL_05cf: Unknown result type (might be due to invalid IL or missing references) //IL_05e5: Unknown result type (might be due to invalid IL or missing references) //IL_05f5: Unknown result type (might be due to invalid IL or missing references) //IL_0606: Expected O, but got Unknown //IL_0608: Unknown result type (might be due to invalid IL or missing references) //IL_060d: Unknown result type (might be due to invalid IL or missing references) //IL_0619: Unknown result type (might be due to invalid IL or missing references) //IL_062f: Unknown result type (might be due to invalid IL or missing references) //IL_063f: Unknown result type (might be due to invalid IL or missing references) //IL_064c: Expected O, but got Unknown //IL_064e: Unknown result type (might be due to invalid IL or missing references) //IL_0653: Unknown result type (might be due to invalid IL or missing references) //IL_065f: Unknown result type (might be due to invalid IL or missing references) //IL_066f: Unknown result type (might be due to invalid IL or missing references) //IL_0680: Expected O, but got Unknown //IL_0698: Unknown result type (might be due to invalid IL or missing references) //IL_069d: Unknown result type (might be due to invalid IL or missing references) //IL_06b3: Unknown result type (might be due to invalid IL or missing references) //IL_06c4: Expected O, but got Unknown //IL_06c6: Unknown result type (might be due to invalid IL or missing references) //IL_06cb: Unknown result type (might be due to invalid IL or missing references) //IL_06e1: Unknown result type (might be due to invalid IL or missing references) //IL_0701: Expected O, but got Unknown //IL_0703: Unknown result type (might be due to invalid IL or missing references) //IL_0708: Unknown result type (might be due to invalid IL or missing references) //IL_071e: Unknown result type (might be due to invalid IL or missing references) //IL_0734: Unknown result type (might be due to invalid IL or missing references) //IL_0744: Unknown result type (might be due to invalid IL or missing references) //IL_0755: Expected O, but got Unknown //IL_0757: Unknown result type (might be due to invalid IL or missing references) //IL_075c: Unknown result type (might be due to invalid IL or missing references) //IL_0768: Unknown result type (might be due to invalid IL or missing references) //IL_077e: Unknown result type (might be due to invalid IL or missing references) //IL_078e: Unknown result type (might be due to invalid IL or missing references) //IL_079b: Expected O, but got Unknown //IL_079d: Unknown result type (might be due to invalid IL or missing references) //IL_07a2: Unknown result type (might be due to invalid IL or missing references) //IL_07ae: Unknown result type (might be due to invalid IL or missing references) //IL_07be: Unknown result type (might be due to invalid IL or missing references) //IL_07cf: Expected O, but got Unknown //IL_07e7: Unknown result type (might be due to invalid IL or missing references) //IL_07ec: Unknown result type (might be due to invalid IL or missing references) //IL_0802: Unknown result type (might be due to invalid IL or missing references) //IL_0818: Unknown result type (might be due to invalid IL or missing references) //IL_0828: Unknown result type (might be due to invalid IL or missing references) //IL_0839: Expected O, but got Unknown //IL_083b: Unknown result type (might be due to invalid IL or missing references) //IL_0840: Unknown result type (might be due to invalid IL or missing references) //IL_084c: Unknown result type (might be due to invalid IL or missing references) //IL_0862: Unknown result type (might be due to invalid IL or missing references) //IL_0872: Unknown result type (might be due to invalid IL or missing references) //IL_087f: Expected O, but got Unknown //IL_0881: Unknown result type (might be due to invalid IL or missing references) //IL_0886: Unknown result type (might be due to invalid IL or missing references) //IL_0892: Unknown result type (might be due to invalid IL or missing references) //IL_08a2: Unknown result type (might be due to invalid IL or missing references) //IL_08b3: Expected O, but got Unknown //IL_08cb: Unknown result type (might be due to invalid IL or missing references) //IL_08d0: Unknown result type (might be due to invalid IL or missing references) //IL_08e6: Unknown result type (might be due to invalid IL or missing references) //IL_08fc: Unknown result type (might be due to invalid IL or missing references) //IL_090c: Unknown result type (might be due to invalid IL or missing references) //IL_091d: Expected O, but got Unknown //IL_091f: Unknown result type (might be due to invalid IL or missing references) //IL_0924: Unknown result type (might be due to invalid IL or missing references) //IL_0930: Unknown result type (might be due to invalid IL or missing references) //IL_0946: Unknown result type (might be due to invalid IL or missing references) //IL_0956: Unknown result type (might be due to invalid IL or missing references) //IL_0963: Expected O, but got Unknown //IL_0965: Unknown result type (might be due to invalid IL or missing references) //IL_096a: Unknown result type (might be due to invalid IL or missing references) //IL_0976: Unknown result type (might be due to invalid IL or missing references) //IL_0986: Unknown result type (might be due to invalid IL or missing references) //IL_0997: Expected O, but got Unknown //IL_09af: Unknown result type (might be due to invalid IL or missing references) //IL_09b4: Unknown result type (might be due to invalid IL or missing references) //IL_09ca: Unknown result type (might be due to invalid IL or missing references) //IL_09db: Expected O, but got Unknown //IL_09dd: Unknown result type (might be due to invalid IL or missing references) //IL_09e2: Unknown result type (might be due to invalid IL or missing references) //IL_09f8: Unknown result type (might be due to invalid IL or missing references) //IL_0a18: Expected O, but got Unknown //IL_0a1a: Unknown result type (might be due to invalid IL or missing references) //IL_0a1f: Unknown result type (might be due to invalid IL or missing references) //IL_0a2b: Unknown result type (might be due to invalid IL or missing references) //IL_0a3b: Unknown result type (might be due to invalid IL or missing references) //IL_0a4c: Expected O, but got Unknown //IL_0a4e: Unknown result type (might be due to invalid IL or missing references) //IL_0a53: Unknown result type (might be due to invalid IL or missing references) //IL_0a5f: Unknown result type (might be due to invalid IL or missing references) //IL_0a6f: Unknown result type (might be due to invalid IL or missing references) //IL_0a80: Expected O, but got Unknown //IL_0a98: Unknown result type (might be due to invalid IL or missing references) //IL_0a9d: Unknown result type (might be due to invalid IL or missing references) //IL_0ab3: Unknown result type (might be due to invalid IL or missing references) //IL_0ac4: Expected O, but got Unknown //IL_0ac6: Unknown result type (might be due to invalid IL or missing references) //IL_0acb: Unknown result type (might be due to invalid IL or missing references) //IL_0ae1: Unknown result type (might be due to invalid IL or missing references) //IL_0b01: Expected O, but got Unknown //IL_0b03: Unknown result type (might be due to invalid IL or missing references) //IL_0b08: Unknown result type (might be due to invalid IL or missing references) //IL_0b14: Unknown result type (might be due to invalid IL or missing references) //IL_0b24: Unknown result type (might be due to invalid IL or missing references) //IL_0b35: Expected O, but got Unknown //IL_0b37: Unknown result type (might be due to invalid IL or missing references) //IL_0b3c: Unknown result type (might be due to invalid IL or missing references) //IL_0b48: Unknown result type (might be due to invalid IL or missing references) //IL_0b58: Unknown result type (might be due to invalid IL or missing references) //IL_0b69: Expected O, but got Unknown //IL_0b81: Unknown result type (might be due to invalid IL or missing references) //IL_0b86: Unknown result type (might be due to invalid IL or missing references) //IL_0b9c: Unknown result type (might be due to invalid IL or missing references) //IL_0bad: Expected O, but got Unknown //IL_0baf: Unknown result type (might be due to invalid IL or missing references) //IL_0bb4: Unknown result type (might be due to invalid IL or missing references) //IL_0bca: Unknown result type (might be due to invalid IL or missing references) //IL_0bea: Expected O, but got Unknown //IL_0bec: Unknown result type (might be due to invalid IL or missing references) //IL_0bf1: Unknown result type (might be due to invalid IL or missing references) //IL_0c07: Unknown result type (might be due to invalid IL or missing references) //IL_0c1d: Unknown result type (might be due to invalid IL or missing references) //IL_0c2d: Unknown result type (might be due to invalid IL or missing references) //IL_0c3e: Expected O, but got Unknown //IL_0c40: Unknown result type (might be due to invalid IL or missing references) //IL_0c45: Unknown result type (might be due to invalid IL or missing references) //IL_0c51: Unknown result type (might be due to invalid IL or missing references) //IL_0c67: Unknown result type (might be due to invalid IL or missing references) //IL_0c77: Unknown result type (might be due to invalid IL or missing references) //IL_0c84: Expected O, but got Unknown //IL_0c86: Unknown result type (might be due to invalid IL or missing references) //IL_0c8b: Unknown result type (might be due to invalid IL or missing references) //IL_0c97: Unknown result type (might be due to invalid IL or missing references) //IL_0ca7: Unknown result type (might be due to invalid IL or missing references) //IL_0cb8: Expected O, but got Unknown //IL_0cd0: Unknown result type (might be due to invalid IL or missing references) //IL_0cd5: Unknown result type (might be due to invalid IL or missing references) //IL_0ceb: Unknown result type (might be due to invalid IL or missing references) //IL_0d01: Unknown result type (might be due to invalid IL or missing references) //IL_0d11: Unknown result type (might be due to invalid IL or missing references) //IL_0d22: Expected O, but got Unknown //IL_0d24: Unknown result type (might be due to invalid IL or missing references) //IL_0d29: Unknown result type (might be due to invalid IL or missing references) //IL_0d35: Unknown result type (might be due to invalid IL or missing references) //IL_0d4b: Unknown result type (might be due to invalid IL or missing references) //IL_0d5b: Unknown result type (might be due to invalid IL or missing references) //IL_0d68: Expected O, but got Unknown //IL_0d6a: Unknown result type (might be due to invalid IL or missing references) //IL_0d6f: Unknown result type (might be due to invalid IL or missing references) //IL_0d7b: Unknown result type (might be due to invalid IL or missing references) //IL_0d8b: Unknown result type (might be due to invalid IL or missing references) //IL_0d9c: Expected O, but got Unknown //IL_0db4: Unknown result type (might be due to invalid IL or missing references) //IL_0db9: Unknown result type (might be due to invalid IL or missing references) //IL_0dcf: Unknown result type (might be due to invalid IL or missing references) //IL_0de5: Unknown result type (might be due to invalid IL or missing references) //IL_0df5: Unknown result type (might be due to invalid IL or missing references) //IL_0e06: Expected O, but got Unknown //IL_0e08: Unknown result type (might be due to invalid IL or missing references) //IL_0e0d: Unknown result type (might be due to invalid IL or missing references) //IL_0e19: Unknown result type (might be due to invalid IL or missing references) //IL_0e2f: Unknown result type (might be due to invalid IL or missing references) //IL_0e3f: Unknown result type (might be due to invalid IL or missing references) //IL_0e4c: Expected O, but got Unknown //IL_0e4e: Unknown result type (might be due to invalid IL or missing references) //IL_0e53: Unknown result type (might be due to invalid IL or missing references) //IL_0e6a: Expected O, but got Unknown //IL_0e6c: Unknown result type (might be due to invalid IL or missing references) //IL_0e71: Unknown result type (might be due to invalid IL or missing references) //IL_0e87: Unknown result type (might be due to invalid IL or missing references) //IL_0e9d: Unknown result type (might be due to invalid IL or missing references) //IL_0ead: Unknown result type (might be due to invalid IL or missing references) //IL_0ebe: Expected O, but got Unknown //IL_0ec0: Unknown result type (might be due to invalid IL or missing references) //IL_0ec5: Unknown result type (might be due to invalid IL or missing references) //IL_0ed1: Unknown result type (might be due to invalid IL or missing references) //IL_0ee7: Unknown result type (might be due to invalid IL or missing references) //IL_0ef7: Unknown result type (might be due to invalid IL or missing references) //IL_0f0e: Expected O, but got Unknown //IL_0f10: Unknown result type (might be due to invalid IL or missing references) //IL_0f15: Unknown result type (might be due to invalid IL or missing references) //IL_0f21: Unknown result type (might be due to invalid IL or missing references) //IL_0f31: Unknown result type (might be due to invalid IL or missing references) //IL_0f42: Expected O, but got Unknown //IL_0f5a: Unknown result type (might be due to invalid IL or missing references) //IL_0f5f: Unknown result type (might be due to invalid IL or missing references) //IL_0f75: Unknown result type (might be due to invalid IL or missing references) //IL_0f8b: Unknown result type (might be due to invalid IL or missing references) //IL_0f9b: Unknown result type (might be due to invalid IL or missing references) //IL_0fac: Expected O, but got Unknown //IL_0fae: Unknown result type (might be due to invalid IL or missing references) //IL_0fb3: Unknown result type (might be due to invalid IL or missing references) //IL_0fbf: Unknown result type (might be due to invalid IL or missing references) //IL_0fd5: Unknown result type (might be due to invalid IL or missing references) //IL_0fe5: Unknown result type (might be due to invalid IL or missing references) //IL_0ff2: Expected O, but got Unknown //IL_0ff4: Unknown result type (might be due to invalid IL or missing references) //IL_0ff9: Unknown result type (might be due to invalid IL or missing references) //IL_1005: Unknown result type (might be due to invalid IL or missing references) //IL_1015: Unknown result type (might be due to invalid IL or missing references) //IL_1026: Expected O, but got Unknown //IL_103e: Unknown result type (might be due to invalid IL or missing references) //IL_1043: Unknown result type (might be due to invalid IL or missing references) //IL_1059: Unknown result type (might be due to invalid IL or missing references) //IL_106a: Expected O, but got Unknown //IL_106c: Unknown result type (might be due to invalid IL or missing references) //IL_1071: Unknown result type (might be due to invalid IL or missing references) //IL_1087: Unknown result type (might be due to invalid IL or missing references) //IL_10a7: Expected O, but got Unknown //IL_10a9: Unknown result type (might be due to invalid IL or missing references) //IL_10ae: Unknown result type (might be due to invalid IL or missing references) //IL_10c4: Unknown result type (might be due to invalid IL or missing references) //IL_10da: Unknown result type (might be due to invalid IL or missing references) //IL_10ea: Unknown result type (might be due to invalid IL or missing references) //IL_10fb: Expected O, but got Unknown //IL_10fd: Unknown result type (might be due to invalid IL or missing references) //IL_1102: Unknown result type (might be due to invalid IL or missing references) //IL_110e: Unknown result type (might be due to invalid IL or missing references) //IL_1124: Unknown result type (might be due to invalid IL or missing references) //IL_1134: Unknown result type (might be due to invalid IL or missing references) //IL_1141: Expected O, but got Unknown //IL_1143: Unknown result type (might be due to invalid IL or missing references) //IL_1148: Unknown result type (might be due to invalid IL or missing references) //IL_1154: Unknown result type (might be due to invalid IL or missing references) //IL_1164: Unknown result type (might be due to invalid IL or missing references) //IL_1175: Expected O, but got Unknown //IL_118d: Unknown result type (might be due to invalid IL or missing references) //IL_1192: Unknown result type (might be due to invalid IL or missing references) //IL_11a8: Unknown result type (might be due to invalid IL or missing references) //IL_11be: Unknown result type (might be due to invalid IL or missing references) //IL_11ce: Unknown result type (might be due to invalid IL or missing references) //IL_11df: Expected O, but got Unknown //IL_11e1: Unknown result type (might be due to invalid IL or missing references) //IL_11e6: Unknown result type (might be due to invalid IL or missing references) //IL_11f2: Unknown result type (might be due to invalid IL or missing references) //IL_1208: Unknown result type (might be due to invalid IL or missing references) //IL_1218: Unknown result type (might be due to invalid IL or missing references) //IL_1225: Expected O, but got Unknown //IL_1227: Unknown result type (might be due to invalid IL or missing references) //IL_122c: Unknown result type (might be due to invalid IL or missing references) //IL_1238: Unknown result type (might be due to invalid IL or missing references) //IL_1248: Unknown result type (might be due to invalid IL or missing references) //IL_1259: Expected O, but got Unknown //IL_1271: Unknown result type (might be due to invalid IL or missing references) //IL_1276: Unknown result type (might be due to invalid IL or missing references) //IL_128c: Unknown result type (might be due to invalid IL or missing references) //IL_129d: Expected O, but got Unknown //IL_129f: Unknown result type (might be due to invalid IL or missing references) //IL_12a4: Unknown result type (might be due to invalid IL or missing references) //IL_12ba: Unknown result type (might be due to invalid IL or missing references) //IL_12da: Expected O, but got Unknown //IL_12dc: Unknown result type (might be due to invalid IL or missing references) //IL_12e1: Unknown result type (might be due to invalid IL or missing references) //IL_12ed: Unknown result type (might be due to invalid IL or missing references) //IL_12fd: Unknown result type (might be due to invalid IL or missing references) //IL_130e: Expected O, but got Unknown //IL_1310: Unknown result type (might be due to invalid IL or missing references) //IL_1315: Unknown result type (might be due to invalid IL or missing references) //IL_1321: Unknown result type (might be due to invalid IL or missing references) //IL_1331: Unknown result type (might be due to invalid IL or missing references) //IL_1342: Expected O, but got Unknown //IL_135a: Unknown result type (might be due to invalid IL or missing references) //IL_135f: Unknown result type (might be due to invalid IL or missing references) //IL_136b: Unknown result type (might be due to invalid IL or missing references) //IL_137b: Unknown result type (might be due to invalid IL or missing references) //IL_138c: Expected O, but got Unknown //IL_138e: Unknown result type (might be due to invalid IL or missing references) //IL_1393: Unknown result type (might be due to invalid IL or missing references) //IL_139f: Unknown result type (might be due to invalid IL or missing references) //IL_13af: Unknown result type (might be due to invalid IL or missing references) //IL_13c0: Expected O, but got Unknown //IL_13d8: Unknown result type (might be due to invalid IL or missing references) //IL_13dd: Unknown result type (might be due to invalid IL or missing references) //IL_13e9: Unknown result type (might be due to invalid IL or missing references) //IL_13f9: Unknown result type (might be due to invalid IL or missing references) //IL_140a: Expected O, but got Unknown //IL_140c: Unknown result type (might be due to invalid IL or missing references) //IL_1411: Unknown result type (might be due to invalid IL or missing references) //IL_141d: Unknown result type (might be due to invalid IL or missing references) //IL_142d: Unknown result type (might be due to invalid IL or missing references) //IL_143e: Expected O, but got Unknown //IL_1456: Unknown result type (might be due to invalid IL or missing references) //IL_145b: Unknown result type (might be due to invalid IL or missing references) //IL_1471: Unknown result type (might be due to invalid IL or missing references) //IL_1482: Expected O, but got Unknown //IL_1484: Unknown result type (might be due to invalid IL or missing references) //IL_1489: Unknown result type (might be due to invalid IL or missing references) //IL_149f: Unknown result type (might be due to invalid IL or missing references) //IL_14bf: Expected O, but got Unknown //IL_14c1: Unknown result type (might be due to invalid IL or missing references) //IL_14c6: Unknown result type (might be due to invalid IL or missing references) //IL_14d2: Unknown result type (might be due to invalid IL or missing references) //IL_14e2: Unknown result type (might be due to invalid IL or missing references) //IL_14f3: Expected O, but got Unknown //IL_14f5: Unknown result type (might be due to invalid IL or missing references) //IL_14fa: Unknown result type (might be due to invalid IL or missing references) //IL_1506: Unknown result type (might be due to invalid IL or missing references) //IL_1516: Unknown result type (might be due to invalid IL or missing references) //IL_1527: Expected O, but got Unknown //IL_153f: Unknown result type (might be due to invalid IL or missing references) //IL_1544: Unknown result type (might be due to invalid IL or missing references) //IL_155a: Unknown result type (might be due to invalid IL or missing references) //IL_156b: Expected O, but got Unknown //IL_156d: Unknown result type (might be due to invalid IL or missing references) //IL_1572: Unknown result type (might be due to invalid IL or missing references) //IL_1588: Unknown result type (might be due to invalid IL or missing references) //IL_15a8: Expected O, but got Unknown //IL_15aa: Unknown result type (might be due to invalid IL or missing references) //IL_15af: Unknown result type (might be due to invalid IL or missing references) //IL_15bb: Unknown result type (might be due to invalid IL or missing references) //IL_15cb: Unknown result type (might be due to invalid IL or missing references) //IL_15dc: Expected O, but got Unknown //IL_15de: Unknown result type (might be due to invalid IL or missing references) //IL_15e3: Unknown result type (might be due to invalid IL or missing references) //IL_15fa: Expected O, but got Unknown //IL_15fc: Unknown result type (might be due to invalid IL or missing references) //IL_1601: Unknown result type (might be due to invalid IL or missing references) //IL_1617: Unknown result type (might be due to invalid IL or missing references) //IL_162d: Unknown result type (might be due to invalid IL or missing references) //IL_163d: Unknown result type (might be due to invalid IL or missing references) //IL_164e: Expected O, but got Unknown //IL_1650: Unknown result type (might be due to invalid IL or missing references) //IL_1655: Unknown result type (might be due to invalid IL or missing references) //IL_1661: Unknown result type (might be due to invalid IL or missing references) //IL_1677: Unknown result type (might be due to invalid IL or missing references) //IL_1687: Unknown result type (might be due to invalid IL or missing references) //IL_169e: Expected O, but got Unknown //IL_16a0: Unknown result type (might be due to invalid IL or missing references) //IL_16a5: Unknown result type (might be due to invalid IL or missing references) //IL_16b1: Unknown result type (might be due to invalid IL or missing references) //IL_16c1: Unknown result type (might be due to invalid IL or missing references) //IL_16d2: Expected O, but got Unknown //IL_16ea: Unknown result type (might be due to invalid IL or missing references) //IL_16ef: Unknown result type (might be due to invalid IL or missing references) //IL_1705: Unknown result type (might be due to invalid IL or missing references) //IL_1716: Expected O, but got Unknown //IL_1718: Unknown result type (might be due to invalid IL or missing references) //IL_171d: Unknown result type (might be due to invalid IL or missing references) //IL_1733: Unknown result type (might be due to invalid IL or missing references) //IL_1753: Expected O, but got Unknown //IL_1755: Unknown result type (might be due to invalid IL or missing references) //IL_175a: Unknown result type (might be due to invalid IL or missing references) //IL_1766: Unknown result type (might be due to invalid IL or missing references) //IL_1776: Unknown result type (might be due to invalid IL or missing references) //IL_1787: Expected O, but got Unknown //IL_1789: Unknown result type (might be due to invalid IL or missing references) //IL_178e: Unknown result type (might be due to invalid IL or missing references) //IL_179a: Unknown result type (might be due to invalid IL or missing references) //IL_17aa: Unknown result type (might be due to invalid IL or missing references) //IL_17bb: Expected O, but got Unknown //IL_17d3: Unknown result type (might be due to invalid IL or missing references) //IL_17d8: Unknown result type (might be due to invalid IL or missing references) //IL_17ee: Unknown result type (might be due to invalid IL or missing references) //IL_17ff: Expected O, but got Unknown //IL_1801: Unknown result type (might be due to invalid IL or missing references) //IL_1806: Unknown result type (might be due to invalid IL or missing references) //IL_181c: Unknown result type (might be due to invalid IL or missing references) //IL_183c: Expected O, but got Unknown //IL_183e: Unknown result type (might be due to invalid IL or missing references) //IL_1843: Unknown result type (might be due to invalid IL or missing references) //IL_184f: Unknown result type (might be due to invalid IL or missing references) //IL_185f: Unknown result type (might be due to invalid IL or missing references) //IL_1870: Expected O, but got Unknown //IL_1872: Unknown result type (might be due to invalid IL or missing references) //IL_1877: Unknown result type (might be due to invalid IL or missing references) //IL_1883: Unknown result type (might be due to invalid IL or missing references) //IL_1893: Unknown result type (might be due to invalid IL or missing references) //IL_18a4: Expected O, but got Unknown //IL_18bc: Unknown result type (might be due to invalid IL or missing references) //IL_18c1: Unknown result type (might be due to invalid IL or missing references) //IL_18cd: Unknown result type (might be due to invalid IL or missing references) //IL_18dd: Unknown result type (might be due to invalid IL or missing references) //IL_18ee: Expected O, but got Unknown //IL_18f0: Unknown result type (might be due to invalid IL or missing references) //IL_18f5: Unknown result type (might be due to invalid IL or missing references) //IL_1901: Unknown result type (might be due to invalid IL or missing references) //IL_1911: Unknown result type (might be due to invalid IL or missing references) //IL_1922: Expected O, but got Unknown //IL_193a: Unknown result type (might be due to invalid IL or missing references) //IL_193f: Unknown result type (might be due to invalid IL or missing references) //IL_1955: Unknown result type (might be due to invalid IL or missing references) //IL_1961: Unknown result type (might be due to invalid IL or missing references) //IL_1968: Unknown result type (might be due to invalid IL or missing references) //IL_1970: Expected O, but got Unknown //IL_1972: Unknown result type (might be due to invalid IL or missing references) //IL_1977: Unknown result type (might be due to invalid IL or missing references) //IL_198d: Unknown result type (might be due to invalid IL or missing references) //IL_1999: Unknown result type (might be due to invalid IL or missing references) //IL_19af: Unknown result type (might be due to invalid IL or missing references) //IL_19b0: Unknown result type (might be due to invalid IL or missing references) //IL_19ba: Expected O, but got Unknown //IL_19ba: Unknown result type (might be due to invalid IL or missing references) //IL_19bb: Unknown result type (might be due to invalid IL or missing references) //IL_19c5: Expected O, but got Unknown //IL_19c5: Unknown result type (might be due to invalid IL or missing references) //IL_19cd: Expected O, but got Unknown FsmUtil.AddActions(_control, "Duo Charge Stab", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP CHARGE"), falseString = FsmString.op_Implicit("CHARGE") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("STAB"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Charge A Throw", (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP CHARGE"), falseString = FsmString.op_Implicit("CHARGE") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new RandomBool { storeResult = FsmUtil.GetBoolVariable(_control, "Phantom Alternate Attack") }, (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Phantom Alternate Attack"), stringVariable = FsmUtil.GetStringVariable(_control, "Phantom Alternate Attack String"), trueString = FsmString.op_Implicit("PHASE THROW"), falseString = FsmString.op_Implicit("ATHROW") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = PhantomTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Phantom Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmUtil.GetBoolVariable(_control, "Did P2") }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("ATHROW"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Charge Dragoon", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP CHARGE"), falseString = FsmString.op_Implicit("CHARGE") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Charge Parry Bait", (FsmStateAction[])(object)new FsmStateAction[5] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP CHARGE"), falseString = FsmString.op_Implicit("CHARGE") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("PARRY BAIT"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Charge AH Dragoon", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP CHARGE"), falseString = FsmString.op_Implicit("CHARGE") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo J Slash Stab", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP JSLASH"), falseString = FsmString.op_Implicit("JSLASH") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("STAB"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo J Slash Parry", (FsmStateAction[])(object)new FsmStateAction[5] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP JSLASH"), falseString = FsmString.op_Implicit("JSLASH") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("PARRY"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo J Slash G Throw", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP JSLASH"), falseString = FsmString.op_Implicit("JSLASH") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("GTHROW"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo J Slash GH Dragoon", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP JSLASH"), falseString = FsmString.op_Implicit("JSLASH") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Counter Stab", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("COUNTER"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("STAB"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Counter Parry", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("COUNTER"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("PARRY"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Combo Slash Parry", (FsmStateAction[])(object)new FsmStateAction[5] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP COMBO"), falseString = FsmString.op_Implicit("COMBO") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("PARRY"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Combo Slash G Throw", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP COMBO"), falseString = FsmString.op_Implicit("COMBO") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("GTHROW"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Combo Slash A Throw", (FsmStateAction[])(object)new FsmStateAction[6] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP COMBO"), falseString = FsmString.op_Implicit("COMBO") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new RandomBool { storeResult = FsmUtil.GetBoolVariable(_control, "Phantom Alternate Attack") }, (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Phantom Alternate Attack"), stringVariable = FsmUtil.GetStringVariable(_control, "Phantom Alternate Attack String"), trueString = FsmString.op_Implicit("PHASE THROW"), falseString = FsmString.op_Implicit("ATHROW") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Phantom Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmUtil.GetBoolVariable(_control, "Did P2") }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("ATHROW"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Combo Slash Dragoon", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP COMBO"), falseString = FsmString.op_Implicit("COMBO") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Combo Slash Parry Bait", (FsmStateAction[])(object)new FsmStateAction[5] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP COMBO"), falseString = FsmString.op_Implicit("COMBO") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("PARRY BAIT"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Combo Slash AH Dragoon", (FsmStateAction[])(object)new FsmStateAction[3] { (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Should Hop"), stringVariable = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), trueString = FsmString.op_Implicit("HOP COMBO"), falseString = FsmString.op_Implicit("COMBO") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = LaceTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Lace Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmBool.op_Implicit(true) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Cross Slash Parry Bait", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("CROSS SLASH"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("PARRY BAIT"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Cross Slash AH Dragoon", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("CROSS SLASH"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Cross Slash GH Dragoon", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("CROSS SLASH"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Parry Bait Stab", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("PARRY BAIT"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("STAB"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Parry Bait A Throw", (FsmStateAction[])(object)new FsmStateAction[7] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("PARRY BAIT"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new RandomBool { storeResult = FsmUtil.GetBoolVariable(_control, "Phantom Alternate Attack") }, (FsmStateAction)new ConvertBoolToString { boolVariable = FsmUtil.GetBoolVariable(_control, "Phantom Alternate Attack"), stringVariable = FsmUtil.GetStringVariable(_control, "Phantom Alternate Attack String"), trueString = FsmString.op_Implicit("PHASE THROW"), falseString = FsmString.op_Implicit("ATHROW") }, (FsmStateAction)new SendEventByNameV3 { eventTarget = PhantomTarget, sendEvent = FsmUtil.GetStringVariable(_control, "Phantom Alternate Attack String"), delay = FsmFloat.op_Implicit(0f), activeBool = FsmUtil.GetBoolVariable(_control, "Did P2") }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("ATHROW"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Parry Bait Dragoon", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("PARRY BAIT"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Duo Counter Parry Bait", (FsmStateAction[])(object)new FsmStateAction[4] { (FsmStateAction)new BoolTest { boolVariable = FsmUtil.GetBoolVariable(_control, "Can Parry"), isFalse = FsmEvent.GetFsmEvent("RETRY") }, (FsmStateAction)new SetIntValue { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), intValue = FsmInt.op_Implicit(SilkenSisters.instance.configManager.ParryCooldown.Value) }, (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("PARRY BAIT"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("PARRY BAIT"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "RAAAAAAGE", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new SendEventByName { eventTarget = LaceTarget, sendEvent = FsmString.op_Implicit("TO P3"), delay = FsmFloat.op_Implicit(0f) }, (FsmStateAction)new SendEventByName { eventTarget = PhantomTarget, sendEvent = FsmString.op_Implicit("DRAGOON RAGE"), delay = FsmFloat.op_Implicit(0f) } }); FsmUtil.AddActions(_control, "Attack End", (FsmStateAction[])(object)new FsmStateAction[2] { (FsmStateAction)new IntSubtract { intVariable = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), subtract = FsmInt.op_Implicit(1), perSecond = false, everyFrame = false }, (FsmStateAction)new IntCompareToBool { integer1 = FsmUtil.GetIntVariable(_control, "Parry Cooldown"), integer2 = FsmInt.op_Implicit(0), lessThanBool = FsmUtil.GetBoolVariable(_control, "Can Parry"), greaterThanBool = new FsmBool(), equalBool = new FsmBool(), everyFrame = false } }); } private void Update() { if (SilkenSisters.instance.configManager.syncWaitTime.Value != FsmUtil.GetFloatVariable(_control, "Wait Time").Value) { FsmUtil.GetFloatVariable(_control, "Wait Time").Value = SilkenSisters.instance.configManager.syncWaitTime.Value; } if (SilkenSisters.instance.configManager.syncDelay.Value != FsmUtil.GetFloatVariable(_control, "Async Delay").Value) { FsmUtil.GetFloatVariable(_control, "Async Delay").Value = SilkenSisters.instance.configManager.syncDelay.Value; } if (SilkenSisters.instance.configManager.syncGatherDistance.Value != FsmUtil.GetFloatVariable(_control, "Gather Distance").Value) { FsmUtil.GetFloatVariable(_control, "Gather Distance").Value = SilkenSisters.instance.configManager.syncGatherDistance.Value; } if (SilkenSisters.instance.configManager.syncTeleDistance.Value != FsmUtil.GetFloatVariable(_control, "Tele Distance").Value) { FsmUtil.GetFloatVariable(_control, "Tele Distance").Value = SilkenSisters.instance.configManager.syncTeleDistance.Value; } if (SilkenSisters.instance.configManager.syncRangeDistance.Value != FsmUtil.GetFloatVariable(_control, "Range Distance").Value) { FsmUtil.GetFloatVariable(_control, "Range Distance").Value = SilkenSisters.instance.configManager.syncRangeDistance.Value; } if (SilkenSisters.instance.configManager.syncTeleDistance.Value != FsmUtil.GetFloatVariable(_control, "P2 HP").Value) { FsmUtil.GetFloatVariable(_control, "P2 HP").Value = SilkenSisters.instance.configManager.syncTeleDistance.Value; } if (SilkenSisters.instance.configManager.syncTeleDistance.Value != FsmUtil.GetFloatVariable(_control, "P3 HP").Value) { FsmUtil.GetFloatVariable(_control, "P3 HP").Value = SilkenSisters.instance.configManager.syncTeleDistance.Value; } } private void GetDuoDistanceToHornet() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_0035: Unknown result type (might be due to invalid IL or missing references) //IL_0078: Unknown result type (might be due to invalid IL or missing references) float x = hornetfsmowner.gameObject.Value.transform.position.x; float x2 = phantomfsmowner.gameObject.Value.transform.position.x; float num = Math.Abs(x - x2); float num2 = num; if ((Object)(object)lacefsmowner.gameObject.Value != (Object)null) { float x3 = lacefsmowner.gameObject.Value.transform.position.x; num2 = Math.Abs(x - x3); } else { SilkenSisters.Log.LogWarning((object)"Lace not found"); } float num3 = (num2 + num) / 2f; SilkenSisters.Log.LogDebug((object)$"Lace:{num2}, Phantom:{num}, Average:{num3}"); FsmUtil.GetFloatVariable(_control, "Hornet Distance").Value = num3; } private void SelectGatherTelePosX() { //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) float num = Random.Range(76, 93); while (Math.Abs(hornetfsmowner.gameObject.Value.transform.position.x - num) < 3f) { num = Random.Range(76, 93); } if (num < hornetfsmowner.gameObject.Value.transform.position.x) { FsmUtil.GetFloatVariable(_control, "Lace X").Value = num + 0.75f; FsmUtil.GetFloatVariable(_control, "Phantom X").Value = num - 0.75f; } else { FsmUtil.GetFloatVariable(_control, "Lace X").Value = num - 0.75f; FsmUtil.GetFloatVariable(_control, "Phantom X").Value = num + 0.75f; } } private void SelectSplitTelePosX() { float num = Random.Range(76, 93); float num2 = Random.Range(76, 93); while (Math.Abs(num2 - num) < 4f) { num = Random.Range(76, 93); num2 = Random.Range(76, 93); } FsmUtil.GetFloatVariable(_control, "Lace X").Value = num; FsmUtil.GetFloatVariable(_control, "Phantom X").Value = num2; } private void IsHornetBetween() { //IL_0025: Unknown result type (might be due to invalid IL or missing references) //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_00a8: 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_0065: Unknown result type (might be due to invalid IL or missing references) //IL_0084: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_0107: Unknown result type (might be due to invalid IL or missing references) FsmUtil.GetBoolVariable(_control, "Hornet Between").Value = (hornetfsmowner.gameObject.Value.transform.position.x < lacefsmowner.GameObject.Value.transform.position.x && hornetfsmowner.gameObject.Value.transform.position.x > phantomfsmowner.GameObject.Value.transform.position.x) || (hornetfsmowner.gameObject.Value.transform.position.x > lacefsmowner.GameObject.Value.transform.position.x && hornetfsmowner.gameObject.Value.transform.position.x < phantomfsmowner.GameObject.Value.transform.position.x); } } }