Decompiled source of YuukaMod v0.7.0
YuukaMod.dll
Decompiled 2 days ago
The result has been truncated due to the large size, download it to view full contents!
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using AddWatermark; using BepInEx; using BepInEx.Bootstrap; using BepInEx.Configuration; using BepInEx.Logging; using Cysharp.Threading.Tasks; using HarmonyLib; using LBoL.Base; using LBoL.Base.Extensions; using LBoL.ConfigData; using LBoL.Core; using LBoL.Core.Battle; using LBoL.Core.Battle.BattleActions; using LBoL.Core.Battle.Interactions; using LBoL.Core.Cards; using LBoL.Core.Randoms; using LBoL.Core.Stations; using LBoL.Core.StatusEffects; using LBoL.Core.Units; using LBoL.EntityLib.Cards; using LBoL.EntityLib.Cards.Character.Cirno; using LBoL.EntityLib.Cards.Character.Reimu; using LBoL.EntityLib.Cards.Enemy; using LBoL.EntityLib.Cards.Neutral.NoColor; using LBoL.EntityLib.Exhibits; using LBoL.EntityLib.StatusEffects.Basic; using LBoL.EntityLib.StatusEffects.Cirno; using LBoL.EntityLib.StatusEffects.Enemy; using LBoL.EntityLib.StatusEffects.ExtraTurn; using LBoL.Presentation; using LBoL.Presentation.UI; using LBoL.Presentation.UI.Widgets; using LBoLEntitySideloader; using LBoLEntitySideloader.Attributes; using LBoLEntitySideloader.CustomHandlers; using LBoLEntitySideloader.CustomKeywords; using LBoLEntitySideloader.Entities; using LBoLEntitySideloader.Resource; using LBoLEntitySideloader.Utils; using TMPro; using UnityEngine; using UnityEngine.Experimental.Rendering; using UnityEngine.UI; using YuukaMod.Assets; using YuukaMod.BattleActions; using YuukaMod.Cards; using YuukaMod.Cards.Template; using YuukaMod.Config; using YuukaMod.Enemies; using YuukaMod.Enemies.Template; using YuukaMod.GunName; using YuukaMod.ImageLoader; using YuukaMod.Keywords; using YuukaMod.Localization; using YuukaMod.Logic; using YuukaMod.Patches; using YuukaMod.Source.Keywords; using YuukaMod.StatusEffects; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: IgnoresAccessChecksTo("LBoL.Base")] [assembly: IgnoresAccessChecksTo("LBoL.ConfigData")] [assembly: IgnoresAccessChecksTo("LBoL.Core")] [assembly: IgnoresAccessChecksTo("LBoL.EntityLib")] [assembly: IgnoresAccessChecksTo("LBoL.Presentation")] [assembly: IgnoresAccessChecksTo("Untitled.ConfigDataBuilder.Base")] [assembly: AssemblyCompany("YuukaMod")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0+fa294bc9c145afadde855780a1d227a7030b1393")] [assembly: AssemblyProduct("YuukaMod")] [assembly: AssemblyTitle("YuukaMod")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] namespace YuukaMod { [BepInPlugin("Vengyre.LBoL.Character.Yuuka", "YuukaMod", "0.6.5")] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInProcess("LBoL.exe")] public class BepinexPlugin : BaseUnityPlugin { public static string modUniqueID = "YuukaMod"; public static string playerName = "Yuuka"; public static bool useInGameModel = false; public static string modelName = "Youmu"; public static bool modelIsFlipped = true; public static List<ManaColor> offColors = new List<ManaColor> { (ManaColor)1, (ManaColor)2, (ManaColor)3, (ManaColor)6 }; public static ConfigEntry<bool> enableAct1Boss; public static CustomConfigEntry<bool> enableAct1BossEntry = new CustomConfigEntry<bool>(value: true, "EnableAct1Boss", "EnableAct1Boss", "Toggle the Act 1 boss. Default: On"); public static ConfigEntry<int> gardenJadeboxReplacementChance; public static CustomConfigEntry<int> gardenJadeboxReplacementChanceEntry = new CustomConfigEntry<int>(100, "Jadeboxes", "GardenOfDreamsReplacementChance", "Chance (0-100) that the 'Garden of All Dreams' Jadebox replaces non-tool Uncommon and Rare card rewards. Default: 100 (always)."); private static readonly Harmony harmony = PInfo.harmony; internal static ManualLogSource log; internal static TemplateSequenceTable sequenceTable = new TemplateSequenceTable(0); internal static IResourceSource embeddedSource = (IResourceSource)new EmbeddedSource(Assembly.GetExecutingAssembly()); internal static DirectorySource directorySource = new DirectorySource("Vengyre.LBoL.Character.Yuuka", ""); internal static BatchLocalization jadeboxLoc = new BatchLocalization((IResourceSource)(object)directorySource, typeof(JadeBoxTemplate), "Jadeboxes", (Locale)0, false); private void Awake() { //IL_0078: Unknown result type (might be due to invalid IL or missing references) //IL_0082: Expected O, but got Unknown log = ((BaseUnityPlugin)this).Logger; enableAct1Boss = ((BaseUnityPlugin)this).Config.Bind<bool>(enableAct1BossEntry.Section, enableAct1BossEntry.Key, enableAct1BossEntry.Value, enableAct1BossEntry.Description); gardenJadeboxReplacementChance = ((BaseUnityPlugin)this).Config.Bind<int>(gardenJadeboxReplacementChanceEntry.Section, gardenJadeboxReplacementChanceEntry.Key, gardenJadeboxReplacementChanceEntry.Value, new ConfigDescription(gardenJadeboxReplacementChanceEntry.Description, (AcceptableValueBase)null, Array.Empty<object>())); ModAssetManager.LoadAssets(); Object.DontDestroyOnLoad((Object)(object)((Component)this).gameObject); ((Object)((Component)this).gameObject).hideFlags = (HideFlags)61; CardIndexGenerator.PromiseClearIndexSet(); EntityManager.RegisterSelf(); harmony.PatchAll(); if (Chainloader.PluginInfos.ContainsKey("neo.lbol.tools.watermark")) { WatermarkWrapper.ActivateWatermark(); } Func<Sprite> func = () => ResourceLoader.LoadSprite("BossIcon.png", (IResourceSource)(object)directorySource, (Rect?)null, 1, (Vector2?)null); if (enableAct1Boss.Value) { EnemyUnitTemplate.AddBossNodeIcon(modUniqueID, func, (Assembly)null); log.LogInfo((object)"Yuuka boss enabled!"); } YuukaCharacterArrangedHandle.RegisterHandlers(); YuukaSecondCardTracker.RegisterHandlers(); } private void OnDestroy() { if (harmony != null) { harmony.UnpatchSelf(); } } } public static class PInfo { public const string GUID = "Vengyre.LBoL.Character.Yuuka"; public const string Name = "YuukaMod"; public const string version = "0.6.5"; public static readonly Harmony harmony = new Harmony("Vengyre.LBoL.Character.Yuuka"); } public static class YuukaGardenArchitectConfig { public static int Option1FlowerToBonus = 3; public static int Option1GrowBonus = 2; public static int Option2FlowerBonus = 10; public static int Option3BloomToBonus = 3; public static int Option3FirepowerBonus = 1; } public static class YuukaSeasonsConfig { public static int BloomValue = 4; public static int GrowValue = 1; public static int SummerFlowerValue = 9; public static int FervorValue = 25; public static int BarrierValue = 5; } public class YuukaLoadouts { public static string UltimateSkillA = "YuukaUltA"; public static string UltimateSkillB = "YuukaUltB"; public static string ExhibitA = "YuukaExhibitA"; public static string ExhibitB = "YuukaExhibitB"; public static List<string> DeckA = new List<string> { "Shoot", "Shoot", "Boundary", "Boundary", "YuukaCharacterBaseAttackG", "YuukaCharacterBaseAttackG", "YuukaCharacterBaseBlockR", "YuukaCharacterBaseBlockR", "YuukaCharacterBloomingField", "YuukaCharacterRosepetalRuin" }; public static List<string> DeckB = new List<string> { "Shoot", "Shoot", "Boundary", "Boundary", "YuukaCharacterBaseAttackR", "YuukaCharacterBaseAttackR", "YuukaCharacterBaseBlockG", "YuukaCharacterBaseBlockG", "YuukaCharacterSunbeamBurst", "YuukaCharacterRadiantGlare" }; public static PlayerUnitConfig playerUnitConfig; static YuukaLoadouts() { //IL_0142: Unknown result type (might be due to invalid IL or missing references) //IL_0187: Unknown result type (might be due to invalid IL or missing references) //IL_0189: 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_01d3: Unknown result type (might be due to invalid IL or missing references) //IL_01dd: Expected O, but got Unknown string modUniqueID = BepinexPlugin.modUniqueID; int? num = 0; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).White = 0; ((ManaGroup)(ref val)).Blue = 0; ((ManaGroup)(ref val)).Black = 0; ((ManaGroup)(ref val)).Red = 2; ((ManaGroup)(ref val)).Green = 2; ((ManaGroup)(ref val)).Colorless = 0; ((ManaGroup)(ref val)).Philosophy = 0; ManaGroup val2 = val; string ultimateSkillA = UltimateSkillA; string ultimateSkillB = UltimateSkillB; string exhibitA = ExhibitA; string exhibitB = ExhibitB; IReadOnlyList<string> deckA = DeckA; IReadOnlyList<string> deckB = DeckB; playerUnitConfig = new PlayerUnitConfig(modUniqueID, true, "", 0, 8, num, true, (int?)null, (ManaColor)5, (ManaColor)4, val2, "#378a04", 78, 50, 0, ultimateSkillA, ultimateSkillB, exhibitA, exhibitB, deckA, deckB, 2, 3); } } public sealed class YuukaModDef : PlayerUnitTemplate { [EntityLogic(typeof(YuukaModDef))] public sealed class YuukaMod : PlayerUnit { protected override void OnEnterGameRun(GameRunController gameRun) { CardConfig.FromId("PatchouliGreenAttack").IsPooled = false; } } [HarmonyPatch(typeof(UiManager), "LeaveGameRun")] private class UiManager_LeaveGameRun_Patch { private static void Postfix(UiManager __instance) { CardConfig.FromId("PatchouliGreenAttack").IsPooled = true; } } public UniTask<Sprite>? LoadSpellPortraitAsync { get; private set; } public override IdContainer GetId() { //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Unknown result type (might be due to invalid IL or missing references) return IdContainer.op_Implicit(BepinexPlugin.modUniqueID); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)YuukaLocalization.PlayerUnitBatchLoc.AddEntity((EntityDefinition)(object)this); } public override PlayerImages LoadPlayerImages() { return YuukaImageLoader.LoadPlayerImages(BepinexPlugin.playerName); } public override PlayerUnitConfig MakeConfig() { return YuukaLoadouts.playerUnitConfig; } public override EikiSummonInfo AssociateEikiSummon() { //IL_000c: Unknown result type (might be due to invalid IL or missing references) //IL_0012: Expected O, but got Unknown return new EikiSummonInfo(typeof(global::YuukaMod.Enemies.YuukaMod), (string)null); } } internal class WatermarkWrapper { [MethodImpl(MethodImplOptions.NoInlining)] internal static void ActivateWatermark() { API.ActivateWatermark(); } } } namespace YuukaMod.YuukaUlt { public class YuukaUltTemplate : UltimateSkillTemplate { public override IdContainer GetId() { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000c: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Unknown result type (might be due to invalid IL or missing references) return IdContainer.op_Implicit(YuukaDefaultConfig.GetDefaultID((EntityDefinition)(object)this)); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)YuukaLocalization.UltimateSkillsBatchLoc.AddEntity((EntityDefinition)(object)this); } public override Sprite LoadSprite() { return YuukaImageLoader.LoadUltLoader((UltimateSkillTemplate)(object)this); } public override UltimateSkillConfig MakeConfig() { throw new NotImplementedException(); } public UltimateSkillConfig GetDefaulUltConfig() { return YuukaDefaultConfig.GetDefaultUltConfig(); } } public sealed class YuukaCharacterUltFillerPrototypeMasterSparkDef : YuukaUltTemplate { public override UltimateSkillConfig MakeConfig() { UltimateSkillConfig defaulUltConfig = GetDefaulUltConfig(); defaulUltConfig.Damage = 30; defaulUltConfig.RelativeCards = new List<string> { "RManaCard" }; defaulUltConfig.Value1 = 1; return defaulUltConfig; } } [EntityLogic(typeof(YuukaCharacterUltFillerPrototypeMasterSparkDef))] public sealed class YuukaCharacterUltFillerPrototypeMasterSpark : UltimateSkill { [CompilerGenerated] private sealed class <Actions>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitSelector selector; public UnitSelector <>3__selector; public YuukaCharacterUltFillerPrototypeMasterSpark <>4__this; private EnemyUnit <enemy>5__1; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Actions>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <enemy>5__1 = null; <>1__state = -2; } private bool MoveNext() { //IL_0062: 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_007d: Expected O, but got Unknown //IL_009c: Unknown result type (might be due to invalid IL or missing references) //IL_00a6: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <enemy>5__1 = selector.GetEnemy(((UltimateSkill)<>4__this).Battle); <>2__current = (BattleAction)new DamageAction((Unit)(object)((UltimateSkill)<>4__this).Owner, (Unit)(object)<enemy>5__1, ((UltimateSkill)<>4__this).Damage, ((UltimateSkill)<>4__this).GunName, (GunType)0); <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = (BattleAction)new AddCardsToHandAction((Card[])(object)new Card[1] { (Card)Library.CreateCard<RManaCard>() }); <>1__state = 2; return true; case 2: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <Actions>d__1 <Actions>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <Actions>d__ = this; } else { <Actions>d__ = new <Actions>d__1(0) { <>4__this = <>4__this }; } <Actions>d__.selector = <>3__selector; return <Actions>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } public YuukaCharacterUltFillerPrototypeMasterSpark() { ((UltimateSkill)this).TargetType = (TargetType)1; ((UltimateSkill)this).GunName = GunNameID.GetGunFromId(12170); } [IteratorStateMachine(typeof(<Actions>d__1))] protected override IEnumerable<BattleAction> Actions(UnitSelector selector) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Actions>d__1(-2) { <>4__this = this, <>3__selector = selector }; } } public sealed class YuukaUltADef : YuukaUltTemplate { public override UltimateSkillConfig MakeConfig() { UltimateSkillConfig defaulUltConfig = GetDefaulUltConfig(); defaulUltConfig.Damage = 15; defaulUltConfig.Value1 = 3; defaulUltConfig.RelativeEffects = new List<string> { "Graze" }; return defaulUltConfig; } } [EntityLogic(typeof(YuukaUltADef))] public sealed class YuukaUltA : UltimateSkill { [CompilerGenerated] private sealed class <Actions>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitSelector selector; public UnitSelector <>3__selector; public YuukaUltA <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Actions>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_008f: 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_00aa: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <>2__current = (BattleAction)(object)PerformAction.Spell((Unit)(object)((UltimateSkill)<>4__this).Battle.Player, "YuukaUltA"); <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = (BattleAction)new DamageAction((Unit)(object)((UltimateSkill)<>4__this).Owner, (IEnumerable<Unit>)selector.GetUnits(((UltimateSkill)<>4__this).Battle), ((UltimateSkill)<>4__this).Damage, ((UltimateSkill)<>4__this).GunName, (GunType)0); <>1__state = 2; return true; case 2: <>1__state = -1; <>2__current = (BattleAction)(object)new ApplyStatusEffectAction<Graze>((Unit)(object)((UltimateSkill)<>4__this).Owner, (int?)((UltimateSkill)<>4__this).Value1, (int?)0, (int?)0, (int?)0, 0.2f, true); <>1__state = 3; return true; case 3: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <Actions>d__1 <Actions>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <Actions>d__ = this; } else { <Actions>d__ = new <Actions>d__1(0) { <>4__this = <>4__this }; } <Actions>d__.selector = <>3__selector; return <Actions>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } public YuukaUltA() { ((UltimateSkill)this).TargetType = (TargetType)2; ((UltimateSkill)this).GunName = GunNameID.GetGunFromId(25100); } [IteratorStateMachine(typeof(<Actions>d__1))] protected override IEnumerable<BattleAction> Actions(UnitSelector selector) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Actions>d__1(-2) { <>4__this = this, <>3__selector = selector }; } } public sealed class YuukaUltBDef : YuukaUltTemplate { public override UltimateSkillConfig MakeConfig() { UltimateSkillConfig defaulUltConfig = GetDefaulUltConfig(); defaulUltConfig.Damage = 30; defaulUltConfig.RelativeCards = new List<string> { "RManaCard" }; defaulUltConfig.Value1 = 1; return defaulUltConfig; } } [EntityLogic(typeof(YuukaUltBDef))] public sealed class YuukaUltB : UltimateSkill { [CompilerGenerated] private sealed class <Actions>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitSelector selector; public UnitSelector <>3__selector; public YuukaUltB <>4__this; private EnemyUnit <enemy>5__1; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <Actions>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <enemy>5__1 = null; <>1__state = -2; } private bool MoveNext() { //IL_009b: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00b6: Expected O, but got Unknown //IL_00d5: Unknown result type (might be due to invalid IL or missing references) //IL_00df: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <enemy>5__1 = selector.GetEnemy(((UltimateSkill)<>4__this).Battle); <>2__current = (BattleAction)(object)PerformAction.Spell((Unit)(object)((UltimateSkill)<>4__this).Battle.Player, "YuukaUltB"); <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = (BattleAction)new DamageAction((Unit)(object)((UltimateSkill)<>4__this).Owner, (Unit)(object)<enemy>5__1, ((UltimateSkill)<>4__this).Damage, ((UltimateSkill)<>4__this).GunName, (GunType)0); <>1__state = 2; return true; case 2: <>1__state = -1; <>2__current = (BattleAction)new AddCardsToHandAction((Card[])(object)new Card[1] { (Card)Library.CreateCard<RManaCard>() }); <>1__state = 3; return true; case 3: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <Actions>d__1 <Actions>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <Actions>d__ = this; } else { <Actions>d__ = new <Actions>d__1(0) { <>4__this = <>4__this }; } <Actions>d__.selector = <>3__selector; return <Actions>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } public YuukaUltB() { ((UltimateSkill)this).TargetType = (TargetType)1; ((UltimateSkill)this).GunName = GunNameID.GetGunFromId(23061); } [IteratorStateMachine(typeof(<Actions>d__1))] protected override IEnumerable<BattleAction> Actions(UnitSelector selector) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <Actions>d__1(-2) { <>4__this = this, <>3__selector = selector }; } } } namespace YuukaMod.StatusEffects { public sealed class YuukaArrangedKeywordDef : YuukaStatusEffectTemplate { public override Sprite LoadSprite() { return null; } } [EntityLogic(typeof(YuukaArrangedKeywordDef))] public sealed class YuukaArrangedKeyword : StatusEffect { } public sealed class YuukaArrangeKeywordDef : YuukaStatusEffectTemplate { public override Sprite LoadSprite() { return null; } } [EntityLogic(typeof(YuukaArrangeKeywordDef))] public sealed class YuukaArrangeKeyword : StatusEffect { } public sealed class YuukaFlourishKeywordDef : YuukaStatusEffectTemplate { public override Sprite LoadSprite() { return null; } } [EntityLogic(typeof(YuukaFlourishKeywordDef))] public sealed class YuukaFlourishKeyword : StatusEffect { } public sealed class YuukaThirdTurnKeywordDef : YuukaStatusEffectTemplate { public override Sprite LoadSprite() { return null; } } [EntityLogic(typeof(YuukaThirdTurnKeywordDef))] public sealed class YuukaThirdTurnKeyword : StatusEffect { } public class YuukaStatusEffectTemplate : StatusEffectTemplate { public override IdContainer GetId() { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000c: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Unknown result type (might be due to invalid IL or missing references) return IdContainer.op_Implicit(YuukaDefaultConfig.GetDefaultID((EntityDefinition)(object)this)); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)YuukaLocalization.StatusEffectsBatchLoc.AddEntity((EntityDefinition)(object)this); } public override Sprite LoadSprite() { return YuukaImageLoader.LoadStatusEffectLoader((StatusEffectTemplate)(object)this); } public override StatusEffectConfig MakeConfig() { return GetDefaultStatusEffectConfig(); } public static StatusEffectConfig GetDefaultStatusEffectConfig() { return YuukaDefaultConfig.GetDefaultStatusEffectConfig(); } } public sealed class YuukaBloomSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuukaBloomSeDef))] public sealed class YuukaBloomSe : StatusEffect { [CompilerGenerated] private sealed class <OnOwnerTurnStarting>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitEventArgs args; public UnitEventArgs <>3__args; public YuukaBloomSe <>4__this; private YuukaShedBloomShieldBornSe <pv>5__1; private YuukaShedBloomShieldBornSe <pv>5__2; private YuukaShedBloomShieldBornSe <pv>5__3; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnOwnerTurnStarting>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <pv>5__1 = null; <pv>5__2 = null; <pv>5__3 = null; <>1__state = -2; } private bool MoveNext() { //IL_015d: Unknown result type (might be due to invalid IL or missing references) //IL_0167: Expected O, but got Unknown //IL_0237: Unknown result type (might be due to invalid IL or missing references) //IL_0241: Expected O, but got Unknown //IL_02f9: Unknown result type (might be due to invalid IL or missing references) //IL_0303: Expected O, but got Unknown //IL_026f: Unknown result type (might be due to invalid IL or missing references) //IL_0279: Expected O, but got Unknown //IL_01ad: Unknown result type (might be due to invalid IL or missing references) //IL_01b7: Expected O, but got Unknown //IL_00d7: Unknown result type (might be due to invalid IL or missing references) //IL_00e1: Expected O, but got Unknown //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00b6: Expected O, but got Unknown //IL_0341: Unknown result type (might be due to invalid IL or missing references) //IL_034b: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; ((StatusEffect)<>4__this).NotifyActivating(); if (((StatusEffect)<>4__this).Level < 5) { if (((StatusEffect)<>4__this).Level <= 0) { <>2__current = (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)<>4__this, true, 0.1f); <>1__state = 1; return true; } <>2__current = (BattleAction)new AddCardsToHandAction((Card[])(object)new Card[1] { Library.CreateCard<YuukaCharacterTokenBlossomSmall>() }); <>1__state = 2; return true; } if (((StatusEffect)<>4__this).Level < 15) { <>2__current = (BattleAction)new AddCardsToHandAction((Card[])(object)new Card[1] { Library.CreateCard<YuukaCharacterTokenBlossomMedium>() }); <>1__state = 4; return true; } <>2__current = (BattleAction)new AddCardsToHandAction((Card[])(object)new Card[1] { Library.CreateCard<YuukaCharacterTokenBlossomLarge>() }); <>1__state = 6; return true; case 1: <>1__state = -1; return false; case 2: <>1__state = -1; ((StatusEffect)<>4__this).Level = ((StatusEffect)<>4__this).Level - 1; if (args.Unit.GetStatusEffect<YuukaShedBloomShieldBornSe>() != null) { <pv>5__1 = args.Unit.GetStatusEffect<YuukaShedBloomShieldBornSe>(); <>2__current = (BattleAction)new CastBlockShieldAction(args.Unit, args.Unit, 0, ((StatusEffect)<pv>5__1).Level, (BlockShieldType)2, true); <>1__state = 3; return true; } goto IL_031c; case 3: <>1__state = -1; <pv>5__1 = null; goto IL_031c; case 4: <>1__state = -1; ((StatusEffect)<>4__this).Level = ((StatusEffect)<>4__this).Level - 2; if (args.Unit.GetStatusEffect<YuukaShedBloomShieldBornSe>() != null) { <pv>5__2 = args.Unit.GetStatusEffect<YuukaShedBloomShieldBornSe>(); <>2__current = (BattleAction)new CastBlockShieldAction(args.Unit, args.Unit, 0, ((StatusEffect)<pv>5__2).Level * 2, (BlockShieldType)2, true); <>1__state = 5; return true; } goto IL_031c; case 5: <>1__state = -1; <pv>5__2 = null; goto IL_031c; case 6: <>1__state = -1; ((StatusEffect)<>4__this).Level = ((StatusEffect)<>4__this).Level - 3; if (args.Unit.GetStatusEffect<YuukaShedBloomShieldBornSe>() != null) { <pv>5__3 = args.Unit.GetStatusEffect<YuukaShedBloomShieldBornSe>(); <>2__current = (BattleAction)new CastBlockShieldAction(args.Unit, args.Unit, 0, ((StatusEffect)<pv>5__3).Level * 3, (BlockShieldType)2, true); <>1__state = 7; return true; } goto IL_031c; case 7: <>1__state = -1; <pv>5__3 = null; goto IL_031c; case 8: { <>1__state = -1; return false; } IL_031c: if (((StatusEffect)<>4__this).Level <= 0) { <>2__current = (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)<>4__this, true, 0.1f); <>1__state = 8; return true; } return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnOwnerTurnStarting>d__1 <OnOwnerTurnStarting>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnOwnerTurnStarting>d__ = this; } else { <OnOwnerTurnStarting>d__ = new <OnOwnerTurnStarting>d__1(0) { <>4__this = <>4__this }; } <OnOwnerTurnStarting>d__.args = <>3__args; return <OnOwnerTurnStarting>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(unit.TurnStarting, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarting); } [IteratorStateMachine(typeof(<OnOwnerTurnStarting>d__1))] private IEnumerable<BattleAction> OnOwnerTurnStarting(UnitEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnOwnerTurnStarting>d__1(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaBossSleepingTerrorSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.HasCount = true; defaultStatusEffectConfig.CountStackType = (StackType)0; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuukaBossSleepingTerrorSeDef))] public sealed class YuukaBossSleepingTerrorSe : StatusEffect { [CompilerGenerated] private sealed class <OnDamageReceived>d__6 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private DamageEventArgs args; public DamageEventArgs <>3__args; public YuukaBossSleepingTerrorSe <>4__this; private int <num>5__1; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnDamageReceived>d__6(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_002a: Unknown result type (might be due to invalid IL or missing references) //IL_002f: 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_0101: Unknown result type (might be due to invalid IL or missing references) DamageInfo damageInfo; switch (<>1__state) { default: return false; case 0: <>1__state = -1; damageInfo = args.DamageInfo; <num>5__1 = MathExtensions.RoundToInt(((DamageInfo)(ref damageInfo)).Damage) - <>4__this._internalCount; if (<num>5__1 > 0 && !<>4__this._hasTriggered) { <>2__current = (BattleAction)(object)new ApplyStatusEffectAction<Firepower>(((StatusEffect)<>4__this).Owner, (int?)((StatusEffect)<>4__this).Level, (int?)0, (int?)0, (int?)0, 0.2f, true); <>1__state = 1; return true; } break; case 1: <>1__state = -1; <>4__this._hasTriggered = true; ((StatusEffect)<>4__this).NotifyActivating(); ((GameEventArgs)args).AddModifier((GameEntity)(object)<>4__this); break; } YuukaBossSleepingTerrorSe yuukaBossSleepingTerrorSe = <>4__this; int internalCount = <>4__this._internalCount; damageInfo = args.DamageInfo; yuukaBossSleepingTerrorSe._internalCount = internalCount - MathExtensions.RoundToInt(((DamageInfo)(ref damageInfo)).Damage); ((StatusEffect)<>4__this).Count = Math.Max(<>4__this._internalCount, 0); 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnDamageReceived>d__6 <OnDamageReceived>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnDamageReceived>d__ = this; } else { <OnDamageReceived>d__ = new <OnDamageReceived>d__6(0) { <>4__this = <>4__this }; } <OnDamageReceived>d__.args = <>3__args; return <OnDamageReceived>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } private int _internalCount; private bool _hasTriggered = false; public string HasTriggered { get { if (_hasTriggered) { return "Has already triggered this turn."; } return "Can trigger once per turn."; } } protected override void OnAdded(Unit unit) { _internalCount = ((StatusEffect)this).Limit; ((StatusEffect)this).Count = _internalCount; ((StatusEffect)this).HandleOwnerEvent<UnitEventArgs>(unit.TurnStarting, (GameEventHandler<UnitEventArgs>)OnTurnStarting); ((StatusEffect)this).ReactOwnerEvent<DamageEventArgs>(unit.DamageReceived, (EventSequencedReactor<DamageEventArgs>)OnDamageReceived); } public void OnTurnStarting(UnitEventArgs args) { _internalCount = ((StatusEffect)this).Limit; ((StatusEffect)this).Count = _internalCount; _hasTriggered = false; } [IteratorStateMachine(typeof(<OnDamageReceived>d__6))] private IEnumerable<BattleAction> OnDamageReceived(DamageEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnDamageReceived>d__6(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaBouquetBindingSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.HasLevel = false; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuukaBouquetBindingSeDef))] public sealed class YuukaBouquetBindingSe : StatusEffect { [CompilerGenerated] private sealed class <OnCardsAddedToDiscard>d__2 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private CardsEventArgs args; public CardsEventArgs <>3__args; public YuukaBouquetBindingSe <>4__this; private List<Card> <list>5__1; private List<Card>.Enumerator <>s__2; private Card <card>5__3; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnCardsAddedToDiscard>d__2(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { int num = <>1__state; if (num == -3 || (uint)(num - 1) <= 1u) { try { } finally { <>m__Finally1(); } } <list>5__1 = null; <>s__2 = default(List<Card>.Enumerator); <card>5__3 = null; <>1__state = -2; } private bool MoveNext() { //IL_00e7: Unknown result type (might be due to invalid IL or missing references) //IL_00f1: Expected O, but got Unknown //IL_00bb: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Expected O, but got Unknown try { switch (<>1__state) { default: return false; case 0: <>1__state = -1; <list>5__1 = args.Cards.Where((Card card) => card is SummerFlower).ToList(); if (<list>5__1.Count == 0) { break; } <>s__2 = <list>5__1.GetEnumerator(); <>1__state = -3; goto IL_010c; case 1: <>1__state = -3; <>2__current = (BattleAction)new AddCardsToDiscardAction((Card[])(object)new Card[1] { Library.CreateCard<YuukaCharacterTokenBouquetCharm>() }); <>1__state = 2; return true; case 2: { <>1__state = -3; <card>5__3 = null; goto IL_010c; } IL_010c: if (<>s__2.MoveNext()) { <card>5__3 = <>s__2.Current; <>2__current = (BattleAction)new ExileCardAction(<card>5__3); <>1__state = 1; return true; } <>m__Finally1(); <>s__2 = default(List<Card>.Enumerator); break; } return false; } catch { //try-fault ((IDisposable)this).Dispose(); throw; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } private void <>m__Finally1() { <>1__state = -1; ((IDisposable)<>s__2).Dispose(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnCardsAddedToDiscard>d__2 <OnCardsAddedToDiscard>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnCardsAddedToDiscard>d__ = this; } else { <OnCardsAddedToDiscard>d__ = new <OnCardsAddedToDiscard>d__2(0) { <>4__this = <>4__this }; } <OnCardsAddedToDiscard>d__.args = <>3__args; return <OnCardsAddedToDiscard>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } [CompilerGenerated] private sealed class <OnCardsAddedToDrawZone>d__3 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private CardsAddingToDrawZoneEventArgs args; public CardsAddingToDrawZoneEventArgs <>3__args; public YuukaBouquetBindingSe <>4__this; private List<Card> <list>5__1; private List<Card>.Enumerator <>s__2; private Card <card>5__3; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnCardsAddedToDrawZone>d__3(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { int num = <>1__state; if (num == -3 || (uint)(num - 1) <= 1u) { try { } finally { <>m__Finally1(); } } <list>5__1 = null; <>s__2 = default(List<Card>.Enumerator); <card>5__3 = null; <>1__state = -2; } private bool MoveNext() { //IL_00e2: Unknown result type (might be due to invalid IL or missing references) //IL_00ec: Expected O, but got Unknown //IL_00bb: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Expected O, but got Unknown try { switch (<>1__state) { default: return false; case 0: <>1__state = -1; <list>5__1 = args.Cards.Where((Card card) => card is SummerFlower).ToList(); if (<list>5__1.Count == 0) { break; } <>s__2 = <list>5__1.GetEnumerator(); <>1__state = -3; goto IL_0107; case 1: <>1__state = -3; <>2__current = (BattleAction)new AddCardsToDrawZoneAction((IEnumerable<Card>)Library.CreateCards<YuukaCharacterTokenBouquetCharm>(1, false), (DrawZoneTarget)2, (AddCardsType)0); <>1__state = 2; return true; case 2: { <>1__state = -3; <card>5__3 = null; goto IL_0107; } IL_0107: if (<>s__2.MoveNext()) { <card>5__3 = <>s__2.Current; <>2__current = (BattleAction)new ExileCardAction(<card>5__3); <>1__state = 1; return true; } <>m__Finally1(); <>s__2 = default(List<Card>.Enumerator); break; } return false; } catch { //try-fault ((IDisposable)this).Dispose(); throw; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } private void <>m__Finally1() { <>1__state = -1; ((IDisposable)<>s__2).Dispose(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnCardsAddedToDrawZone>d__3 <OnCardsAddedToDrawZone>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnCardsAddedToDrawZone>d__ = this; } else { <OnCardsAddedToDrawZone>d__ = new <OnCardsAddedToDrawZone>d__3(0) { <>4__this = <>4__this }; } <OnCardsAddedToDrawZone>d__.args = <>3__args; return <OnCardsAddedToDrawZone>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } [CompilerGenerated] private sealed class <OnCardsAddedToHand>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private CardsEventArgs args; public CardsEventArgs <>3__args; public YuukaBouquetBindingSe <>4__this; private List<Card> <list>5__1; private List<Card>.Enumerator <>s__2; private Card <card>5__3; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnCardsAddedToHand>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { int num = <>1__state; if (num == -3 || (uint)(num - 1) <= 1u) { try { } finally { <>m__Finally1(); } } <list>5__1 = null; <>s__2 = default(List<Card>.Enumerator); <card>5__3 = null; <>1__state = -2; } private bool MoveNext() { //IL_00e7: Unknown result type (might be due to invalid IL or missing references) //IL_00f1: Expected O, but got Unknown //IL_00bb: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Expected O, but got Unknown try { switch (<>1__state) { default: return false; case 0: <>1__state = -1; <list>5__1 = args.Cards.Where((Card card) => card is SummerFlower).ToList(); if (<list>5__1.Count == 0) { break; } <>s__2 = <list>5__1.GetEnumerator(); <>1__state = -3; goto IL_010c; case 1: <>1__state = -3; <>2__current = (BattleAction)new AddCardsToHandAction((Card[])(object)new Card[1] { Library.CreateCard<YuukaCharacterTokenBouquetCharm>() }); <>1__state = 2; return true; case 2: { <>1__state = -3; <card>5__3 = null; goto IL_010c; } IL_010c: if (<>s__2.MoveNext()) { <card>5__3 = <>s__2.Current; <>2__current = (BattleAction)new ExileCardAction(<card>5__3); <>1__state = 1; return true; } <>m__Finally1(); <>s__2 = default(List<Card>.Enumerator); break; } return false; } catch { //try-fault ((IDisposable)this).Dispose(); throw; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } private void <>m__Finally1() { <>1__state = -1; ((IDisposable)<>s__2).Dispose(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnCardsAddedToHand>d__1 <OnCardsAddedToHand>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnCardsAddedToHand>d__ = this; } else { <OnCardsAddedToHand>d__ = new <OnCardsAddedToHand>d__1(0) { <>4__this = <>4__this }; } <OnCardsAddedToHand>d__.args = <>3__args; return <OnCardsAddedToHand>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<CardsEventArgs>(((StatusEffect)this).Battle.CardsAddedToDiscard, (EventSequencedReactor<CardsEventArgs>)OnCardsAddedToDiscard); ((StatusEffect)this).ReactOwnerEvent<CardsEventArgs>(((StatusEffect)this).Battle.CardsAddedToHand, (EventSequencedReactor<CardsEventArgs>)OnCardsAddedToHand); ((StatusEffect)this).ReactOwnerEvent<CardsAddingToDrawZoneEventArgs>(((StatusEffect)this).Battle.CardsAddedToDrawZone, (EventSequencedReactor<CardsAddingToDrawZoneEventArgs>)OnCardsAddedToDrawZone); } [IteratorStateMachine(typeof(<OnCardsAddedToHand>d__1))] private IEnumerable<BattleAction> OnCardsAddedToHand(CardsEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnCardsAddedToHand>d__1(-2) { <>4__this = this, <>3__args = args }; } [IteratorStateMachine(typeof(<OnCardsAddedToDiscard>d__2))] private IEnumerable<BattleAction> OnCardsAddedToDiscard(CardsEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnCardsAddedToDiscard>d__2(-2) { <>4__this = this, <>3__args = args }; } [IteratorStateMachine(typeof(<OnCardsAddedToDrawZone>d__3))] private IEnumerable<BattleAction> OnCardsAddedToDrawZone(CardsAddingToDrawZoneEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnCardsAddedToDrawZone>d__3(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaDawnsPromiseSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.HasCount = true; defaultStatusEffectConfig.CountStackType = (StackType)0; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuukaDawnsPromiseSeDef))] public sealed class YuukaDawnsPromiseSe : StatusEffect { [CompilerGenerated] private sealed class <OnCardUsed>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private CardUsingEventArgs args; public CardUsingEventArgs <>3__args; public YuukaDawnsPromiseSe <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnCardUsed>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //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_004b: 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) switch (<>1__state) { default: return false; case 0: { <>1__state = -1; ManaGroup consumingMana = args.ConsumingMana; if (((ManaGroup)(ref consumingMana)).Amount >= 3) { YuukaDawnsPromiseSe yuukaDawnsPromiseSe = <>4__this; consumingMana = args.ConsumingMana; <>2__current = ((StatusEffect)yuukaDawnsPromiseSe).BuffAction<YuukaDawnsPromiseSe>(((ManaGroup)(ref consumingMana)).Amount, 0, 0, 0, 0.2f); <>1__state = 1; return true; } break; } case 1: <>1__state = -1; break; } 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnCardUsed>d__1 <OnCardUsed>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnCardUsed>d__ = this; } else { <OnCardUsed>d__ = new <OnCardUsed>d__1(0) { <>4__this = <>4__this }; } <OnCardUsed>d__.args = <>3__args; return <OnCardUsed>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } [CompilerGenerated] private sealed class <OnOwnerTurnStarting>d__2 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitEventArgs args; public UnitEventArgs <>3__args; public YuukaDawnsPromiseSe <>4__this; private bool <is_upgraded>5__1; private YuukaCharacterDawnsFury <attack>5__2; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnOwnerTurnStarting>d__2(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <attack>5__2 = null; <>1__state = -2; } private bool MoveNext() { //IL_00a1: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Expected O, but got Unknown //IL_00c8: Unknown result type (might be due to invalid IL or missing references) //IL_00d2: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; ((StatusEffect)<>4__this).NotifyActivating(); <is_upgraded>5__1 = ((StatusEffect)<>4__this).Count == 4; <attack>5__2 = Library.CreateCard<YuukaCharacterDawnsFury>(<is_upgraded>5__1); ((Card)<attack>5__2).DeltaDamage = ((Card)<attack>5__2).DeltaDamage + (((StatusEffect)<>4__this).Level - ((Card)<attack>5__2).ConfigDamage); <>2__current = (BattleAction)new AddCardsToHandAction((Card[])(object)new Card[1] { <attack>5__2 }); <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)<>4__this, true, 0.1f); <>1__state = 2; return true; case 2: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnOwnerTurnStarting>d__2 <OnOwnerTurnStarting>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnOwnerTurnStarting>d__ = this; } else { <OnOwnerTurnStarting>d__ = new <OnOwnerTurnStarting>d__2(0) { <>4__this = <>4__this }; } <OnOwnerTurnStarting>d__.args = <>3__args; return <OnOwnerTurnStarting>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(unit.TurnStarting, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarting); ((StatusEffect)this).ReactOwnerEvent<CardUsingEventArgs>(((StatusEffect)this).Battle.CardUsed, (EventSequencedReactor<CardUsingEventArgs>)OnCardUsed); } [IteratorStateMachine(typeof(<OnCardUsed>d__1))] private IEnumerable<BattleAction> OnCardUsed(CardUsingEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnCardUsed>d__1(-2) { <>4__this = this, <>3__args = args }; } [IteratorStateMachine(typeof(<OnOwnerTurnStarting>d__2))] private IEnumerable<BattleAction> OnOwnerTurnStarting(UnitEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnOwnerTurnStarting>d__2(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaDazzlingFlareSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.Type = (StatusEffectType)2; defaultStatusEffectConfig.HasLevel = false; defaultStatusEffectConfig.HasDuration = true; defaultStatusEffectConfig.DurationStackType = (StackType)0; defaultStatusEffectConfig.DurationDecreaseTiming = (DurationDecreaseTiming)3; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuukaDazzlingFlareSeDef))] public sealed class YuukaDazzlingFlareSe : StatusEffect { public override bool ShouldPreventCardUsage(Card card) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) //IL_0008: Invalid comparison between Unknown and I4 return (int)card.CardType == 1; } } public sealed class YuukaDrawNextTurnSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.Order = 15; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuukaDrawNextTurnSeDef))] public sealed class YuukaDrawNextTurnSe : StatusEffect { [CompilerGenerated] private sealed class <OnTurnStarted>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitEventArgs args; public UnitEventArgs <>3__args; public YuukaDrawNextTurnSe <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnTurnStarted>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_0043: Unknown result type (might be due to invalid IL or missing references) //IL_004d: Expected O, but got Unknown //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_0074: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <>4__this.<>n__0(); <>2__current = (BattleAction)new DrawManyCardAction(((StatusEffect)<>4__this).Level); <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)<>4__this, true, 0.1f); <>1__state = 2; return true; case 2: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnTurnStarted>d__1 <OnTurnStarted>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnTurnStarted>d__ = this; } else { <OnTurnStarted>d__ = new <OnTurnStarted>d__1(0) { <>4__this = <>4__this }; } <OnTurnStarted>d__.args = <>3__args; return <OnTurnStarted>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((Unit)((StatusEffect)this).Battle.Player).TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnTurnStarted); } [IteratorStateMachine(typeof(<OnTurnStarted>d__1))] private IEnumerable<BattleAction> OnTurnStarted(UnitEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnTurnStarted>d__1(-2) { <>4__this = this, <>3__args = args }; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuukaDrawReductionNextTurnSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.Type = (StatusEffectType)2; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuukaDrawReductionNextTurnSeDef))] public sealed class YuukaDrawReductionNextTurnSe : StatusEffect { [CompilerGenerated] private sealed class <OnOwnerTurnStarted>d__2 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitEventArgs args; public UnitEventArgs <>3__args; public YuukaDrawReductionNextTurnSe <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnOwnerTurnStarted>d__2(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_0043: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; ((StatusEffect)<>4__this).NotifyActivating(); <>2__current = (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)<>4__this, true, 0.1f); <>1__state = 1; return true; case 1: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnOwnerTurnStarted>d__2 <OnOwnerTurnStarted>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnOwnerTurnStarted>d__ = this; } else { <OnOwnerTurnStarted>d__ = new <OnOwnerTurnStarted>d__2(0) { <>4__this = <>4__this }; } <OnOwnerTurnStarted>d__.args = <>3__args; return <OnOwnerTurnStarted>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(unit.TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarted); BattleController battle = ((StatusEffect)this).Battle; battle.DrawCardCount -= ((StatusEffect)this).Level; } protected override void OnRemoved(Unit unit) { BattleController battle = ((StatusEffect)this).Battle; battle.DrawCardCount += ((StatusEffect)this).Level; } [IteratorStateMachine(typeof(<OnOwnerTurnStarted>d__2))] private IEnumerable<BattleAction> OnOwnerTurnStarted(UnitEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnOwnerTurnStarted>d__2(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaFervorInTwoTurnsSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.Order = 12; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuukaFervorInTwoTurnsSeDef))] public sealed class YuukaFervorInTwoTurnsSe : StatusEffect { [CompilerGenerated] private sealed class <OnOwnerTurnStarted>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitEventArgs args; public UnitEventArgs <>3__args; public YuukaFervorInTwoTurnsSe <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnOwnerTurnStarted>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_0078: Unknown result type (might be due to invalid IL or missing references) //IL_0082: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; ((StatusEffect)<>4__this).NotifyActivating(); <>2__current = ((StatusEffect)<>4__this).BuffAction<YuukaFervorNextTurnSe>(((StatusEffect)<>4__this).Level, 0, 0, 0, 0.2f); <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)<>4__this, true, 0.1f); <>1__state = 2; return true; case 2: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnOwnerTurnStarted>d__1 <OnOwnerTurnStarted>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnOwnerTurnStarted>d__ = this; } else { <OnOwnerTurnStarted>d__ = new <OnOwnerTurnStarted>d__1(0) { <>4__this = <>4__this }; } <OnOwnerTurnStarted>d__.args = <>3__args; return <OnOwnerTurnStarted>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(unit.TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarted); } [IteratorStateMachine(typeof(<OnOwnerTurnStarted>d__1))] private IEnumerable<BattleAction> OnOwnerTurnStarted(UnitEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnOwnerTurnStarted>d__1(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaFervorNextTurnSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.Order = 11; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuukaFervorNextTurnSeDef))] public sealed class YuukaFervorNextTurnSe : StatusEffect { [CompilerGenerated] private sealed class <OnOwnerTurnStarted>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitEventArgs args; public UnitEventArgs <>3__args; public YuukaFervorNextTurnSe <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnOwnerTurnStarted>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_0078: Unknown result type (might be due to invalid IL or missing references) //IL_0082: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; ((StatusEffect)<>4__this).NotifyActivating(); <>2__current = ((StatusEffect)<>4__this).BuffAction<YuukaFervorSe>(((StatusEffect)<>4__this).Level, 0, 0, 0, 0.2f); <>1__state = 1; return true; case 1: <>1__state = -1; <>2__current = (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)<>4__this, true, 0.1f); <>1__state = 2; return true; case 2: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnOwnerTurnStarted>d__1 <OnOwnerTurnStarted>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnOwnerTurnStarted>d__ = this; } else { <OnOwnerTurnStarted>d__ = new <OnOwnerTurnStarted>d__1(0) { <>4__this = <>4__this }; } <OnOwnerTurnStarted>d__.args = <>3__args; return <OnOwnerTurnStarted>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(unit.TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarted); } [IteratorStateMachine(typeof(<OnOwnerTurnStarted>d__1))] private IEnumerable<BattleAction> OnOwnerTurnStarted(UnitEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnOwnerTurnStarted>d__1(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaFervorSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuukaFervorSeDef))] public sealed class YuukaFervorSe : StatusEffect { [CompilerGenerated] private sealed class <OnOwnerTurnEnded>d__4 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitEventArgs args; public UnitEventArgs <>3__args; public YuukaFervorSe <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnOwnerTurnEnded>d__4(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <>2__current = (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)<>4__this, true, 0.1f); <>1__state = 1; return true; case 1: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnOwnerTurnEnded>d__4 <OnOwnerTurnEnded>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnOwnerTurnEnded>d__ = this; } else { <OnOwnerTurnEnded>d__ = new <OnOwnerTurnEnded>d__4(0) { <>4__this = <>4__this }; } <OnOwnerTurnEnded>d__.args = <>3__args; return <OnOwnerTurnEnded>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } private float AttackRatio => ((float)((StatusEffect)this).Level + 100f) / 100f; protected override void OnAdded(Unit unit) { ((StatusEffect)this).HandleOwnerEvent<DamageDealingEventArgs>(((StatusEffect)this).Owner.DamageDealing, (GameEventHandler<DamageDealingEventArgs>)OnDamageDealing); ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(unit.TurnEnded, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnEnded); } private void OnDamageDealing(DamageDealingEventArgs args) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Invalid comparison between Unknown and I4 //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_0027: 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_0042: Invalid comparison between Unknown and I4 DamageInfo damageInfo = args.DamageInfo; if ((int)((DamageInfo)(ref damageInfo)).DamageType == 2) { damageInfo = args.DamageInfo; args.DamageInfo = ((DamageInfo)(ref damageInfo)).MultiplyBy(AttackRatio); ((GameEventArgs)args).AddModifier((GameEntity)(object)this); if ((int)((GameEventArgs)args).Cause != 20) { ((StatusEffect)this).NotifyActivating(); } } } [IteratorStateMachine(typeof(<OnOwnerTurnEnded>d__4))] private IEnumerable<BattleAction> OnOwnerTurnEnded(UnitEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnOwnerTurnEnded>d__4(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaFloweringResonanceSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuukaFloweringResonanceSeDef))] public sealed class YuukaFloweringResonanceSe : StatusEffect { [CompilerGenerated] private sealed class <OnBlockShieldGained>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private BlockShieldEventArgs args; public BlockShieldEventArgs <>3__args; public YuukaFloweringResonanceSe <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnBlockShieldGained>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { switch (<>1__state) { default: return false; case 0: <>1__state = -1; if (args.Block > 0f) { <>2__current = ((StatusEffect)<>4__this).BuffAction<NextTurnGainBlock>((int)(args.Block * (float)((StatusEffect)<>4__this).Level), 0, 0, 0, 0.2f); <>1__state = 1; return true; } goto IL_0088; case 1: <>1__state = -1; goto IL_0088; case 2: { <>1__state = -1; break; } IL_0088: if (args.Shield > 0f) { <>2__current = ((StatusEffect)<>4__this).BuffAction<NextTurnGainBlock>((int)(args.Shield * (float)((StatusEffect)<>4__this).Level), 0, 0, 0, 0.2f); <>1__state = 2; return true; } break; } 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnBlockShieldGained>d__1 <OnBlockShieldGained>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnBlockShieldGained>d__ = this; } else { <OnBlockShieldGained>d__ = new <OnBlockShieldGained>d__1(0) { <>4__this = <>4__this }; } <OnBlockShieldGained>d__.args = <>3__args; return <OnBlockShieldGained>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } [CompilerGenerated] private sealed class <OnOwnerTurnEnded>d__2 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private UnitEventArgs args; public UnitEventArgs <>3__args; public YuukaFloweringResonanceSe <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnOwnerTurnEnded>d__2(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Expected O, but got Unknown switch (<>1__state) { default: return false; case 0: <>1__state = -1; <>2__current = (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)<>4__this, true, 0.1f); <>1__state = 1; return true; case 1: <>1__state = -1; 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnOwnerTurnEnded>d__2 <OnOwnerTurnEnded>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnOwnerTurnEnded>d__ = this; } else { <OnOwnerTurnEnded>d__ = new <OnOwnerTurnEnded>d__2(0) { <>4__this = <>4__this }; } <OnOwnerTurnEnded>d__.args = <>3__args; return <OnOwnerTurnEnded>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(unit.TurnEnded, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnEnded); ((StatusEffect)this).ReactOwnerEvent<BlockShieldEventArgs>(((Unit)((StatusEffect)this).Battle.Player).BlockShieldGained, (EventSequencedReactor<BlockShieldEventArgs>)OnBlockShieldGained); } [IteratorStateMachine(typeof(<OnBlockShieldGained>d__1))] private IEnumerable<BattleAction> OnBlockShieldGained(BlockShieldEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnBlockShieldGained>d__1(-2) { <>4__this = this, <>3__args = args }; } [IteratorStateMachine(typeof(<OnOwnerTurnEnded>d__2))] private IEnumerable<BattleAction> OnOwnerTurnEnded(UnitEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnOwnerTurnEnded>d__2(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaFlowersBirdsWindAndMoonSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuukaFlowersBirdsWindAndMoonSeDef))] public sealed class YuukaFlowersBirdsWindAndMoonSe : StatusEffect { [CompilerGenerated] private sealed class <OnCardUsed>d__5 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private CardUsingEventArgs args; public CardUsingEventArgs <>3__args; public YuukaFlowersBirdsWindAndMoonSe <>4__this; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnCardUsed>d__5(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { //IL_0057: Unknown result type (might be due to invalid IL or missing references) //IL_00b1: Unknown result type (might be due to invalid IL or missing references) switch (<>1__state) { default: return false; case 0: <>1__state = -1; if (args.Card.HasKeyword((Keyword)4398046511104L) || ((Enum)args.Card.ConfigRelativeKeywords).HasFlag((Enum)(object)(Keyword)4398046511104L)) { ((StatusEffect)<>4__this).NotifyActivating(); if (args.Card is ReimuSakura) { args.Card.DecreaseBaseCost(<>4__this.Mana); } <>2__current = (BattleAction)(object)new IncreasePlayCountAction(args.Card, ((StatusEffect)<>4__this).Level); <>1__state = 1; return true; } goto IL_00ef; case 1: <>1__state = -1; goto IL_00ef; case 2: { <>1__state = -1; break; } IL_00ef: if (args.Card is SummerFlower) { ((StatusEffect)<>4__this).NotifyActivating(); <>2__current = ((StatusEffect)<>4__this).BuffAction<SummerFlowerSe>(args.Card.Value1 * ((StatusEffect)<>4__this).Level, 0, 0, 0, 0.2f); <>1__state = 2; return true; } break; } 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnCardUsed>d__5 <OnCardUsed>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnCardUsed>d__ = this; } else { <OnCardUsed>d__ = new <OnCardUsed>d__5(0) { <>4__this = <>4__this }; } <OnCardUsed>d__.args = <>3__args; return <OnCardUsed>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } public ManaGroup Mana { get; private set; } protected override void OnAdded(Unit unit) { //IL_0022: Unknown result type (might be due to invalid IL or missing references) //IL_0036: Unknown result type (might be due to invalid IL or missing references) ((StatusEffect)this).ReactOwnerEvent<CardUsingEventArgs>(((StatusEffect)this).Battle.CardUsed, (EventSequencedReactor<CardUsingEventArgs>)OnCardUsed); ManaGroup mana = default(ManaGroup); ((ManaGroup)(ref mana)).Any = ((StatusEffect)this).Level; Mana = mana; } [IteratorStateMachine(typeof(<OnCardUsed>d__5))] private IEnumerable<BattleAction> OnCardUsed(CardUsingEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <OnCardUsed>d__5(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaFrostNocturneSeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuukaFrostNocturneSeDef))] public sealed class YuukaFrostNocturneSe : StatusEffect { [CompilerGenerated] private sealed class <StatusEffectAdded>d__1 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private StatusEffectApplyEventArgs args; public StatusEffectApplyEventArgs <>3__args; public YuukaFrostNocturneSe <>4__this; private int <level>5__1; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <StatusEffectAdded>d__1(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { switch (<>1__state) { default: return false; case 0: <>1__state = -1; if (args.Effect is YuukaBloomSe) { <level>5__1 = args.Level.GetValueOrDefault(); <>2__current = ((StatusEffect)<>4__this).BuffAction<FrostArmor>(((StatusEffect)<>4__this).Level * <level>5__1, 0, 0, 0, 0.2f); <>1__state = 1; return true; } break; case 1: <>1__state = -1; break; } 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(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <StatusEffectAdded>d__1 <StatusEffectAdded>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <StatusEffectAdded>d__ = this; } else { <StatusEffectAdded>d__ = new <StatusEffectAdded>d__1(0) { <>4__this = <>4__this }; } <StatusEffectAdded>d__.args = <>3__args; return <StatusEffectAdded>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<StatusEffectApplyEventArgs>(((Unit)((StatusEffect)this).Battle.Player).StatusEffectAdded, (EventSequencedReactor<StatusEffectApplyEventArgs>)StatusEffectAdded); } [IteratorStateMachine(typeof(<StatusEffectAdded>d__1))] private IEnumerable<BattleAction> StatusEffectAdded(StatusEffectApplyEventArgs args) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <StatusEffectAdded>d__1(-2) { <>4__this = this, <>3__args = args }; } } public sealed class YuukaGardenArchitectChoice1SeDef : YuukaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuukaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.HasCount = true; defaultStatusEffectConfig.CountStackType = (StackType)0; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuukaGardenArchitectChoice1SeDef))] public sealed class YuukaGardenArchitectChoice1Se : StatusEffect { [CompilerGenerated] private sealed class <OnCardsAddedToDiscard>d__5 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private CardsEventArgs args; public CardsEventArgs <>3__args; public YuukaGardenArchitectChoice1Se <>4__this; private List<Card> <list>5__1; private List<Card>.Enumerator <>s__2; private Card <card>5__3; private List<Card> <list2>5__4; private List<Card>.Enumerator <>s__5; private Card <card2>5__6; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnCardsAddedToDiscard>d__5(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { int num = <>1__state; if ((uint)(num - -4) <= 1u || (uint)(num - 1) <= 1u) { try { if (num == -4 || num == 2) { try { } finally { <>m__Finally2(); } } } finally { <>m__Finally1(); } } <list>5__1 = null; <>s__2 = default(List<Card>.Enumerator); <card>5__3 = null; <list2>5__4 = null; <>s__5 = default(List<Card>.Enumerator); <card2>5__6 = null; <>1__state = -2; } private bool MoveNext() { //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_00db: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Expected O, but got Unknown try { switch (<>1__state) { default: return false; case 0: <>1__state = -1; <list>5__1 = args.Cards.Where((Card card) => card is SummerFlower).ToList(); if (<list>5__1.Count == 0) { break; } <>s__2 = <list>5__1.GetEnumerator(); <>1__state = -3; goto IL_029d; case 1: <>1__state = -3; goto IL_00fc; case 2: { <>1__state = -4; <card2>5__6 = null; goto IL_0230; } IL_0295: <card>5__3 = null; goto IL_029d; IL_00fc: if (((StatusEffect)<>4__this).Count == 1) { <list2>5__4 = new List<Card>(); <list2>5__4 = (from card in ((StatusEffect)<>4__this).Battle.HandZone.Concat(((StatusEffect)<>4__this).Battle.DrawZoneToShow).Concat(((StatusEffect)<>4__this).Battle.DiscardZone) where card.HasKeyword((Keyword)4398046511104L) || ((Enum)card.ConfigRelativeKeywords).HasFlag((Enum)(object)(Keyword)4398046511104L) select card).ToList(); <>s__5 = <list2>5__4.GetEnumerator(); <>1__state = -4; goto IL_0230; } ((StatusEffect)<>4__this).Count = ((StatusEffect)<>4__this).Count - 1; goto IL_0295; IL_029d: if (<>s__2.MoveNext()) { <card>5__3 = <>s__2.Current; if (((Unit)((StatusEffect)<>4__this).Battle.Player).GetStatusEffect<YuukaBouquetBindingSe>() == null) { <>2__current = (BattleAction)new ExileCardAction(<card>5__3); <>1__state = 1; return true; } goto IL_00fc; } <>m__Finally1(); <>s__2 = default(List<Card>.Enumerator); break; IL_0230: if (<>s__5.MoveNext()) { <card2>5__6 = <>s__5.Current; if (<card>5__3 is ReimuSakura) { <card>5__3.DecreaseBaseCost(<>4__this.Mana * ((StatusEffect)<>4__this).Level); } <>2__current = (BattleAction)(object)new IncreasePlayCountAction(<card2>5__6, ((StatusEffect)<>4__this).Level); <>1__state = 2; return true; } <>m__Finally2(); <>s__5 = default(List<Card>.Enumerator); ((StatusEffect)<>4__this).Count = YuukaGardenArchitectConfig.Option1FlowerToBonus; ((StatusEffect)<>4__this).NotifyActivating(); <list2>5__4 = null; goto IL_0295; } return false; } catch { //try-fault ((IDisposable)this).Dispose(); throw; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } private void <>m__Finally1() { <>1__state = -1; ((IDisposable)<>s__2).Dispose(); } private void <>m__Finally2() { <>1__state = -3; ((IDisposable)<>s__5).Dispose(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } [DebuggerHidden] IEnumerator<BattleAction> IEnumerable<BattleAction>.GetEnumerator() { <OnCardsAddedToDiscard>d__5 <OnCardsAddedToDiscard>d__; if (<>1__state == -2 && <>l__initialThreadId == Environment.CurrentManagedThreadId) { <>1__state = 0; <OnCardsAddedToDiscard>d__ = this; } else { <OnCardsAddedToDiscard>d__ = new <OnCardsAddedToDiscard>d__5(0) { <>4__this = <>4__this }; } <OnCardsAddedToDiscard>d__.args = <>3__args; return <OnCardsAddedToDiscard>d__; } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable<BattleAction>)this).GetEnumerator(); } } [CompilerGenerated] private sealed class <OnCardsAddedToDrawZone>d__6 : IEnumerable<BattleAction>, IEnumerable, IEnumerator<BattleAction>, IEnumerator, IDisposable { private int <>1__state; private BattleAction <>2__current; private int <>l__initialThreadId; private CardsAddingToDrawZoneEventArgs args; public CardsAddingToDrawZoneEventArgs <>3__args; public YuukaGardenArchitectChoice1Se <>4__this; private List<Card> <list>5__1; private List<Card>.Enumerator <>s__2; private Card <card>5__3; private List<Card> <list2>5__4; private List<Card>.Enumerator <>s__5; private Card <card2>5__6; BattleAction IEnumerator<BattleAction>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <OnCardsAddedToDrawZone>d__6(int <>1__state) { this.<>1__state = <>1__state; <>l__initialThreadId = Environment.CurrentManagedThreadId; } [DebuggerHidden] void IDisposable.Dispose() { int num = <>1__state; if ((uint)(num - -4) <= 1u || (uint)(num - 1) <= 1u) { try { if (num == -4 || num == 2) { try { } finally { <>m__Finally2(); } } } finally { <>m__Finally1(); } } <list>5__1 = null; <>s__2 = default(List<Card>.Enumerator); <card>5__3 = null; <list2>5__4 = null; <>s__5 = default(List<Card>.Enumerator); <card2>5__6 = null; <>1__state = -2; } private bool MoveNext() { //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_00db: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Expected O, but got Unknown try { switch (<>1__state) { default: return false; case 0: <>1__state = -1; <list>5__1 = args.Cards.Where((Card card) => card is SummerFlower).ToList(); if (<list>5__1.Count == 0) { break; } <>s__2 = <list>5__1.GetEnumerator(); <>1__state = -3; goto IL_029d; case 1: <>1__state = -3; goto IL_00fc; case 2: { <>1__state = -4; <card2>5__6 = null; goto IL_0230; } IL_0295: <card>5__3 = null; goto IL_029d; IL_00fc: if (((StatusEffect)<>4__this).Count == 1) { <list2>5__4 = new List<Card>(); <list2>5__4 = (from card in ((StatusEffect)<>4__this).Battle.HandZone.Concat(((StatusEffect)<>4__this).Battle.DrawZoneToShow).Concat(((StatusEffect)<>4__this).Battle.DiscardZone) where card.HasKeyword((Keyword)4398046511104L) || ((Enum)card.ConfigRelativeKeywords).HasFlag((Enum)(object)(Keyword)4398046511104L) select card).ToList(); <>s__5 = <list2>5__4.GetEnumerator(); <>1__state = -4; goto IL_0230; } ((StatusEffect)<>4__this).Count = ((StatusEffect)<>4__this).Count - 1; goto IL_0295; IL_029d: if (<>s__2.MoveNext()) { <card>5__3 = <>s__2.Current; if (((Unit)((StatusEffect)<>4__this).Battle.Player).GetStatusEffect<YuukaBouquetBindingSe>() == null) { <>2__current = (BattleAction)new ExileCardAction(<card>5__3); <>1__state = 1; return true; } goto IL_00fc; } <>m__Finally1(); <>s__2 = default(List<Card>.Enumerator); break; IL_0230: if (<>s__5.MoveNext()) { <card2>5__6 = <>s__5.Current; if (<card>5__3 is ReimuSakura) { <card>5__3.DecreaseBaseCost(<>4__this.Mana * ((StatusEffect)<>4__this).Level); } <>2__current = (BattleAction)(object)new IncreasePlayCountAction(<card2>5__6, ((StatusEffect)<>4__this).Level); <>1__state = 2; return true; } <>m__Finally2(); <>s__5 = default(List<Card>.Enumerator); ((StatusEffect)<>4__this).Count = YuukaGardenArchitectConfig.Option1FlowerToBonus; ((StatusEffect)<>4__this).NotifyActivating(); <list2>5__4 = null; goto IL_0295; } return false; } catch { //try-fault ((IDisposable)this).Dispose(); throw; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface imp