using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Serialization; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using System.Text.RegularExpressions; using BepInEx; using BepInEx.Configuration; using BepInEx.Logging; using Cysharp.Threading.Tasks; using HarmonyLib; using KijinSeijaMod.BattleActions; using KijinSeijaMod.Cards; using KijinSeijaMod.Cards.Template; using KijinSeijaMod.Config; using KijinSeijaMod.Enemies; using KijinSeijaMod.Enemies.Template; using KijinSeijaMod.GunName; using KijinSeijaMod.ImageLoader; using KijinSeijaMod.Localization; using KijinSeijaMod.Patches; using KijinSeijaMod.StatusEffects; 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.Dialogs; using LBoL.Core.Intentions; using LBoL.Core.Randoms; using LBoL.Core.Stations; using LBoL.Core.StatusEffects; using LBoL.Core.Units; using LBoL.EntityLib.Cards; 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.EntityLib.StatusEffects.Koishi; using LBoL.EntityLib.StatusEffects.Neutral.Black; using LBoL.EntityLib.StatusEffects.Neutral.TwoColor; using LBoL.EntityLib.StatusEffects.Others; using LBoL.EntityLib.StatusEffects.Sakuya; using LBoL.Presentation; using LBoL.Presentation.UI.Panels; using LBoL.Presentation.UI.Widgets; using LBoL.Presentation.Units; using LBoLEntitySideloader; using LBoLEntitySideloader.Attributes; using LBoLEntitySideloader.Entities; using LBoLEntitySideloader.Resource; using LBoLEntitySideloader.Utils; using Microsoft.CodeAnalysis; using TMPro; using UnityEngine; using UnityEngine.Experimental.Rendering; using UnityEngine.UI; using YamlDotNet.Serialization; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = "")] [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("KijinSeijaMod_windows")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("KijinSeijaMod_windows")] [assembly: AssemblyTitle("KijinSeijaMod_windows")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [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 KijinSeijaMod { [BepInPlugin("author.game.typeofmod.KijinSeija", "KijinSeijaMod", "0.2.1")] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInProcess("LBoL.exe")] public class BepinexPlugin : BaseUnityPlugin { public static string modUniqueID = "KijinSeijaMod"; public static string playerName = "KijinSeija"; public static bool useInGameModel = false; public static string modelName = "KijinSeija"; public static bool modelIsFlipped = true; public static List offColors = new List { (ManaColor)6 }; public static ConfigEntry enableAct1Boss; public static CustomConfigEntry enableAct1BossEntry = new CustomConfigEntry(value: false, "EnableAct1Boss", "EnableAct1Boss", "Toggle the Act 1 boss. Default: Off"); private static readonly Harmony harmony = PInfo.harmony; internal static ManualLogSource log; internal static BatchLocalization unitModelLoc = new BatchLocalization((IResourceSource)(object)directorySource, typeof(UnitModelTemplate), false); internal static TemplateSequenceTable sequenceTable = new TemplateSequenceTable(0); internal static BatchLocalization exhibitLoc = new BatchLocalization((IResourceSource)(object)directorySource, typeof(ExhibitTemplate), false); internal static IResourceSource embeddedSource = (IResourceSource)new EmbeddedSource(Assembly.GetExecutingAssembly()); internal static DirectorySource directorySource = new DirectorySource("author.game.typeofmod.KijinSeija", ""); public static ConfigEntry KijinSeijaRecords; private static object KijinSeija() { throw new NotImplementedException(); } private void Awake() { //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_000c: Expected O, but got Unknown Harmony val = new Harmony(modUniqueID); val.PatchAll(); log = ((BaseUnityPlugin)this).Logger; enableAct1Boss = ((BaseUnityPlugin)this).Config.Bind(enableAct1BossEntry.Section, enableAct1BossEntry.Key, enableAct1BossEntry.Value, enableAct1BossEntry.Description); Object.DontDestroyOnLoad((Object)(object)((Component)this).gameObject); ((Object)((Component)this).gameObject).hideFlags = (HideFlags)61; CardIndexGenerator.PromiseClearIndexSet(); EntityManager.RegisterSelf(); KijinSeijaRecords = ((BaseUnityPlugin)this).Config.Bind("Records", "Records", "", "May cause an error if edited manually."); Func func = () => ResourceLoader.LoadSprite("BossIcon.png", (IResourceSource)(object)directorySource, (Rect?)null, 1, (Vector2?)null); EnemyUnitTemplate.AddBossNodeIcon("KijinSeijaSagume", func, (Assembly)null); } private void OnDestroy() { if (harmony != null) { harmony.UnpatchSelf(); } } } public static class PInfo { public const string GUID = "author.game.typeofmod.KijinSeija"; public const string Name = "KijinSeijaMod"; public const string version = "0.2.1"; public static readonly Harmony harmony = new Harmony("author.game.typeofmod.KijinSeija"); } public class KijinSeijaLoadouts { public static string UltimateSkillA = "KijinSeijaUltA"; public static string UltimateSkillB = "KijinSeijaUltB"; public static string ExhibitA = "KijinSeijaExhibitA"; public static string ExhibitB = "KijinSeijaExhibitB"; public static List DeckA = new List { "Shoot", "Shoot", "Boundary", "Boundary", "KijinSeijaAttackR", "KijinSeijaAttackR", "KijinSeijaBlockU", "KijinSeijaBlockU", "KijinSeijaAccurateAttack", "KijinSeijaEscape", "Zhukeling" }; public static List DeckB = new List { "Shoot", "Shoot", "Boundary", "Boundary", "KijinSeijaAttackW", "KijinSeijaAttackW", "KijinSeijaBlockB", "KijinSeijaBlockB", "KijinSeijaGraze", "KijinSeijaEscape", "Zhukeling" }; public static PlayerUnitConfig playerUnitConfig; static KijinSeijaLoadouts() { //IL_015b: 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_01a1: 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_01dc: Unknown result type (might be due to invalid IL or missing references) //IL_01e6: Expected O, but got Unknown string modUniqueID = BepinexPlugin.modUniqueID; int? num = 10; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).White = 0; ((ManaGroup)(ref val)).Blue = 0; ((ManaGroup)(ref val)).Black = 1; ((ManaGroup)(ref val)).Red = 1; ((ManaGroup)(ref val)).Green = 0; ((ManaGroup)(ref val)).Colorless = 2; ((ManaGroup)(ref val)).Philosophy = 0; ManaGroup val2 = val; playerUnitConfig = new PlayerUnitConfig(modUniqueID, true, "", 0, 8, num, true, (int?)null, (ManaColor)7, (ManaColor)6, val2, "#ff0000ff", 24, 999, 99, UltimateSkillA, UltimateSkillB, ExhibitA, ExhibitB, (IReadOnlyList)DeckA, (IReadOnlyList)DeckB, 3, 2); } } public sealed class KijinSeijaModDef : PlayerUnitTemplate { [EntityLogic(typeof(KijinSeijaModDef))] public sealed class KijinSeijaMod : PlayerUnit { public class KijinSeijaTextForcer : MonoBehaviour { public string adventureId = "Debut"; private bool _loaded = false; private List<(string target, string replacement)> _titleReps = new List<(string, string)>(); private List<(string target, string replacement)> _npcReps = new List<(string, string)>(); private void Update() { if (!SeijaRunTracker.IsSeijaRun) { return; } if (!CustomEventTextManager.IsLoaded) { CustomEventTextManager.LoadAllCustomYamls(); } if (!_loaded && CustomEventTextManager.IsLoaded) { _titleReps.Clear(); _npcReps.Clear(); foreach (Dictionary value5 in CustomEventTextManager.MasterTextDict.Values) { if (value5.TryGetValue("TargetTitle_" + adventureId, out var value) && value5.TryGetValue("Title_" + adventureId, out var value2)) { _titleReps.Add((value.Trim(), value2.Trim())); } if (value5.TryGetValue("TargetNPC_" + adventureId, out var value3)) { string value4 = null; if (!value5.TryGetValue("NPC_" + adventureId, out value4)) { value5.TryGetValue("HostName_" + adventureId, out value4); } if (!string.IsNullOrEmpty(value4)) { _npcReps.Add((value3.Trim(), value4.Trim())); } } } _loaded = true; } if (!_loaded || (_titleReps.Count == 0 && _npcReps.Count == 0)) { return; } TextMeshProUGUI[] array = Object.FindObjectsOfType(); foreach (TextMeshProUGUI val in array) { if (string.IsNullOrWhiteSpace(((TMP_Text)val).text)) { continue; } string text = Regex.Replace(((TMP_Text)val).text, "<.*?>", string.Empty).Replace("\ufeff", "").Trim(); foreach (var titleRep in _titleReps) { if (text == titleRep.target) { ((TMP_Text)val).text = ((TMP_Text)val).text.Replace(titleRep.target, titleRep.replacement); } } foreach (var npcRep in _npcReps) { if (text == npcRep.target) { ((TMP_Text)val).text = ((TMP_Text)val).text.Replace(npcRep.target, npcRep.replacement); } } } } } [HarmonyPatch(typeof(GameRunController), "EnterMapNode")] public class EnterMapNode_Patch { [Obsolete] private static void Prefix(GameRunController __instance, MapNode node) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) //IL_0008: Invalid comparison between Unknown and I4 //IL_0099: 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_00b2: Unknown result type (might be due to invalid IL or missing references) if ((int)node.StationType != 5) { return; } UnitView val = null; UnitView[] array = Object.FindObjectsOfType(); UnitView[] array2 = array; foreach (UnitView val2 in array2) { if ((object)val2.Unit == __instance.Player) { val = val2; break; } } if ((Object)(object)val != (Object)null && __instance.Player is KijinSeijaMod mod) { GameObject val3 = Object.Instantiate(((Component)val).gameObject); val3.transform.position = ((Component)val).transform.position + new Vector3(6.6f, 0.6f, 0f); Renderer[] componentsInChildren = val3.GetComponentsInChildren(); foreach (Renderer val4 in componentsInChildren) { val4.enabled = false; } UnitView component = val3.GetComponent(); if ((Object)(object)component != (Object)null) { ((MonoBehaviour)component).StartCoroutine(LoopShopDialogue(component, val, mod, __instance.CurrentStage.Level, node.X)); } Object.Destroy((Object)(object)val3, 60f); } } private static IEnumerator LoopShopDialogue(UnitView boss, UnitView player, KijinSeijaMod mod, int currentLevel, int nodeX) { yield return (object)new WaitForSeconds(4.5f); bool isFinalAct = currentLevel == 4 && nodeX == 1; bool isFirstEncounter = currentLevel == 1 && nodeX == 1; if (isFinalAct) { boss.Chat(mod.shop6, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); player.Chat(mod.shop7, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); player.Chat(mod.shop8, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); boss.Chat(mod.shop9, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); boss.Chat(mod.shop10, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); } else if (isFirstEncounter) { player.Chat(mod.shop1, 3f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(3.5f); boss.Chat(mod.shop2, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); player.Chat(mod.shop3, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); boss.Chat(mod.shop4, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); boss.Chat(mod.shop45, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); player.Chat(mod.shop5, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); boss.Chat(mod.shop52, 4f, (CloudType)2, 0f); yield return (object)new WaitForSeconds(4.5f); } } } public bool DialogueTriggered = false; private float Multiplier => 0.8f; public string shop1 => ((GameEntity)this).LocalizeProperty("shop1", false, true); public string shop2 => ((GameEntity)this).LocalizeProperty("shop2", false, true); public string shop3 => ((GameEntity)this).LocalizeProperty("shop3", false, true); public string shop4 => ((GameEntity)this).LocalizeProperty("shop4", false, true); public string shop45 => ((GameEntity)this).LocalizeProperty("shop45", false, true); public string shop5 => ((GameEntity)this).LocalizeProperty("shop5", false, true); public string shop52 => ((GameEntity)this).LocalizeProperty("shop52", false, true); public string shop6 => ((GameEntity)this).LocalizeProperty("shop6", false, true); public string shop7 => ((GameEntity)this).LocalizeProperty("shop7", false, true); public string shop8 => ((GameEntity)this).LocalizeProperty("shop8", false, true); public string shop9 => ((GameEntity)this).LocalizeProperty("shop9", false, true); public string shop10 => ((GameEntity)this).LocalizeProperty("shop10", false, true); public string FJ1 => ((GameEntity)this).LocalizeProperty("FJ1", false, true); public bool Blackout { get; private set; } public string LocShortcut(string key, bool decorated, bool required) { return ((GameEntity)this).LocalizeProperty(key, decorated, required); } protected override void OnEnterGameRun(GameRunController gameRun) { //IL_0055: Unknown result type (might be due to invalid IL or missing references) //IL_005f: Expected O, but got Unknown //IL_00e1: 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_015b: Unknown result type (might be due to invalid IL or missing references) //IL_0161: Expected O, but got Unknown GameRunController gameRun2 = ((GameEntity)this).GameRun; gameRun2.ShopPriceMultiplier *= Multiplier; ((GameEntity)this).GameRun.TrueEndingProviders.Add((GameEntity)(object)this); bool flag = gameRun.CurrentMap == null; GameObject shinObj = new GameObject("Shinmyoumaru_Debut"); Object.DontDestroyOnLoad((Object)(object)shinObj); if (flag) { SpriteRenderer val = shinObj.AddComponent(); val.sprite = ResourceLoader.LoadSprite("KijinSeijaShinmyoumaru.png", (IResourceSource)(object)BepinexPlugin.directorySource, (Rect?)null, 84, (Vector2?)null); ((Renderer)val).sortingLayerName = "Default"; ((Renderer)val).sortingOrder = 50; shinObj.transform.position = new Vector3(5.4f, 0f, 0f); shinObj.transform.localScale = new Vector3(-1f, 1f, 1f); } else { Debug.Log((object)"不是全新开局"); } KijinSeijaTextForcer kijinSeijaTextForcer = shinObj.AddComponent(); kijinSeijaTextForcer.adventureId = "Debut"; ((Unit)this).HandleGameRunEvent(((GameEntity)this).GameRun.StationFinished, (GameEventHandler)delegate { if ((Object)(object)shinObj != (Object)null) { Object.Destroy((Object)(object)shinObj); } }); GameObject val2 = new GameObject("ShinDebutHandler"); Object.DontDestroyOnLoad((Object)(object)val2); ShinmyoumaruDebutHandler shinmyoumaruDebutHandler = val2.AddComponent(); shinmyoumaruDebutHandler.gameRun = gameRun; ((Unit)this).HandleGameRunEvent(((GameEntity)this).GameRun.StationEntered, (GameEventHandler)delegate(StationEventArgs args) { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000d: Invalid comparison between Unknown and I4 if ((int)args.Station.Type == 4) { ((GameEntity)this).GameRun.LoseMoney(200); } if (gameRun.CurrentStage.Level == 1) { GameMap currentMap = gameRun.CurrentMap; if (currentMap != null) { int num = 1; for (int i = 0; i < currentMap.Width; i++) { MapNode val3 = currentMap.Nodes[num, i]; if (val3 != null) { val3.StationType = (StationType)5; } } } } }); } protected override void OnEnterBattle(BattleController battle) { DialogueTriggered = false; } } public UniTask? 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)KijinSeijaLocalization.PlayerUnitBatchLoc.AddEntity((EntityDefinition)(object)this); } public override PlayerImages LoadPlayerImages() { return KijinSeijaImageLoader.LoadPlayerImages(BepinexPlugin.playerName); } public override PlayerUnitConfig MakeConfig() { return KijinSeijaLoadouts.playerUnitConfig; } } } namespace KijinSeijaMod.KijinSeijaUlt { public sealed class KijinSeijaUltADef : KijinSeijaUltTemplate { public override UltimateSkillConfig MakeConfig() { UltimateSkillConfig defaulUltConfig = GetDefaulUltConfig(); defaulUltConfig.Damage = 30; defaulUltConfig.PowerCost = 100; return defaulUltConfig; } } [EntityLogic(typeof(KijinSeijaUltADef))] public sealed class KijinSeijaUltA : UltimateSkill { private string LastType { get; set; } public KijinSeijaUltA() { ((UltimateSkill)this).TargetType = (TargetType)1; } private string GetGunName(int gunIndex) { string text = LastType + gunIndex; if (GunConfig.FromName(text) != null) { return text; } return "SingleJiandaoSe" + gunIndex; } protected override IEnumerable Actions(UnitSelector selector) { EnemyUnit enemy = selector.GetEnemy(((UltimateSkill)this).Battle); PlayerUnit player = ((UltimateSkill)this).Battle.Player; yield return (BattleAction)(object)PerformAction.Spell((Unit)(object)((UltimateSkill)this).Battle.Player, "天壤梦弓的诏敕"); yield return (BattleAction)(object)PerformAction.Animation((Unit)(object)((UltimateSkill)this).Battle.Player, "spell", 1f, (string)null, 0f, -1); yield return (BattleAction)new DamageAction((Unit)(object)((UltimateSkill)this).Battle.Player, (Unit)(object)enemy, DamageInfo.Reaction((float)player.Us.MaxPowerLevel * 30f, false), GetGunName(1), (GunType)0); } } public sealed class KijinSeijaUltBDef : KijinSeijaUltTemplate { public override UltimateSkillConfig MakeConfig() { UltimateSkillConfig defaulUltConfig = GetDefaulUltConfig(); defaulUltConfig.Damage = 18; return defaulUltConfig; } } [EntityLogic(typeof(KijinSeijaUltBDef))] public sealed class KijinSeijaUltB : UltimateSkill { private string LastType { get; set; } public KijinSeijaUltB() { ((UltimateSkill)this).TargetType = (TargetType)2; } protected override IEnumerable Actions(UnitSelector selector) { int Value18 = ((Unit)((UltimateSkill)this).Battle.Player).StatusEffects.Where((StatusEffect se) => (int)se.Type == 1).Count(); yield return (BattleAction)(object)PerformAction.Spell((Unit)(object)((UltimateSkill)this).Battle.Player, "天下翻覆"); yield return (BattleAction)(object)PerformAction.Animation((Unit)(object)((UltimateSkill)this).Battle.Player, "spell", 1f, (string)null, 0f, -1); foreach (EnemyUnit enemy in ((UltimateSkill)this).Battle.AllAliveEnemies) { if (((Unit)enemy).IsAlive && !((UltimateSkill)this).Battle.BattleShouldEnd) { for (int Value19 = 0; Value19 < Value18 + 1; Value19++) { yield return (BattleAction)new DamageAction((Unit)(object)((UltimateSkill)this).Owner, (IEnumerable)((UltimateSkill)this).Battle.AllAliveEnemies, ((UltimateSkill)this).Damage, "Guiren1", (GunType)0); } yield return (BattleAction)new RemoveAllNegativeStatusEffectAction((Unit)(object)((UltimateSkill)this).Battle.Player, 0.2f); yield break; } } } } public class KijinSeijaUltTemplate : 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(KijinSeijaDefaultConfig.DefaultID((EntityDefinition)(object)this)); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)KijinSeijaLocalization.UltimateSkillsBatchLoc.AddEntity((EntityDefinition)(object)this); } public override Sprite LoadSprite() { return KijinSeijaImageLoader.LoadUltLoader((UltimateSkillTemplate)(object)this); } public override UltimateSkillConfig MakeConfig() { throw new NotImplementedException(); } public UltimateSkillConfig GetDefaulUltConfig() { return KijinSeijaDefaultConfig.DefaultUltConfig(); } } } namespace KijinSeijaMod.StatusEffects { public sealed class AccuracyModule1Def : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(AccuracyModule1Def))] public sealed class AccuracyModule1 : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).HandleOwnerEvent(((StatusEffect)this).Owner.DamageDealing, (GameEventHandler)OnDamageDealing); } 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_0012: Unknown result type (might be due to invalid IL or missing references) DamageInfo damageInfo = args.DamageInfo; ((DamageInfo)(ref damageInfo)).IsAccuracy = true; args.DamageInfo = damageInfo; ((GameEventArgs)args).AddModifier((GameEntity)(object)this); } } public sealed class KijinSeijaEnhanceSeDef : KijinSeijaStatusEffectTemplate { public override Sprite LoadSprite() { return null; } } [EntityLogic(typeof(KijinSeijaEnhanceSeDef))] public sealed class KijinSeijaEnhanceSe : StatusEffect { } public sealed class KijinSeijaBoomSeDef : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaBoomSeDef))] public sealed class KijinSeijaBoomSe : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Owner.TurnStarted, (EventSequencedReactor)OnOwnerTurnStarted); } private IEnumerable OnOwnerTurnStarted(UnitEventArgs args) { yield return (BattleAction)new DamageAction(((StatusEffect)this).Owner, (IEnumerable)((StatusEffect)this).Battle.EnemyGroup.Alives, DamageInfo.Reaction(40f, false), "ExhTNT", (GunType)0); yield return (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)this, true, 0.1f); } } public sealed class KijinSeijaBorrowedBlade1Def : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; defaultStatusEffectConfig.Type = (StatusEffectType)0; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaBorrowedBlade1Def))] public sealed class KijinSeijaBorrowedBlade1 : StatusEffect { private Queue ReflectDamages { get; set; } = new Queue(); protected override void OnAdded(Unit unit) { ((StatusEffect)this).HandleOwnerEvent(((Unit)((StatusEffect)this).Battle.Player).DamageTaking, (GameEventHandler)OnPlayerDamageTaking); ((StatusEffect)this).ReactOwnerEvent(((Unit)((StatusEffect)this).Battle.Player).DamageReceived, (EventSequencedReactor)OnPlayerDamageReceived); ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Owner.TurnStarted, (EventSequencedReactor)OnOwnerTurnStarted); } private void OnPlayerDamageTaking(DamageEventArgs 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_002c: Unknown result type (might be due to invalid IL or missing references) //IL_006b: Unknown result type (might be due to invalid IL or missing references) //IL_0075: Expected O, but got Unknown DamageInfo damageInfo = args.DamageInfo; int num = MathExtensions.RoundToInt(((DamageInfo)(ref damageInfo)).Damage); if (num >= 1) { ((StatusEffect)this).NotifyActivating(); args.DamageInfo = ((DamageInfo)(ref damageInfo)).ReduceActualDamageBy(num); ((GameEventArgs)args).AddModifier((GameEntity)(object)this); Unit source = args.Source; if (source is EnemyUnit && source.IsAlive) { ReflectDamages.Enqueue(new ReflectDamage(args.Source, num)); } } } private IEnumerable OnPlayerDamageReceived(DamageEventArgs args) { while (ReflectDamages.Count > 0) { ReflectDamage reflectDamage = ReflectDamages.Dequeue(); EnemyUnit target = ((StatusEffect)this).Battle.RandomAliveEnemy; if (reflectDamage.Target.IsAlive) { yield return (BattleAction)new DamageAction((Unit)(object)((StatusEffect)this).Battle.Player, (Unit)(object)target, DamageInfo.Reaction((float)reflectDamage.Damage, false), "ESakuyaSE1", (GunType)0); } } } private IEnumerable OnOwnerTurnStarted(UnitEventArgs args) { yield return (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)this, true, 0.1f); } } public sealed class KijinSeijaFastAttackDef : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; defaultStatusEffectConfig.HasCount = true; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaFastAttackDef))] public sealed class KijinSeijaFastAttack : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Battle.AllEnemyTurnStarted, (EventSequencedReactor)OnAllEnemyTurnStarted); ((StatusEffect)this).Highlight = true; } private IEnumerable OnAllEnemyTurnStarted(GameEventArgs args) { if (((StatusEffect)this).Owner != null && !((StatusEffect)this).Battle.BattleShouldEnd) { yield return (BattleAction)new DamageAction((Unit)(object)((StatusEffect)this).Battle.Player, (Unit)(object)((StatusEffect)this).Battle.FirstAliveEnemy, DamageInfo.Attack((float)((StatusEffect)this).Level, false), "鸦天狗触发B", (GunType)0); ((StatusEffect)this).Highlight = false; } } } public sealed class KijinSeijaFriendS1Def : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaFriendS1Def))] public sealed class KijinSeijaFriendS1 : StatusEffect { protected override void OnAdded(Unit unit) { //IL_0044: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Expected O, but got Unknown foreach (EnemyUnit allAliveEnemy in ((StatusEffect)this).Battle.AllAliveEnemies) { ((GameEntity)this).GameRun.SetEnemyHpAndMaxHp(((Unit)((StatusEffect)this).Battle.Player).Hp, ((Unit)((StatusEffect)this).Battle.Player).Hp, allAliveEnemy, false); } ((StatusEffect)this).HandleOwnerEvent(((StatusEffect)this).Owner.TurnStarted, (GameEventHandler)OnOwnerTurnStarted); } protected void OnOwnerTurnStarted(UnitEventArgs args) { //IL_000d: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Expected O, but got Unknown //IL_004a: Unknown result type (might be due to invalid IL or missing references) //IL_0054: Expected O, but got Unknown ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)(object)new ApplyStatusEffectAction((Unit)((StatusEffect)this).Battle.AllAliveEnemies, (int?)16, (int?)16, (int?)0, (int?)0, 0.2f, true))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)this, true, 0.1f))); } } public sealed class KijinSeijaFriendS2Def : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaFriendS2Def))] public sealed class KijinSeijaFriendS2 : StatusEffect { protected override void OnAdded(Unit unit) { ((GameEntity)this).GameRun.SetHpAndMaxHp(((Unit)((StatusEffect)this).Battle.Player).Hp, ((Unit)((StatusEffect)this).Battle.Player).MaxHp * 11 / 10, false); ((StatusEffect)this).HandleOwnerEvent(((StatusEffect)this).Owner.TurnStarted, (GameEventHandler)OnOwnerTurnEnded); } protected void OnOwnerTurnEnded(UnitEventArgs args) { //IL_0072: Unknown result type (might be due to invalid IL or missing references) //IL_007c: Expected O, but got Unknown ((GameEntity)this).GameRun.SetHpAndMaxHp(((Unit)((StatusEffect)this).Battle.Player).Hp, ((Unit)((StatusEffect)this).Battle.Player).MaxHp * 9 / 10, false); ((GameEntity)this).React(Reactor.op_Implicit(((StatusEffect)this).DebuffAction((Unit)(object)((StatusEffect)this).Battle.Player, ((Unit)((StatusEffect)this).Battle.Player).Hp, 0, 0, 0, true, 0.2f))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)this, true, 0.1f))); } } public sealed class KijinSeijaFriedS3Def : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaFriedS3Def))] public sealed class KijinSeijaFriedS3 : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Battle.EnemyDied, (EventSequencedReactor)OnEnemyDied); ((StatusEffect)this).ReactOwnerEvent(((Unit)((StatusEffect)this).Battle.Player).TurnStarted, (EventSequencedReactor)OnturnStarted); } private IEnumerable OnEnemyDied(DieEventArgs args) { EnemyUnit unit2 = CollectionsExtensions.MinBy((IEnumerable)((StatusEffect)this).Battle.EnemyGroup, (Func)((EnemyUnit val) => ((Unit)val).Hp)); <>n__0(); ((GameEntity)this).GameRun.GainMaxHp((int)((float)((Unit)unit2).MaxHp / 10f), true, true); yield break; } private IEnumerable OnturnStarted(GameEventArgs args) { yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((StatusEffect)this).Battle.Player, (int?)0, (int?)0, (int?)0, (int?)0, 0.2f, true); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class KijinSeijaHeal1Def : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; defaultStatusEffectConfig.HasCount = true; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaHeal1Def))] public sealed class KijinSeijaHeal1 : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).HandleOwnerEvent(((StatusEffect)this).Owner.Dying, (GameEventHandler)OnDying); ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Owner.TurnStarted, (EventSequencedReactor)OnOwnerTurnStarted); } private void OnDying(DieEventArgs args) { //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_008f: Expected O, but got Unknown ((GameEventArgs)args).CancelBy((GameEntity)(object)this); ((StatusEffect)this).NotifyActivating(); if (((Unit)((StatusEffect)this).Battle.Player).MaxHp <= 30) { ((GameEntity)this).GameRun.SetHpAndMaxHp(((Unit)((StatusEffect)this).Battle.Player).MaxHp, ((Unit)((StatusEffect)this).Battle.Player).MaxHp, false); } else { ((GameEntity)this).GameRun.SetHpAndMaxHp(30, ((Unit)((StatusEffect)this).Battle.Player).MaxHp, false); } ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)this, true, 0.1f))); } private IEnumerable OnOwnerTurnStarted(UnitEventArgs args) { yield return (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)this, true, 0.1f); } } public sealed class KijinSeijaInvertedWorld1Def : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; defaultStatusEffectConfig.Type = (StatusEffectType)0; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaInvertedWorld1Def))] public sealed class KijinSeijaInvertedWorld1 : StatusEffect { protected override void OnAdded(Unit unit) { foreach (EnemyUnit allAliveEnemy in ((StatusEffect)this).Battle.AllAliveEnemies) { ((StatusEffect)this).ReactOwnerEvent(((Unit)allAliveEnemy).BlockShieldGained, (EventSequencedReactor)OnBlockShieldGained); } } private IEnumerable OnBlockShieldGained(BlockShieldEventArgs args) { using IEnumerator enumerator = ((StatusEffect)this).Battle.AllAliveEnemies.GetEnumerator(); if (enumerator.MoveNext()) { EnemyUnit enemyUnit = enumerator.Current; if (args.Block > 0f) { yield return (BattleAction)new DamageAction((Unit)(object)((StatusEffect)this).Battle.Player, (Unit)(object)enemyUnit, DamageInfo.Reaction(args.Block * 2f, false), "假面", (GunType)0); } if (args.Shield > 0f) { yield return (BattleAction)new DamageAction((Unit)(object)((StatusEffect)this).Battle.Player, (Unit)(object)enemyUnit, DamageInfo.Reaction(args.Shield * 2f, false), "假面", (GunType)0); } yield break; } } } public sealed class KijinSeijaMaoYuSeDef : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaMaoYuSeDef))] public sealed class KijinSeijaMaoYuSe : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Owner.StatisticalTotalDamageReceived, (EventSequencedReactor)OnOwnerStatisticalTotalDamageReceived); } private IEnumerable OnOwnerStatisticalTotalDamageReceived(StatisticalDamageEventArgs totalArgs) { <>n__0(); yield return (BattleAction)new CastBlockShieldAction(((StatusEffect)this).Owner, new ShieldInfo(((Unit)((StatusEffect)this).Battle.Player).MaxHp / 2, (BlockShieldType)2), false); yield return (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)this, true, 0.1f); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class KijinSeijaMoney1Def : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; defaultStatusEffectConfig.HasCount = true; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaMoney1Def))] public sealed class KijinSeijaMoney1 : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Battle.BattleEnding, (EventSequencedReactor)OnBattleEnding); } private IEnumerable OnBattleEnding(GameEventArgs args) { int Value1 = ((Unit)((StatusEffect)this).Battle.Player).Hp; int Value2 = ((Unit)((StatusEffect)this).Battle.Player).MaxHp; if (Value1 < 4) { <>n__0(); yield return (BattleAction)new GainMoneyAction(999, (SpecialSourceType)0); } else if (Value1 == Value2) { <>n__0(); yield return (BattleAction)new GainMoneyAction(99, (SpecialSourceType)0); } } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class KijinSeijaTiaoZhan1Def : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; defaultStatusEffectConfig.Type = (StatusEffectType)2; defaultStatusEffectConfig.HasCount = true; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaTiaoZhan1Def))] public sealed class KijinSeijaTiaoZhan1 : StatusEffect { public int value44 = 0; public int value45 = 0; protected override void OnAdded(Unit unit) { SetCount(); ((StatusEffect)this).HandleOwnerEvent(((Unit)((StatusEffect)this).Battle.Player).TurnStarted, (GameEventHandler)delegate { SetCount(); }); ((StatusEffect)this).HandleOwnerEvent(unit.DamageReceived, (GameEventHandler)OnDamageReceived); ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Battle.BattleEnded, (EventSequencedReactor)OnBattleEnded); } private void SetCount() { if (value44 >= 25) { value45++; value44 = 0; } else { value44 = 0; } ((StatusEffect)this).Count = value45; } private void OnDamageReceived(DamageEventArgs args) { //IL_0009: 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) int num = value44; DamageInfo damageInfo = args.DamageInfo; value44 = num + (int)((DamageInfo)(ref damageInfo)).Damage; } private IEnumerable OnBattleEnded(GameEventArgs args) { new List(); if (value45 <= 2) { yield return (BattleAction)new GainMoneyAction(50, (SpecialSourceType)0); } else if (value45 > 2 && value45 <= 4) { yield return (BattleAction)new GainMoneyAction(150, (SpecialSourceType)0); ((GameEntity)this).GameRun.GainMaxHp(10, true, true); } else if (value45 > 4 && value45 <= 6) { yield return (BattleAction)new GainMoneyAction(400, (SpecialSourceType)0); ((GameEntity)this).GameRun.GainMaxHp(20 + ((Unit)((StatusEffect)this).Battle.Player).MaxHp / 10, true, true); } else if (value45 > 6) { yield return (BattleAction)new GainMoneyAction(700, (SpecialSourceType)0); ((GameEntity)this).GameRun.GainMaxHp(30 + ((Unit)((StatusEffect)this).Battle.Player).MaxHp / 5, true, true); } } } public sealed class KijinSeijaTSGDef : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; defaultStatusEffectConfig.Type = (StatusEffectType)1; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaTSGDef))] public sealed class KijinSeijaTSG : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).HandleOwnerEvent(((Unit)((StatusEffect)this).Battle.Player).Dying, (GameEventHandler)OnPlayerDying); } private void OnPlayerDying(DieEventArgs args) { //IL_009a: Unknown result type (might be due to invalid IL or missing references) //IL_00a4: Expected O, but got Unknown //IL_00b2: Unknown result type (might be due to invalid IL or missing references) //IL_00bc: Expected O, but got Unknown ((GameEventArgs)args).CancelBy((GameEntity)(object)this); if (((StatusEffect)this).Owner.Hp <= ((Unit)((StatusEffect)this).Battle.Player).MaxHp) { ((GameEntity)this).GameRun.SetHpAndMaxHp(((StatusEffect)this).Owner.Hp, ((Unit)((StatusEffect)this).Battle.Player).MaxHp, false); } else { ((GameEntity)this).GameRun.SetHpAndMaxHp(((Unit)((StatusEffect)this).Battle.Player).MaxHp, ((Unit)((StatusEffect)this).Battle.Player).MaxHp, false); } ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)new ForceKillAction((Unit)(object)((StatusEffect)this).Battle.Player, ((StatusEffect)this).Owner))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)this, true, 0.1f))); } } public sealed class KijinSeijaTurnGainSpiritSeDef : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaTurnGainSpiritSeDef))] public sealed class KijinSeijaTurnGainSpiritSe : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Battle.CardUsing, (EventSequencedReactor)OnCardUsing); ((StatusEffect)this).ReactOwnerEvent(((StatusEffect)this).Owner.TurnEnded, (EventSequencedReactor)OnOwnerTurnEnded); } private IEnumerable OnCardUsing(CardUsingEventArgs args) { <>n__0(); args.PlayTwice = true; ((GameEventArgs)args).AddModifier((GameEntity)(object)this); yield break; } private IEnumerable OnOwnerTurnEnded(UnitEventArgs args) { yield return (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)this, true, 0.1f); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class KijinSeijaYinyangyuSeDef : KijinSeijaStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = KijinSeijaStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List { "Spirit" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(KijinSeijaYinyangyuSeDef))] public sealed class KijinSeijaYinyangyuSe : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent(((Unit)((StatusEffect)this).Battle.Player).TurnStarted, (EventSequencedReactor)OnturnStarted); } private IEnumerable OnturnStarted(GameEventArgs args) { <>n__0(); yield return (BattleAction)(object)new ApplyStatusEffectAction(((StatusEffect)this).Owner, (int?)1, (int?)null, (int?)null, (int?)null, 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction(((StatusEffect)this).Owner, (int?)1, (int?)null, (int?)null, (int?)null, 0f, true); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public class KijinSeijaStatusEffectTemplate : 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(KijinSeijaDefaultConfig.DefaultID((EntityDefinition)(object)this)); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)KijinSeijaLocalization.StatusEffectsBatchLoc.AddEntity((EntityDefinition)(object)this); } public override Sprite LoadSprite() { return KijinSeijaImageLoader.LoadStatusEffectLoader((StatusEffectTemplate)(object)this); } public override StatusEffectConfig MakeConfig() { return GetDefaultStatusEffectConfig(); } public static StatusEffectConfig GetDefaultStatusEffectConfig() { return KijinSeijaDefaultConfig.DefaultStatusEffectConfig(); } } } namespace KijinSeijaMod.model { public sealed class KijinSeijaModel : UnitModelTemplate { public static bool useInGameModel = BepinexPlugin.useInGameModel; public static string model_name = (useInGameModel ? BepinexPlugin.modelName : "KijinSeijaModel.png"); public static string spellsprite_name = "KijinSeijaStand.png"; 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)KijinSeijaLocalization.UnitModelBatchLoc.AddEntity((EntityDefinition)(object)this); } public override ModelOption LoadModelOptions() { //IL_0048: Unknown result type (might be due to invalid IL or missing references) //IL_004d: Unknown result type (might be due to invalid IL or missing references) //IL_0053: Expected O, but got Unknown //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Expected O, but got Unknown if (useInGameModel) { return new ModelOption(ResourcesHelper.LoadSpineUnitAsync(model_name)); } return new ModelOption(ResourceLoader.LoadSpriteAsync(model_name, BepinexPlugin.directorySource, 565, (GraphicsFormat)4, 1, (FilterMode)1, (SpriteMeshType)1, (Rect?)null, (Vector2?)null, "file://")); } public override UniTask LoadSpellSprite() { //IL_0040: Unknown result type (might be due to invalid IL or missing references) //IL_0045: 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_0015: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Unknown result type (might be due to invalid IL or missing references) if (useInGameModel) { return ResourcesHelper.LoadSpellPortraitAsync(model_name); } return ResourceLoader.LoadSpriteAsync(spellsprite_name, BepinexPlugin.directorySource, 100, (GraphicsFormat)4, 1, (FilterMode)1, (SpriteMeshType)1, (Rect?)null, (Vector2?)null, "file://"); } public override UnitModelConfig MakeConfig() { //IL_0057: Unknown result type (might be due to invalid IL or missing references) if (useInGameModel) { UnitModelConfig val = ObjectExtensions.Copy(UnitModelConfig.FromName(model_name)); val.Flip = BepinexPlugin.modelIsFlipped; return val; } UnitModelConfig val2 = ObjectExtensions.Copy(((UnitModelTemplate)this).DefaultConfig()); val2.Flip = BepinexPlugin.modelIsFlipped; val2.Type = 0; val2.Offset = new Vector2(0f, -0.1f); val2.HasSpellPortrait = true; return val2; } } } namespace KijinSeijaMod.Models { public sealed class KijinSeijaShinmyoumaruModel : UnitModelTemplate { public override IdContainer GetId() { //IL_0005: Unknown result type (might be due to invalid IL or missing references) return IdContainer.op_Implicit("KijinSeijaShinmyoumaru"); } public override UnitModelConfig MakeConfig() { //IL_0038: Unknown result type (might be due to invalid IL or missing references) UnitModelConfig val = ObjectExtensions.Copy(UnitModelConfig.FromName("Reimu")); val.Name = "KijinSeijaShinmyoumaru"; val.Type = 0; val.Flip = false; val.Offset = new Vector2(0f, 0.04f); return val; } public override ModelOption LoadModelOptions() { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_0029: Unknown result type (might be due to invalid IL or missing references) //IL_002f: Expected O, but got Unknown return new ModelOption(UniTask.FromResult(ResourceLoader.LoadSprite("KijinSeijaShinmyoumaru.png", (IResourceSource)(object)BepinexPlugin.directorySource, (Rect?)null, 100, (Vector2?)null))); } public override UniTask LoadSpellSprite() { //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) return UniTask.FromResult((Sprite)null); } public override LocalizationOption LoadLocalization() { return null; } } } namespace KijinSeijaMod.Localization { public sealed class KijinSeijaLocalization { public static string Cards = "Cards"; public static string Exhibits = "Exhibits"; public static string PlayerUnit = "PlayerUnit"; public static string EnemiesUnit = "EnemyUnit"; public static string UnitModel = "UnitModel"; public static string UltimateSkills = "UltimateSkills"; public static string StatusEffects = "StatusEffects"; public static BatchLocalization CardsBatchLoc = new BatchLocalization((IResourceSource)(object)BepinexPlugin.directorySource, typeof(CardTemplate), Cards, (Locale)0, false); public static BatchLocalization ExhibitsBatchLoc = new BatchLocalization((IResourceSource)(object)BepinexPlugin.directorySource, typeof(ExhibitTemplate), Exhibits, (Locale)0, false); public static BatchLocalization PlayerUnitBatchLoc = new BatchLocalization((IResourceSource)(object)BepinexPlugin.directorySource, typeof(PlayerUnitTemplate), PlayerUnit, (Locale)0, false); public static BatchLocalization EnemiesUnitBatchLoc = new BatchLocalization((IResourceSource)(object)BepinexPlugin.directorySource, typeof(EnemyUnitTemplate), EnemiesUnit, (Locale)0, false); public static BatchLocalization UnitModelBatchLoc = new BatchLocalization((IResourceSource)(object)BepinexPlugin.directorySource, typeof(UnitModelTemplate), UnitModel, (Locale)0, false); public static BatchLocalization UltimateSkillsBatchLoc = new BatchLocalization((IResourceSource)(object)BepinexPlugin.directorySource, typeof(UltimateSkillTemplate), UltimateSkills, (Locale)0, false); public static BatchLocalization StatusEffectsBatchLoc = new BatchLocalization((IResourceSource)(object)BepinexPlugin.directorySource, typeof(StatusEffectTemplate), StatusEffects, (Locale)0, false); public static void Init() { CardsBatchLoc.DiscoverAndLoadLocFiles(Cards); ExhibitsBatchLoc.DiscoverAndLoadLocFiles(Exhibits); PlayerUnitBatchLoc.DiscoverAndLoadLocFiles(PlayerUnit); EnemiesUnitBatchLoc.DiscoverAndLoadLocFiles(EnemiesUnit); UnitModelBatchLoc.DiscoverAndLoadLocFiles(UnitModel); UltimateSkillsBatchLoc.DiscoverAndLoadLocFiles(UltimateSkills); StatusEffectsBatchLoc.DiscoverAndLoadLocFiles(StatusEffects); } } } namespace KijinSeijaMod.ImageLoader { public sealed class KijinSeijaImageLoader { public static string file_extension = ".png"; public static PlayerImages LoadPlayerImages(string name) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Expected O, but got Unknown PlayerImages val = new PlayerImages(); val.AutoLoad(name, (Func)((string s) => ResourceLoader.LoadSprite(s, (IResourceSource)(object)BepinexPlugin.directorySource, 100, 1, (FilterMode)1, true, (Rect?)null, (Vector2?)null)), (Func>)((string s) => ResourceLoader.LoadSpriteAsync(s, BepinexPlugin.directorySource, 100, (GraphicsFormat)4, 1, (FilterMode)1, (SpriteMeshType)1, (Rect?)null, (Vector2?)null, "file://")), (UseSame)2, ".png", ""); return val; } public static CardImages LoadCardImages(CardTemplate cardTemplate) { //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_000c: Expected O, but got Unknown CardImages val = new CardImages(BepinexPlugin.embeddedSource); val.AutoLoad(cardTemplate, file_extension, "", !BasicTypeExtensions.IsNullOrEmpty(cardTemplate.MakeConfig().UpgradeImageId)); return val; } public static ExhibitSprites LoadExhibitSprite(ExhibitTemplate exhibit) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Expected O, but got Unknown //IL_0009: Unknown result type (might be due to invalid IL or missing references) ExhibitSprites val = new ExhibitSprites(); val.main = ResourceLoader.LoadSprite(IdContainer.op_Implicit(((EntityDefinition)exhibit).GetId()) + file_extension, BepinexPlugin.embeddedSource, (Rect?)null, 1, (Vector2?)null); return val; } public static Sprite LoadUltLoader(UltimateSkillTemplate ult) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) return LoadSprite(((EntityDefinition)ult).GetId()); } public static Sprite LoadStatusEffectLoader(StatusEffectTemplate status) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) return LoadSprite(((EntityDefinition)status).GetId()); } public static Sprite LoadSprite(IdContainer ID) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) return ResourceLoader.LoadSprite(IdContainer.op_Implicit(ID) + file_extension, BepinexPlugin.embeddedSource, (Rect?)null, 1, (Vector2?)null); } } } namespace KijinSeijaMod.GunName { public static class GunNameID { private static IReadOnlyList gunConfig = GunConfig.AllConfig(); public static string GetGunFromId(int id) { string text = ""; try { return (from config in gunConfig where config.Id == id select config.Name).ToList()[0]; } catch { Debug.Log((object)("id: " + id + " doesn't exist. Check whether the ID is correct.")); return "Instant"; } } } } namespace KijinSeijaMod.Exhibits { public sealed class KijinSeijaExhibitADef : KijinSeijaExhibitTemplate { public override ExhibitConfig MakeConfig() { //IL_0020: 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) ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.HasCounter = true; defaultExhibitConfig.InitialCounter = 0; ManaGroup value = default(ManaGroup); ((ManaGroup)(ref value)).Philosophy = 1; defaultExhibitConfig.Mana = value; defaultExhibitConfig.BaseManaColor = (ManaColor)7; return defaultExhibitConfig; } } [EntityLogic(typeof(KijinSeijaExhibitADef))] public sealed class KijinSeijaExhibitA : ShiningExhibit { public int count; private bool Blackout; protected override void OnEnterBattle() { ((Exhibit)this).HandleBattleEvent(((Exhibit)this).Battle.CardRemoved, (GameEventHandler)OnCardWasFuckingDelected); count = 0; Blackout = true; if (((Exhibit)this).Owner.Us != null) { ((Exhibit)this).Owner.Us.MaxPowerLevel = 2 + ((Exhibit)this).Counter; } } private void OnCardWasFuckingDelected(CardEventArgs args) { ((GameEntity)this).GameRun.GainMaxHp(2, true, true); count++; if (count >= 4 && Blackout) { ((Exhibit)this).Counter = ((Exhibit)this).Counter + 1; if (((Exhibit)this).Owner.Us != null) { ((Exhibit)this).Owner.Us.MaxPowerLevel = 2 + ((Exhibit)this).Counter; } Blackout = false; } } } public sealed class KijinSeijaExhibitBDef : KijinSeijaExhibitTemplate { public override ExhibitConfig MakeConfig() { //IL_000b: 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) ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); ManaGroup value = default(ManaGroup); ((ManaGroup)(ref value)).Colorless = 1; defaultExhibitConfig.Mana = value; defaultExhibitConfig.BaseManaColor = (ManaColor)6; defaultExhibitConfig.IsPooled = false; defaultExhibitConfig.RelativeEffects = new List(); return defaultExhibitConfig; } } [EntityLogic(typeof(KijinSeijaExhibitBDef))] public sealed class KijinSeijaExhibitB : ShiningExhibit { protected override void OnEnterBattle() { ((Exhibit)this).HandleBattleEvent(((Exhibit)this).Battle.CardUsed, (GameEventHandler)OnCardUsed); } private void OnCardUsed(CardUsingEventArgs args) { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0029: Expected O, but got Unknown ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)new HealAction((Unit)(object)((Exhibit)this).Battle.Player, (Unit)(object)((Exhibit)this).Battle.Player, 1, (HealType)0, 0.2f))); } } public class KijinSeijaExhibitTemplate : ExhibitTemplate { 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(KijinSeijaDefaultConfig.DefaultID((EntityDefinition)(object)this)); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)KijinSeijaLocalization.ExhibitsBatchLoc.AddEntity((EntityDefinition)(object)this); } public override ExhibitSprites LoadSprite() { return KijinSeijaImageLoader.LoadExhibitSprite((ExhibitTemplate)(object)this); } public override ExhibitConfig MakeConfig() { return GetDefaultExhibitConfig(); } public ExhibitConfig GetDefaultExhibitConfig() { return KijinSeijaDefaultConfig.DefaultExhibitConfig(); } } } namespace KijinSeijaMod.Exhibits.Common { public sealed class KijinSeijaDragonBallSeDef : KijinSeijaExhibitTemplate { public override ExhibitConfig MakeConfig() { ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.Rarity = (Rarity)1; defaultExhibitConfig.Owner = null; defaultExhibitConfig.BaseManaColor = null; defaultExhibitConfig.HasCounter = true; defaultExhibitConfig.InitialCounter = 0; defaultExhibitConfig.LosableType = (ExhibitLosableType)0; defaultExhibitConfig.RelativeCards = new List { "KijinSeijaToken" }; defaultExhibitConfig.IsPooled = true; defaultExhibitConfig.Appearance = (AppearanceType)0; defaultExhibitConfig.RelativeEffects = new List(); return defaultExhibitConfig; } } [EntityLogic(typeof(KijinSeijaDragonBallSeDef))] public sealed class KijinSeijaDragonBallSe : Exhibit { protected override void OnEnterBattle() { ((Exhibit)this).Counter = 0; ((Exhibit)this).ReactBattleEvent(((Unit)((Exhibit)this).Battle.Player).TurnStarted, (EventSequencedReactor)OnPlayerTurnStarteded); ((Exhibit)this).HandleBattleEvent(((Unit)((Exhibit)this).Battle.Player).TurnEnded, (GameEventHandler)delegate { if (((Exhibit)this).Counter % 2 != 0 || ((Exhibit)this).Counter < 2) { ((Exhibit)this).Blackout = true; } else { ((Exhibit)this).Blackout = false; } }); } private IEnumerable OnPlayerTurnStarteded(GameEventArgs arg) { if (!((Exhibit)this).Battle.BattleShouldEnd) { ((Exhibit)this).Counter = ((Exhibit)this).Counter + 1; if (((Exhibit)this).Counter >= 3 && ((Exhibit)this).Counter % 2 != 0) { <>n__0(); yield return (BattleAction)new AddCardsToDrawZoneAction((IEnumerable)Library.CreateCards(1, false), (DrawZoneTarget)2, (AddCardsType)0); } } } protected override void OnLeaveBattle() { ((Exhibit)this).Active = false; ((Exhibit)this).Blackout = false; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Exhibit)this).NotifyActivating(); } } public sealed class KijinSeijaHolyGrailSeDef : KijinSeijaExhibitTemplate { public override ExhibitConfig MakeConfig() { ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.Rarity = (Rarity)1; defaultExhibitConfig.Owner = null; defaultExhibitConfig.BaseManaColor = null; defaultExhibitConfig.LosableType = (ExhibitLosableType)0; defaultExhibitConfig.HasCounter = true; defaultExhibitConfig.InitialCounter = 0; defaultExhibitConfig.IsPooled = true; defaultExhibitConfig.Appearance = (AppearanceType)0; defaultExhibitConfig.RelativeEffects = new List(); return defaultExhibitConfig; } } [EntityLogic(typeof(KijinSeijaHolyGrailSeDef))] public sealed class KijinSeijaHolyGrailSe : Exhibit { protected override void OnEnterBattle() { ((Exhibit)this).Counter = 0; ((Exhibit)this).ReactBattleEvent(((Unit)((Exhibit)this).Battle.Player).TurnStarted, (EventSequencedReactor)OnPlayerTurnStarted); ((Exhibit)this).HandleBattleEvent(((Unit)((Exhibit)this).Battle.Player).TurnEnded, (GameEventHandler)delegate { if (((Exhibit)this).Counter == 0) { ((Exhibit)this).Blackout = true; } }); } private IEnumerable OnPlayerTurnStarted(GameEventArgs args) { if (((Exhibit)this).Battle.BattleShouldEnd) { yield break; } if (((Exhibit)this).Counter < 6) { int counter = ((Exhibit)this).Counter + 1; ((Exhibit)this).Counter = counter; if (((Exhibit)this).Counter == 5) { ((Exhibit)this).Active = true; } yield break; } <>n__0(); foreach (EnemyUnit enemy in ((Exhibit)this).Battle.AllAliveEnemies) { foreach (StatusEffect item in ((Unit)enemy).StatusEffects.Where((StatusEffect se) => (int)se.Type == 0).ToList()) { yield return (BattleAction)new RemoveStatusEffectAction(item, true, 0.1f); } } ((Exhibit)this).Active = false; } protected override void OnLeaveBattle() { ((Exhibit)this).Active = false; ((Exhibit)this).Blackout = false; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Exhibit)this).NotifyActivating(); } } public sealed class KijinSeijaMadokaBowSeDef : KijinSeijaExhibitTemplate { public override ExhibitConfig MakeConfig() { //IL_0033: 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) ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.Rarity = (Rarity)1; defaultExhibitConfig.Owner = null; defaultExhibitConfig.BaseManaColor = null; defaultExhibitConfig.LosableType = (ExhibitLosableType)0; ManaGroup value = default(ManaGroup); ((ManaGroup)(ref value)).Colorless = 3; defaultExhibitConfig.Mana = value; defaultExhibitConfig.HasCounter = true; defaultExhibitConfig.InitialCounter = 0; defaultExhibitConfig.IsPooled = true; defaultExhibitConfig.Appearance = (AppearanceType)0; defaultExhibitConfig.RelativeEffects = new List(); return defaultExhibitConfig; } } [EntityLogic(typeof(KijinSeijaMadokaBowSeDef))] public sealed class KijinSeijaMadokaBowSe : Exhibit { protected override void OnAdded(PlayerUnit player) { GameRunController gameRun = ((GameEntity)this).GameRun; int removeBadCardForbidden = gameRun.RemoveBadCardForbidden + 1; gameRun.RemoveBadCardForbidden = removeBadCardForbidden; } protected override void OnRemoved(PlayerUnit player) { //IL_0059: Unknown result type (might be due to invalid IL or missing references) //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_0060: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Invalid comparison between Unknown and I4 //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_0077: Unknown result type (might be due to invalid IL or missing references) //IL_007a: Invalid comparison between Unknown and I8 GameRunController gameRun = ((GameEntity)this).GameRun; int removeBadCardForbidden = gameRun.RemoveBadCardForbidden - 1; gameRun.RemoveBadCardForbidden = removeBadCardForbidden; if (((Exhibit)this).Battle == null || ((GameEntity)this).GameRun.RemoveBadCardForbidden > 0) { return; } foreach (Card item in ((Exhibit)this).Battle.EnumerateAllCards()) { CardType cardType = item.CardType; if ((int)cardType == 8 && (long)(item.Config.Keywords & 0x8000) > 0L) { item.IsForbidden = true; } } } protected override void OnEnterBattle() { ((Exhibit)this).HandleBattleEvent(((Exhibit)this).Battle.CardUsing, (GameEventHandler)OnCardUsing); } private void OnCardUsing(CardUsingEventArgs args) { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000d: Invalid comparison between Unknown and I4 //IL_001d: Unknown result type (might be due to invalid IL or missing references) //IL_0022: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Expected O, but got Unknown if ((int)args.Card.CardType == 8) { ((Exhibit)this).NotifyActivating(); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)new GainManaAction(((Exhibit)this).Mana))); } } } public sealed class KijinSeijaQiannianShenqiSeDef : KijinSeijaExhibitTemplate { public override ExhibitConfig MakeConfig() { ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.Rarity = (Rarity)1; defaultExhibitConfig.Owner = null; defaultExhibitConfig.BaseManaColor = null; defaultExhibitConfig.LosableType = (ExhibitLosableType)0; defaultExhibitConfig.HasCounter = true; defaultExhibitConfig.InitialCounter = 0; defaultExhibitConfig.IsPooled = true; defaultExhibitConfig.Appearance = (AppearanceType)0; defaultExhibitConfig.RelativeEffects = new List(); return defaultExhibitConfig; } } [EntityLogic(typeof(KijinSeijaQiannianShenqiSeDef))] public sealed class KijinSeijaQiannianShenqiSe : Exhibit { protected override void OnEnterBattle() { ((Exhibit)this).ReactBattleEvent(((Unit)((Exhibit)this).Battle.Player).TurnStarted, (EventSequencedReactor)OnPlayerTurnStarteded); } private IEnumerable OnPlayerTurnStarteded(GameEventArgs arg) { EnemyUnit[] enemies = UnitSelector.AllEnemies.GetEnemies(((Exhibit)this).Battle); int attackCount = enemies.Count((EnemyUnit enemy) => enemy.Intentions.Any((Intention i) => true)); if (attackCount > 1) { yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Exhibit)this).Battle.Player, (int?)(attackCount - 1), (int?)null, (int?)null, (int?)null, 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Exhibit)this).Battle.Player, (int?)(attackCount - 1), (int?)null, (int?)null, (int?)null, 0f, true); } } } public sealed class KijinSeijaSakuraWandSeDef : KijinSeijaExhibitTemplate { public override ExhibitConfig MakeConfig() { ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.Rarity = (Rarity)2; defaultExhibitConfig.Owner = null; defaultExhibitConfig.BaseManaColor = null; defaultExhibitConfig.LosableType = (ExhibitLosableType)0; defaultExhibitConfig.HasCounter = true; defaultExhibitConfig.InitialCounter = 0; defaultExhibitConfig.IsPooled = true; defaultExhibitConfig.Appearance = (AppearanceType)0; defaultExhibitConfig.RelativeEffects = new List(); return defaultExhibitConfig; } } [EntityLogic(typeof(KijinSeijaSakuraWandSeDef))] public sealed class KijinSeijaSakuraWandSe : Exhibit { protected override void OnEnterBattle() { ((Exhibit)this).HandleBattleEvent(((Exhibit)this).Battle.CardUsing, (GameEventHandler)OnCardUsing); } private void OnCardUsing(CardUsingEventArgs args) { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_000d: Invalid comparison between Unknown and I4 if ((int)args.Card.CardType == 1) { args.PlayTwice = true; } } } public sealed class KijinSeijaShenDengSeDef : KijinSeijaExhibitTemplate { public override ExhibitConfig MakeConfig() { ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.Rarity = (Rarity)2; defaultExhibitConfig.Owner = null; defaultExhibitConfig.BaseManaColor = null; defaultExhibitConfig.LosableType = (ExhibitLosableType)0; defaultExhibitConfig.HasCounter = true; defaultExhibitConfig.InitialCounter = 0; defaultExhibitConfig.IsPooled = true; defaultExhibitConfig.Appearance = (AppearanceType)0; defaultExhibitConfig.RelativeEffects = new List(); return defaultExhibitConfig; } } [EntityLogic(typeof(KijinSeijaShenDengSeDef))] public sealed class KijinSeijaShenDengSe : Exhibit { private List Types { get; set; } private int Counter { get; set; } protected override void OnEnterBattle() { Counter = 0; Types = new List { typeof(Weak), typeof(Fragil), typeof(Vulnerable) }; ((Exhibit)this).ReactBattleEvent(((Unit)((Exhibit)this).Battle.Player).TurnEnding, (EventSequencedReactor)OnTurnEnding); } private IEnumerable OnTurnEnding(UnitEventArgs args) { if (Counter % 3 == 0) { CollectionsExtensions.Shuffle((IList)Types, ((GameEntity)this).GameRun.EnemyBattleRng); } <>n__0(); Type type = Types[Counter % 3]; EnemyUnit target = ((Exhibit)this).Battle.RandomAliveEnemy; int? duration = 3; yield return (BattleAction)new ApplyStatusEffectAction(type, (Unit)(object)target, (int?)null, duration, (int?)null, (int?)null, 0f, false); int counter = Counter + 1; Counter = counter; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Exhibit)this).NotifyActivating(); } } public sealed class KijinSeijaSihunYuSeDef : KijinSeijaExhibitTemplate { public override ExhibitConfig MakeConfig() { ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.Rarity = (Rarity)1; defaultExhibitConfig.Owner = null; defaultExhibitConfig.BaseManaColor = null; defaultExhibitConfig.LosableType = (ExhibitLosableType)0; defaultExhibitConfig.HasCounter = true; defaultExhibitConfig.InitialCounter = 0; defaultExhibitConfig.IsPooled = true; defaultExhibitConfig.Appearance = (AppearanceType)0; defaultExhibitConfig.RelativeEffects = new List(); return defaultExhibitConfig; } } [EntityLogic(typeof(KijinSeijaSihunYuSeDef))] public sealed class KijinSeijaSihunYuSe : Exhibit { protected override void OnEnterBattle() { ((Exhibit)this).ReactBattleEvent(((Unit)((Exhibit)this).Battle.Player).TurnStarted, (EventSequencedReactor)OnPlayerTurnStarteded); } private IEnumerable OnPlayerTurnStarteded(UnitEventArgs arg) { if (((Exhibit)this).Battle.BattleShouldEnd) { yield break; } List list = ((Exhibit)this).Battle.RollCards(new CardWeightTable(RarityWeightTable.BattleCard, OwnerWeightTable.AllOnes, CardTypeWeightTable.OnlyFriend, false), 1, (Predicate)delegate(CardConfig config) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Unknown result type (might be due to invalid IL or missing references) ManaGroup cost = config.Cost; return ((ManaGroup)(ref cost)).Amount < 5; }).ToList(); if (list.Count <= 0) { yield break; } <>n__0(); foreach (Card card in list) { card.Summon(); } yield return (BattleAction)new AddCardsToHandAction((IEnumerable)list, (AddCardsType)0, false); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Exhibit)this).NotifyActivating(); } } } namespace KijinSeijaMod.Enemies { public sealed class KijinSeijaEnemyGroupDef : KijinSeijaEnemyGroupTemplate { 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("KijinSeijaSagume"); } public override EnemyGroupConfig MakeConfig() { EnemyGroupConfig defaultEnemyGroupConfig = GetDefaultEnemyGroupConfig(); defaultEnemyGroupConfig.Name = "KijinSeijaSagume"; defaultEnemyGroupConfig.FormationName = "Single"; defaultEnemyGroupConfig.Enemies = new List { "KijinSeijaSagume" }; defaultEnemyGroupConfig.EnemyType = (EnemyType)3; defaultEnemyGroupConfig.RollBossExhibit = false; return defaultEnemyGroupConfig; } } public sealed class KijinSeijaEnemyUnitDef : KijinSeijaEnemyUnitTemplate { public override IdContainer GetId() { //IL_0005: Unknown result type (might be due to invalid IL or missing references) return IdContainer.op_Implicit("KijinSeijaSagume"); } public override EnemyUnitConfig MakeConfig() { //IL_014d: Unknown result type (might be due to invalid IL or missing references) //IL_0163: Unknown result type (might be due to invalid IL or missing references) EnemyUnitConfig defaultEnemyUnitConfig = GetDefaultEnemyUnitConfig(); defaultEnemyUnitConfig.IsPreludeOpponent = false; defaultEnemyUnitConfig.ModleName = "KijinSeijaSagume"; defaultEnemyUnitConfig.BaseManaColor = new List { (ManaColor)4, (ManaColor)3 }; defaultEnemyUnitConfig.Type = (EnemyType)3; defaultEnemyUnitConfig.MaxHp = 1688; defaultEnemyUnitConfig.MaxHpHard = 1789; defaultEnemyUnitConfig.MaxHpLunatic = 1917; defaultEnemyUnitConfig.Damage1 = 8; defaultEnemyUnitConfig.Damage1Hard = 11; defaultEnemyUnitConfig.Damage1Lunatic = 14; defaultEnemyUnitConfig.Damage2 = 45; defaultEnemyUnitConfig.Damage2Hard = 70; defaultEnemyUnitConfig.Damage2Lunatic = 100; defaultEnemyUnitConfig.Defend = 100; defaultEnemyUnitConfig.DefendHard = 200; defaultEnemyUnitConfig.DefendLunatic = 350; defaultEnemyUnitConfig.Count1 = 10; defaultEnemyUnitConfig.Count1Hard = 12; defaultEnemyUnitConfig.Count1Lunatic = 15; defaultEnemyUnitConfig.Count2 = 1; defaultEnemyUnitConfig.Count2Hard = 2; defaultEnemyUnitConfig.Count2Lunatic = 3; defaultEnemyUnitConfig.PowerLoot = new MinMax(500, 500); defaultEnemyUnitConfig.BluePointLoot = new MinMax(1000, 1000); defaultEnemyUnitConfig.Gun1 = new List { "Simple1" }; defaultEnemyUnitConfig.Gun2 = new List { "Simple1" }; defaultEnemyUnitConfig.Gun3 = new List { "Simple1" }; defaultEnemyUnitConfig.Gun4 = new List { "Simple1" }; return defaultEnemyUnitConfig; } } [EntityLogic(typeof(KijinSeijaEnemyUnitDef))] public sealed class KijinSeijaSagume : EnemyUnit { private enum MoveType { move1, move2, move3, move4 } private bool _nextDevil; private MoveType Last { get; set; } public RandomGen SeijaRng { get; set; } private MoveType Next { get; set; } public string move1 => ((EnemyUnit)this).GetSpellCardName((int?)0, 1); public string move2 => ((EnemyUnit)this).GetSpellCardName((int?)2, 3); public string move3 => ((EnemyUnit)this).GetSpellCardName((int?)4, 5); public string move4 => ((EnemyUnit)this).GetSpellCardName((int?)6, 7); public string Sagume1 => ((GameEntity)this).LocalizeProperty("Sagume1", false, true); public string Sagume2 => ((GameEntity)this).LocalizeProperty("Sagume2", false, true); public string Sagume3 => ((GameEntity)this).LocalizeProperty("Sagume3", false, true); public string Sagume4 => ((GameEntity)this).LocalizeProperty("Sagume4", false, true); public string Sagume5 => ((GameEntity)this).LocalizeProperty("Sagume5", false, true); public string Sagume55 => ((GameEntity)this).LocalizeProperty("Sagume55", false, true); public string Sagume6 => ((GameEntity)this).LocalizeProperty("Sagume6", false, true); public string Sagume7 => ((GameEntity)this).LocalizeProperty("Sagume7", false, true); public string Sagume8 => ((GameEntity)this).LocalizeProperty("Sagume8", false, true); public string Sagume9 => ((GameEntity)this).LocalizeProperty("Sagume9", false, true); public string Sagume10 => ((GameEntity)this).LocalizeProperty("Sagume10", false, true); public string Sagume11 => ((GameEntity)this).LocalizeProperty("Sagume11", false, true); public string Sagume12 => ((GameEntity)this).LocalizeProperty("Sagume12", false, true); public string Sagume13 => ((GameEntity)this).LocalizeProperty("Sagume13", false, true); protected override void OnEnterBattle(BattleController battle) { //IL_001d: Unknown result type (might be due to invalid IL or missing references) //IL_0027: Expected O, but got Unknown Last = MoveType.move2; Next = MoveType.move1; SeijaRng = new RandomGen(((GameEntity)this).GameRun.FinalBossSeed); ((Unit)this).ReactBattleEvent(((Unit)this).Battle.BattleStarted, (Func>)OnBattleStarted); ((Unit)this).HandleBattleEvent(((Unit)this).DamageReceived, (GameEventHandler)OnDamageReceived); ((Unit)this).HandleBattleEvent(((Unit)this).Dying, (GameEventHandler)OnDying); } private IEnumerable OnBattleStarted(GameEventArgs arg) { yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)((Unit)this).Battle.Player, Sagume1, 3f, 0f, 3.2f, true); yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)this, Sagume2, 7f, 0f, 7.2f, true); yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)((Unit)this).Battle.Player, Sagume3, 5f, 0f, 5.2f, true); yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)this, Sagume4, 5f, 0f, 5.2f, true); yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)this, Sagume5, 5f, 0f, 5.2f, true); yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)this, Sagume55, 5f, 0f, 5.2f, true); yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)((Unit)this).Battle.Player, Sagume6, 5f, 0f, 5.2f, true); yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)this, Sagume7, 5f, 0f, 5.2f, true); yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)this, Sagume8, 5f, 0f, 5.2f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)this, (int?)null, (int?)null, (int?)null, (int?)(21 - 3 * ((EnemyUnit)this).Count2), 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)this, (int?)(1 + 2 * ((EnemyUnit)this).Count2), (int?)null, (int?)null, (int?)null, 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)this, (int?)(((int)((EnemyUnit)this).Difficulty != 3) ? 1 : 2), (int?)null, (int?)null, (int?)null, 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)this, (int?)((EnemyUnit)this).Count2, (int?)null, (int?)null, (int?)null, 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)this, (int?)((EnemyUnit)this).Count2, (int?)null, (int?)null, (int?)null, 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)this, (int?)((EnemyUnit)this).Count2, (int?)null, (int?)null, (int?)null, 0f, true); } private void OnDying(DieEventArgs args) { //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Expected O, but got Unknown //IL_0132: Unknown result type (might be due to invalid IL or missing references) //IL_013c: Expected O, but got Unknown ((GameEventArgs)args).CancelBy((GameEntity)(object)this); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)new RemoveAllNegativeStatusEffectAction((Unit)(object)this, 0.2f))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)this, (int?)999, (int?)0, (int?)0, (int?)0, 0f, true))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)(object)PerformAction.Chat((Unit)(object)((Unit)this).Battle.Player, Sagume9, 5f, 0f, 5.2f, true))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)(object)PerformAction.Chat((Unit)(object)this, Sagume10, 5f, 0f, 5.2f, true))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)(object)PerformAction.Chat((Unit)(object)((Unit)this).Battle.Player, Sagume11, 5f, 0f, 5.2f, true))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)(object)PerformAction.Chat((Unit)(object)this, Sagume12, 5f, 0f, 5.2f, true))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)(object)PerformAction.Chat((Unit)(object)this, Sagume13, 5f, 0f, 5.2f, true))); ((GameEntity)this).React(Reactor.op_Implicit((BattleAction)new EscapeAction((Unit)(object)this))); } private void OnDamageReceived(DamageEventArgs args) { if (((Unit)this).Hp <= 300) { if (((Unit)this).IsInTurn) { _nextDevil = true; return; } Next = MoveType.move4; ((EnemyUnit)this).UpdateTurnMoves(); } } private IEnumerable BuffAndClear() { yield return (BattleAction)(object)PerformAction.Animation((Unit)(object)this, "spell", 1f, (string)null, 0f, -1); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)this, (int?)null, (int?)((EnemyUnit)this).Count2, (int?)null, (int?)null, 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Unit)this).Battle.Player, (int?)((EnemyUnit)this).Count2, (int?)null, (int?)null, (int?)null, 0.2f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Unit)this).Battle.Player, (int?)null, (int?)((EnemyUnit)this).Count2, (int?)null, (int?)null, 0f, false); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Unit)this).Battle.Player, (int?)((EnemyUnit)this).Count1, (int?)null, (int?)null, (int?)null, 0f, false); } private IEnumerable SetMaxHp() { yield return (BattleAction)(object)PerformAction.Animation((Unit)(object)this, "skill1", 0.8f, (string)null, 0f, -1); if (((Unit)this).MaxHp >= 1453) { yield return (BattleAction)new HealAction((Unit)(object)this, (Unit)(object)this, ((Unit)this).MaxHp - ((Unit)this).Hp * 2, (HealType)0, 0.2f); } else { ((GameEntity)this).GameRun.SetEnemyHpAndMaxHp(1969, 1970, (EnemyUnit)(object)this, false); } } protected override IEnumerable GetTurnMoves() { switch (Next) { case MoveType.move1: yield return ((EnemyUnit)this).AttackMove(move1, "ERinShoot1", ((EnemyUnit)this).Damage1, ((EnemyUnit)this).Count1, false, "Instant", true); break; case MoveType.move2: yield return ((EnemyUnit)this).AttackMove(move2, "CSweet020", ((EnemyUnit)this).Damage2, 2, true, "Instant", true); yield return (IEnemyMove)new SimpleEnemyMove(Intention.Defend(), BasicDefendAction()); break; case MoveType.move3: yield return (IEnemyMove)new SimpleEnemyMove(Intention.SpellCard(move3, (int?)null, (int?)null, false), BuffAndClear()); yield return ((EnemyUnit)this).ClearMove(0f); break; case MoveType.move4: yield return (IEnemyMove)new SimpleEnemyMove(Intention.SpellCard(move4, (int?)null, (int?)null, false), SetMaxHp()); yield return ((EnemyUnit)this).ClearMove(0f); break; default: throw new ArgumentOutOfRangeException(); } } private IEnumerable BasicDefendAction() { yield return (BattleAction)new CastBlockShieldAction((Unit)(object)this, ((EnemyUnit)this).Defend, 0, (BlockShieldType)1, true); } protected override void UpdateMoveCounters() { if (_nextDevil) { Next = MoveType.move4; _nextDevil = false; return; } MoveType next = Next; if (1 == 0) { } MoveType next2 = next switch { MoveType.move1 => MoveType.move2, MoveType.move2 => MoveType.move3, MoveType.move3 => MoveType.move1, MoveType.move4 => MoveType.move1, _ => MoveType.move1, }; if (1 == 0) { } Next = next2; } } public sealed class KijinSeijaSagumeModel : UnitModelTemplate { public override IdContainer GetId() { //IL_0005: Unknown result type (might be due to invalid IL or missing references) return IdContainer.op_Implicit("KijinSeijaSagume"); } public override LocalizationOption LoadLocalization() { return null; } public override ModelOption LoadModelOptions() { //IL_0027: 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 return new ModelOption(UniTask.FromResult(ResourceLoader.LoadSprite("KijinSeijaSagume.png", (IResourceSource)(object)BepinexPlugin.directorySource, (Rect?)null, 200, (Vector2?)null))); } public override UnitModelConfig MakeConfig() { //IL_0038: 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_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0070: Unknown result type (might be due to invalid IL or missing references) //IL_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_008a: 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_00a4: Unknown result type (might be due to invalid IL or missing references) UnitModelConfig val = ObjectExtensions.Copy(UnitModelConfig.FromName("Sakuya")); val.Name = "KijinSeijaSagume"; val.Flip = true; val.Type = 0; val.Offset = new Vector2(0f, 0.04f); val.SpellColor = (IReadOnlyList)(object)new Color32[4] { new Color32((byte)104, (byte)15, (byte)5, byte.MaxValue), new Color32(byte.MaxValue, (byte)46, (byte)72, byte.MaxValue), new Color32((byte)74, (byte)0, (byte)1, (byte)150), new Color32(byte.MaxValue, (byte)46, (byte)72, byte.MaxValue) }; return val; } public override UniTask LoadSpellSprite() { //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) return UniTask.FromResult((Sprite)null); } } } namespace KijinSeijaMod.Enemies.Template { public abstract class KijinSeijaEnemyGroupTemplate : EnemyGroupTemplate { 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(KijinSeijaDefaultConfig.DefaultID((EntityDefinition)(object)this)); } public override EnemyGroupConfig MakeConfig() { return KijinSeijaDefaultConfig.DefaultEnemyGroupConfig(); } public EnemyGroupConfig GetDefaultEnemyGroupConfig() { return KijinSeijaDefaultConfig.DefaultEnemyGroupConfig(); } } public class KijinSeijaEnemyUnitTemplate : EnemyUnitTemplate { 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(KijinSeijaDefaultConfig.DefaultID((EntityDefinition)(object)this)); } public override EnemyUnitConfig MakeConfig() { return KijinSeijaDefaultConfig.DefaultEnemyUnitConfig(); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)KijinSeijaLocalization.EnemiesUnitBatchLoc.AddEntity((EntityDefinition)(object)this); } public override Type TemplateType() { return typeof(EnemyUnitTemplate); } public EnemyUnitConfig GetDefaultEnemyUnitConfig() { return KijinSeijaDefaultConfig.DefaultEnemyUnitConfig(); } } } namespace KijinSeijaMod.Config { public struct CustomConfigEntry { public T Value { get; set; } public string Section { get; set; } public string Key { get; set; } public string Description { get; set; } public CustomConfigEntry(T value, string section, string key, string description) { Value = value; Section = section; Key = key; Description = description; } } public sealed class KijinSeijaDefaultConfig { private static readonly string OwnerName = BepinexPlugin.modUniqueID; public static string DefaultID(EntityDefinition entity) { string name = ((object)entity).GetType().Name; return name.Remove(name.Length - 3); } public static CardConfig DefaultCardConfig() { //IL_0034: Unknown result type (might be due to invalid IL or missing references) //IL_003a: Unknown result type (might be due to invalid IL or missing references) //IL_0192: Unknown result type (might be due to invalid IL or missing references) //IL_0199: Expected O, but got Unknown return new CardConfig(0, "", 10, true, new string[0][], "", "", 0, false, true, false, true, true, (Rarity)0, (CardType)0, (TargetType?)null, (IReadOnlyList)new List(), false, default(ManaGroup), (ManaGroup?)null, (ManaGroup?)null, (ManaGroup?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (ManaGroup?)null, (ManaGroup?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (int?)null, (Keyword)0, (Keyword)0, false, (Keyword)0, (Keyword)0, (IReadOnlyList)new List(), (IReadOnlyList)new List(), (IReadOnlyList)new List(), (IReadOnlyList)new List(), OwnerName, "", "", "", false, (string)null, (IReadOnlyList)new List()); } public static ExhibitConfig DefaultExhibitConfig() { //IL_0032: Unknown result type (might be due to invalid IL or missing references) //IL_0038: Unknown result type (might be due to invalid IL or missing references) //IL_0064: Unknown result type (might be due to invalid IL or missing references) //IL_006a: Expected O, but got Unknown return new ExhibitConfig(0, "", 10, false, false, false, false, (AppearanceType)3, OwnerName, (ExhibitLosableType)1, (Rarity)3, (int?)null, (int?)null, (int?)null, (ManaGroup?)default(ManaGroup), (ManaColor?)null, (ManaColor?)(ManaColor)1, 1, false, (int?)null, (Keyword)0, (IReadOnlyList)new List(), (IReadOnlyList)new List()); } public static StatusEffectConfig DefaultStatusEffectConfig() { //IL_0049: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Expected O, but got Unknown return new StatusEffectConfig(0, "", 10, (StatusEffectType)0, false, true, (int?)null, true, (StackType?)(StackType)0, false, (StackType?)(StackType)0, (DurationDecreaseTiming)0, false, (StackType?)(StackType)3, (StackType?)(StackType)3, false, (Keyword)0, (IReadOnlyList)new List(), (string)null, "Default", "Default", "Default"); } public static UltimateSkillConfig DefaultUltConfig() { //IL_0021: Unknown result type (might be due to invalid IL or missing references) //IL_0027: Expected O, but got Unknown return new UltimateSkillConfig("", 10, 100, 100, 2, (UsRepeatableType)1, 1, 0, 0, (Keyword)256, (IReadOnlyList)new List(), (IReadOnlyList)new List()); } public static EnemyUnitConfig DefaultEnemyUnitConfig() { //IL_00f1: 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_0157: Unknown result type (might be due to invalid IL or missing references) //IL_015d: Expected O, but got Unknown return new EnemyUnitConfig("", false, false, (IReadOnlyList)new List { (ManaColor)6 }, 10, "", "#ffff", (EnemyType)3, false, (float?)null, (int?)null, 250, (int?)10, (int?)10, (int?)10, (int?)10, (int?)1, (int?)15, (int?)1, (int?)2, (int?)250, (int?)10, (int?)10, (int?)10, (int?)10, (int?)1, (int?)15, (int?)1, (int?)2, (int?)250, (int?)10, (int?)10, (int?)10, (int?)10, (int?)1, (int?)15, (int?)1, (int?)2, new MinMax(100, 100), new MinMax(100, 100), (IReadOnlyList)new List { GunNameID.GetGunFromId(800) }, (IReadOnlyList)new List { GunNameID.GetGunFromId(800) }, (IReadOnlyList)new List { GunNameID.GetGunFromId(800) }, (IReadOnlyList)new List { GunNameID.GetGunFromId(800) }); } public static EnemyGroupConfig DefaultEnemyGroupConfig() { //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_0043: Expected O, but got Unknown return new EnemyGroupConfig("", false, (IReadOnlyList)new List(), "", "Single", (IReadOnlyList)new List(), (EnemyType)3, false, 1f, true, new Vector2(-4f, 0.5f), "", "", (string)null); } } } namespace KijinSeijaMod.Cards { public sealed class KijinSeijaDynamicCostDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //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_004a: 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_00c7: 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_00e5: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 10; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 10; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Value1 = 2; defaultCardConfig.UpgradedValue1 = 3; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.Keywords = (Keyword)65536; defaultCardConfig.UpgradedKeywords = (Keyword)65536; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Mana = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedMana = val; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaDynamicCostDef))] public sealed class KijinSeijaDynamicCost : KijinSeijaCard { protected override ManaGroup AdditionalCost { get { //IL_0026: 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_0041: 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_007c: 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_0087: 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_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) if (((Card)this).Battle != null && ((Card)this).Battle.ExileZone.Count < 10) { return ((Card)this).Mana * -((Card)this).Battle.ExileZone.Count; } if (((Card)this).Battle != null && ((Card)this).Battle.ExileZone.Count >= 10) { return ((Card)this).Mana * -10; } return ((Card)this).Mana * 0; } } public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) for (int Value20 = 0; Value20 < ((Card)this).Value1; Value20++) { List list = ((GameEntity)this).GameRun.BaseDeck.Where((Card val) => val.CanUpgradeAndPositive).ToList(); if (list.Count <= 0) { continue; } Card card3 = CollectionsExtensions.Sample((IEnumerable)list, ((GameEntity)this).GameRun.GameRunEventRng); ((GameEntity)this).GameRun.UpgradeDeckCard(card3, false); foreach (Card card4 in ((Card)this).Battle.EnumerateAllCards()) { if (card4.InstanceId == card3.InstanceId) { if (card4.CanUpgrade) { yield return (BattleAction)new UpgradeCardAction(card4); } break; } } } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaMultipleKeywordsDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 3; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.ToolPlayableTimes = 1; defaultCardConfig.RelativeEffects = new List { "KijinSeijaTSG" }; defaultCardConfig.UpgradedRelativeEffects = new List { "KijinSeijaTSG" }; defaultCardConfig.Keywords = (Keyword)524288; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaMultipleKeywordsDef))] public sealed class KijinSeijaMultipleKeywords : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) EnemyUnit selectedEnemy = selector.SelectedEnemy; yield return ((Card)this).DebuffAction((Unit)(object)selectedEnemy, 1, 0, 0, 0, true, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaUnplayableDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0025: Unknown result type (might be due to invalid IL or missing references) //IL_002f: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; defaultCardConfig.Cost = default(ManaGroup); defaultCardConfig.UpgradedCost = default(ManaGroup); defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)8; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Value1 = 4; defaultCardConfig.UpgradedValue1 = 2; defaultCardConfig.Keywords = (Keyword)2129920; defaultCardConfig.UpgradedKeywords = (Keyword)2129920; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaUnplayableDef))] public sealed class KijinSeijaUnplayable : KijinSeijaCard { protected override void OnEnterBattle(BattleController battle) { ((Card)this).ReactBattleEvent(((Unit)((Card)this).Battle.Player).TurnStarted, (EventSequencedReactor)OnPlayerTurnStarted); ((Card)this).HandleBattleEvent(((Card)this).Battle.ManaLosing, (GameEventHandler)OnManaLosing, (GameEventPriority)0); } private IEnumerable OnPlayerTurnStarted(UnitEventArgs args) { if ((int)((Card)this).Zone == 2) { yield return (BattleAction)(object)ConvertManaAction.Purify(((Card)this).Battle.BattleMana, ((Card)this).Value1); } } private void OnManaLosing(ManaEventArgs args) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) //IL_0008: Invalid comparison between Unknown and I4 if ((int)((Card)this).Zone == 2) { ((Card)this).NotifyActivating(); ((GameEventArgs)args).CancelBy((GameEntity)(object)this); } } } public sealed class KijinSeijaAccurateAttackDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Unknown result type (might be due to invalid IL or missing references) //IL_0052: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Damage = 24; defaultCardConfig.UpgradedDamage = 32; defaultCardConfig.Keywords = (Keyword)256; defaultCardConfig.UpgradedKeywords = (Keyword)256; defaultCardConfig.ToolPlayableTimes = 7; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaAccurateAttackDef))] public sealed class KijinSeijaAccurateAttack : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).AttackAction(selector, "EAyaShoot1"); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaAccurateAttack2Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Value1 = 92; defaultCardConfig.UpgradedValue1 = 118; defaultCardConfig.Value2 = 26; defaultCardConfig.UpgradedValue2 = 32; defaultCardConfig.Keywords = (Keyword)0; defaultCardConfig.UpgradedKeywords = (Keyword)256; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaAccurateAttack2Def))] public sealed class KijinSeijaAccurateAttack2 : KijinSeijaCard { public override bool Triggered { get { IEnumerable allAliveEnemies = ((Card)this).Battle.AllAliveEnemies; foreach (EnemyUnit item in allAliveEnemies) { if (((Unit)item).Hp > ((Unit)((Card)this).Battle.Player).Hp * 2) { return true; } } return false; } } public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); EnemyUnit enemy = selector.GetEnemy(((Card)this).Battle); if (((Unit)enemy).Hp > ((Unit)((Card)this).Battle.Player).Hp * 2) { yield return (BattleAction)new DamageAction((Unit)(object)((Card)this).Battle.Player, (Unit)(object)enemy, DamageInfo.Reaction((float)((Card)this).Value1, false), "EAyaShoot2", (GunType)0); } else { yield return (BattleAction)new DamageAction((Unit)(object)((Card)this).Battle.Player, (Unit)(object)enemy, DamageInfo.Reaction((float)((Card)this).Value2, false), "鸦天狗攻击", (GunType)0); } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaAngryHeTongDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 3; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Value1 = 32; defaultCardConfig.Value2 = 2; defaultCardConfig.UpgradedValue2 = 1; defaultCardConfig.Keywords = (Keyword)0; defaultCardConfig.UpgradedKeywords = (Keyword)256; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaAngryHeTongDef))] public sealed class KijinSeijaAngryHeTong : KijinSeijaCard { protected override int AdditionalDamage => ((Card)this).Value1 - ((Card)this).Value2 * (4 - ((Card)this).DeckCounter.Value); public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); EnemyUnit enemy = selector.GetEnemy(((Card)this).Battle); yield return (BattleAction)new DamageAction((Unit)(object)((Card)this).Battle.Player, (Unit)(object)enemy, DamageInfo.Reaction((float)((Card)this).AdditionalDamage, false), "锤子", (GunType)0); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaAttackRDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0038: 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_0051: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.IsPooled = false; defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Damage = 16; defaultCardConfig.UpgradedDamage = 25; defaultCardConfig.GunName = "MaoyuC"; defaultCardConfig.Keywords = (Keyword)1; defaultCardConfig.UpgradedKeywords = (Keyword)1; defaultCardConfig.Illustrator = "@TheIllustrator"; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaAttackRDef))] public sealed class KijinSeijaAttackR : KijinSeijaCard { } public sealed class KijinSeijaAttackWDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0038: 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_0051: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.IsPooled = false; defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Damage = 16; defaultCardConfig.UpgradedDamage = 25; defaultCardConfig.GunName = "MaoyuR"; defaultCardConfig.Keywords = (Keyword)1; defaultCardConfig.UpgradedKeywords = (Keyword)1; defaultCardConfig.Illustrator = "Wholesome_illustrator"; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaAttackWDef))] public sealed class KijinSeijaAttackW : KijinSeijaCard { } public sealed class KijinSeijaBasicAbilityDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 1; ((ManaGroup)(ref cost)).Any = 1; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 3; defaultCardConfig.UpgradedValue1 = 4; defaultCardConfig.ToolPlayableTimes = 1; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaBasicAbilityDef))] public sealed class KijinSeijaBasicAbility : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)null, (int?)null, (int?)null, (int?)(((Unit)((Card)this).Battle.Player).MaxHp / ((Card)this).Value1), 1f, true); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaBasicAbility2Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 2; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 1; defaultCardConfig.UpgradedValue1 = 2; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.Keywords = (Keyword)65536; defaultCardConfig.UpgradedKeywords = (Keyword)65536; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaBasicAbility2Def))] public sealed class KijinSeijaBasicAbility2 : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)null, (int?)((Card)this).Value1, (int?)null, (int?)null, 0f, true); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaBlockAndBarrierDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 2; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)2; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Block = 10; defaultCardConfig.UpgradedBlock = 12; defaultCardConfig.Shield = 18; defaultCardConfig.UpgradedShield = 24; defaultCardConfig.ToolPlayableTimes = 6; defaultCardConfig.RelativeKeyword = (Keyword)1536; defaultCardConfig.UpgradedRelativeKeyword = (Keyword)1536; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaBlockAndBarrierDef))] public sealed class KijinSeijaBlockAndBarrier : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) foreach (EnemyUnit enemy in ((Card)this).Battle.AllAliveEnemies) { if (((Unit)enemy).IsAlive && !((Card)this).Battle.BattleShouldEnd) { BlockInfo block; if (((Unit)((Card)this).Battle.Player).Hp < ((Unit)((Card)this).Battle.LowestHpEnemy).Hp) { yield return ((Card)this).DefenseAction(true); } else if (((Unit)((Card)this).Battle.Player).Hp > ((Unit)((Card)this).Battle.HighestHpEnemy).Hp) { KijinSeijaBlockAndBarrier kijinSeijaBlockAndBarrier = this; block = ((Card)this).Block; yield return ((Card)kijinSeijaBlockAndBarrier).DefenseAction(((BlockInfo)(ref block)).Block, 0, (BlockShieldType)1, true); yield return (BattleAction)new HealAction((Unit)(object)((Card)this).Battle.Player, (Unit)(object)((Card)this).Battle.Player, 3, (HealType)0, 0.2f); } else { KijinSeijaBlockAndBarrier kijinSeijaBlockAndBarrier2 = this; block = ((Card)this).Block; yield return ((Card)kijinSeijaBlockAndBarrier2).DefenseAction(((BlockInfo)(ref block)).Block, 0, (BlockShieldType)1, true); } yield break; } } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaBlockBDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_0040: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Unknown result type (might be due to invalid IL or missing references) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.IsPooled = false; defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)2; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Block = 14; defaultCardConfig.UpgradedBlock = 24; defaultCardConfig.Keywords = (Keyword)1; defaultCardConfig.UpgradedKeywords = (Keyword)1; defaultCardConfig.RelativeKeyword = (Keyword)512; defaultCardConfig.UpgradedRelativeKeyword = (Keyword)512; defaultCardConfig.Illustrator = "Cool_illustrator"; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaBlockBDef))] public sealed class KijinSeijaBlockB : KijinSeijaCard { } public sealed class KijinSeijaBlockUDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_0040: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Unknown result type (might be due to invalid IL or missing references) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.IsPooled = false; defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)2; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Block = 14; defaultCardConfig.UpgradedBlock = 24; defaultCardConfig.Keywords = (Keyword)1; defaultCardConfig.UpgradedKeywords = (Keyword)1; defaultCardConfig.RelativeKeyword = (Keyword)512; defaultCardConfig.UpgradedRelativeKeyword = (Keyword)512; defaultCardConfig.Illustrator = "Credit_the_artist"; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaBlockUDef))] public sealed class KijinSeijaBlockU : KijinSeijaCard { } public sealed class KijinSeijaBonusOnUpgradeDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Unknown result type (might be due to invalid IL or missing references) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Any = 3; ((ManaGroup)(ref cost)).Colorless = 1; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Damage = 1; defaultCardConfig.UpgradedDamage = 3; defaultCardConfig.Value1 = 40; defaultCardConfig.UpgradedValue1 = 60; defaultCardConfig.Value2 = 1; defaultCardConfig.UpgradedValue2 = 2; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Keywords = (Keyword)2097152; defaultCardConfig.UpgradedKeywords = (Keyword)2097408; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaBonusOnUpgradeDef))] public sealed class KijinSeijaBonusOnUpgrade : KijinSeijaCard { public bool Highlight { get; private set; } public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override void OnEnterBattle(BattleController battle) { ((Card)this).ReactBattleEvent(((Card)this).Battle.EnemyDied, (EventSequencedReactor)OnEnemyDied); Highlight = true; } private IEnumerable OnEnemyDied(DieEventArgs args) { if ((object)args.DieSource == this && !args.Unit.HasStatusEffect()) { Highlight = false; yield return (BattleAction)(object)PerformAction.Sfx("C5", 0f); } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) EnemyUnit target = selector.GetEnemy(((Card)this).Battle); yield return ((Card)this).AttackAction(selector, "阴阳结印"); ((Card)this).Battle.EnemyGroup.Alives.Where((EnemyUnit enemy) => enemy != target).Cast().ToList(); if (!Highlight) { yield return (BattleAction)new HealAction((Unit)(object)((Card)this).Battle.Player, (Unit)(object)((Card)this).Battle.Player, ((Card)this).Value1, (HealType)0, 0.2f); ((GameEntity)this).GameRun.GainMaxHp(((Card)this).Value2, true, true); } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaBoomDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 5; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaBoomDef))] public sealed class KijinSeijaBoom : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(1, 1, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaBorrowedBladeDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 3; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 3; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 1; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "KijinSeijaBorrowedBlade1" }; defaultCardConfig.UpgradedRelativeEffects = new List { "KijinSeijaBorrowedBlade1" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaBorrowedBladeDef))] public sealed class KijinSeijaBorrowedBlade : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)1, (int?)0, (int?)0, (int?)0, 0f, true); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaCard5Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 3; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 3; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 5; defaultCardConfig.UpgradedValue1 = 7; defaultCardConfig.Value2 = 2; defaultCardConfig.UpgradedValue2 = 3; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Keywords = (Keyword)8388608; defaultCardConfig.UpgradedKeywords = (Keyword)9437184; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "KijinSeijaCard7" }; defaultCardConfig.UpgradedRelativeEffects = new List { "KijinSeijaCard7" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaCard5Def))] public sealed class KijinSeijaCard5 : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } public override Interaction Precondition() { //IL_005a: Unknown result type (might be due to invalid IL or missing references) //IL_0060: Expected O, but got Unknown List list = (from card in ((Card)this).Battle.HandZone.Concat(((Card)this).Battle.DrawZoneToShow).Concat(((Card)this).Battle.DiscardZone) where (object)card != this select card).ToList(); if (!CollectionsExtensions.Empty((IReadOnlyCollection)list)) { return (Interaction)new SelectCardInteraction(0, ((Card)this).Value1, (IEnumerable)list, (SelectedCardHandling)0); } return null; } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) if (precondition != null) { IReadOnlyList readOnlyList = ((SelectCardInteraction)precondition).SelectedCards; if (readOnlyList.Count > 0) { yield return (BattleAction)new ExileManyCardAction((IEnumerable)readOnlyList); } } yield return (BattleAction)new AddCardsToHandAction((IEnumerable)Library.CreateCards(((Card)this).Value2, false), (AddCardsType)0, false); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaCard7Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 0; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Keywords = (Keyword)8388608; defaultCardConfig.UpgradedKeywords = (Keyword)10485760; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaCard7Def))] public sealed class KijinSeijaCard7 : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } public override Interaction Precondition() { //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Expected O, but got Unknown if (((Card)this).Battle.ExileZone.Count <= 0) { return null; } return (Interaction)new SelectCardInteraction(0, 1, (IEnumerable)((Card)this).Battle.ExileZone, (SelectedCardHandling)0); } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) SelectCardInteraction selectCardInteraction = (SelectCardInteraction)precondition; Card card = ((selectCardInteraction != null) ? selectCardInteraction.SelectedCards[0] : null); if (card != null) { yield return (BattleAction)new MoveCardAction(card, (CardZone)2); } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaChangeImageDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0030: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 2; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Damage = 1; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaChangeImageDef))] public sealed class KijinSeijaChangeImage : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override void OnEnterBattle(BattleController battle) { ((Card)this).ReactBattleEvent(((Unit)((Card)this).Battle.Player).DamageDealt, (EventSequencedReactor)OnPlayerDamageDealt); } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) EnemyUnit enemy = selector.GetEnemy(((Card)this).Battle); yield return (BattleAction)new DamageAction((Unit)(object)((Card)this).Battle.Player, (Unit)(object)enemy, DamageInfo.Reaction((float)((Unit)enemy).MaxHp / 3f, false), "锤子", (GunType)0); } private IEnumerable OnPlayerDamageDealt(DamageEventArgs args) { if ((int)((GameEventArgs)args).Cause == 1 && (object)((GameEventArgs)args).ActionSource == this) { DamageInfo damageInfo = args.DamageInfo; if (((DamageInfo)(ref damageInfo)).Damage > 0f) { yield return (BattleAction)new GainMoneyAction((int)((DamageInfo)(ref damageInfo)).Damage, (SpecialSourceType)0); } if (((Card)this).IsUpgraded) { yield return (BattleAction)new GainPowerAction((int)((DamageInfo)(ref damageInfo)).Damage); } } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaCustomAbilityDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 4; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 4; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 1; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaCustomAbilityDef))] public sealed class KijinSeijaCustomAbility : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(1, 1, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaDebuffDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 3; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 2; defaultCardConfig.UpgradedValue1 = 1; defaultCardConfig.Value2 = 60; defaultCardConfig.UpgradedValue2 = 90; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.RelativeEffects = new List { "Vulnerable", "SpiritNegative" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Vulnerable", "SpiritNegative" }; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaDebuffDef))] public sealed class KijinSeijaDebuff : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)new GainPowerAction(((Card)this).Value2); yield return ((Card)this).DebuffAction((Unit)(object)((Card)this).Battle.Player, 0, ((Card)this).Value1, 0, 0, true, 0.2f); yield return ((Card)this).DebuffAction((Unit)(object)((Card)this).Battle.Player, 3, 0, 0, 0, true, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaDrawDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Value1 = 4; defaultCardConfig.UpgradedValue1 = 6; defaultCardConfig.ToolPlayableTimes = 6; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaDrawDef))] public sealed class KijinSeijaDraw : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)new DrawManyCardAction(((Card)this).Value1); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaDraw2Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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_008d: 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_00ab: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Value1 = 3; defaultCardConfig.UpgradedValue1 = 5; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Mana = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.UpgradedMana = val; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaDraw2Def))] public sealed class KijinSeijaDraw2 : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } public override Interaction Precondition() { //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_003f: Expected O, but got Unknown List list = ((Card)this).Battle.HandZone.Where((Card card) => (object)card != this).ToList(); if (!CollectionsExtensions.Empty((IReadOnlyCollection)list)) { return (Interaction)new SelectHandInteraction(0, list.Count, (IEnumerable)list); } return null; } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) List list = new List(); if (precondition != null) { list.AddRange(((SelectHandInteraction)precondition).SelectedCards); } foreach (Card card in list) { yield return (BattleAction)new MoveCardToDrawZoneAction(card, (DrawZoneTarget)0); } int targetDrawCount = ((Card)this).Value1; List cardsToDraw = ((Card)this).Battle.DrawZone.Reverse().Take(targetDrawCount).ToList(); foreach (Card drawCard in cardsToDraw) { yield return (BattleAction)new MoveCardAction(drawCard, (CardZone)2); drawCard.SetTurnCost(((Card)this).Mana); } int remainingNeeded = targetDrawCount - cardsToDraw.Count; if (remainingNeeded <= 0 || ((Card)this).Battle.DiscardZone.Count <= 0) { yield break; } IEnumerable cardsFromDiscard = CollectionsExtensions.SampleManyOrAll((IEnumerable)((Card)this).Battle.DiscardZone, remainingNeeded, ((GameEntity)this).GameRun.BattleCardRng); foreach (Card discardCard in cardsFromDiscard.ToList()) { yield return (BattleAction)new MoveCardAction(discardCard, (CardZone)2); discardCard.SetTurnCost(((Card)this).Mana); } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaDroneBlockDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.RelativeKeyword = (Keyword)65536; defaultCardConfig.UpgradedRelativeKeyword = (Keyword)65536; defaultCardConfig.Value1 = 16; defaultCardConfig.UpgradedValue1 = 24; defaultCardConfig.ToolPlayableTimes = 2; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "DroneBlock" }; defaultCardConfig.UpgradedRelativeEffects = new List { "DroneBlock" }; defaultCardConfig.Keywords = (Keyword)524288; defaultCardConfig.UpgradedKeywords = (Keyword)524288; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaDroneBlockDef))] public sealed class KijinSeijaDroneBlock : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(((Card)this).Value1, 0, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaEscapeDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0038: 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_0051: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.IsPooled = false; defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.ToolPlayableTimes = 1; defaultCardConfig.MoneyCost = 200; defaultCardConfig.Keywords = (Keyword)9961472; defaultCardConfig.UpgradedKeywords = (Keyword)11534336; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaEscapeDef))] public sealed class KijinSeijaEscape : KijinSeijaCard { public string TalkEscape => ((GameEntity)this).LocalizeProperty("TalkEscape", false, true); public string TalkEscape2 => ((GameEntity)this).LocalizeProperty("TalkEscape2", false, true); public string TalkEscape3 => ((GameEntity)this).LocalizeProperty("TalkEscape3", false, true); public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) List list = ((IEnumerable)((Card)this).Battle.EnemyGroup).Where((EnemyUnit val) => ((Unit)val).IsAlive).ToList(); if (list.Count > 1) { EnemyUnit u = list.First(); yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)u, TalkEscape3, 3f, 0f, 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)u, (int?)10, (int?)null, (int?)null, (int?)null, 1f, true); yield break; } if (list.Count == 0) { Debug.LogWarning((object)"Payment is used while no Enemy"); yield break; } EnemyUnit u2 = list.First(); if (u2 is KijinSeijaSagume) { yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)u2, TalkEscape2, 3f, 0f, 0f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)u2, (int?)99, (int?)0, (int?)0, (int?)0, 0.2f, true); } else { yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)((Card)this).Battle.Player, TalkEscape, 3f, 0f, 0f, true); yield return (BattleAction)new EscapeAction((Unit)(object)u2); } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaExtraTurnDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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_008d: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Value1 = 1; defaultCardConfig.UpgradedValue1 = 2; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Mana = val; defaultCardConfig.ToolPlayableTimes = 1; defaultCardConfig.RelativeEffects = new List { "TimeIsLimited" }; defaultCardConfig.UpgradedRelativeEffects = new List { "TimeIsLimited" }; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaExtraTurnDef))] public sealed class KijinSeijaExtraTurn : LimitedStopTimeCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(((Card)this).Value1, 0, 0, 0, 0.2f); if (((LimitedStopTimeCard)this).Limited) { yield return ((Card)this).DebuffAction((Unit)(object)((Card)this).Battle.Player, 1, 0, 0, 0, true, 0.2f); } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaFoxDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.RelativeKeyword = (Keyword)589824; defaultCardConfig.UpgradedRelativeKeyword = (Keyword)589824; defaultCardConfig.Value1 = 3; defaultCardConfig.UpgradedValue1 = 5; defaultCardConfig.Value2 = 1; defaultCardConfig.UpgradedValue2 = 2; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "FoxCharm", "Immune" }; defaultCardConfig.UpgradedRelativeEffects = new List { "FoxCharm", "Immune" }; defaultCardConfig.Keywords = (Keyword)589824; defaultCardConfig.UpgradedKeywords = (Keyword)589824; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaFoxDef))] public sealed class KijinSeijaFox : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)((Card)this).Value1, (int?)((Card)this).Value1, (int?)((Card)this).Value1, (int?)((Card)this).Value1, 0f, true); yield return ((Card)this).BuffAction(0, ((Card)this).Value2, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaGainManaDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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_007c: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Black = 1; ((ManaGroup)(ref val)).Red = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 12; defaultCardConfig.Mana = val; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaGainManaDef))] public sealed class KijinSeijaGainMana : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)new GainManaAction(((Card)this).Mana); yield return ((Card)this).DebuffAction((Unit)(object)((Card)this).Battle.Player, 0, 2, 0, 0, true, 0.2f); yield return ((Card)this).DebuffAction((Unit)(object)((Card)this).Battle.Player, 0, 2, 0, 0, true, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaGainMana2Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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_0073: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 4; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; val = default(ManaGroup); ((ManaGroup)(ref val)).Red = 2; ((ManaGroup)(ref val)).Black = 2; ((ManaGroup)(ref val)).Blue = 2; ((ManaGroup)(ref val)).Green = 2; ((ManaGroup)(ref val)).White = 2; ((ManaGroup)(ref val)).Philosophy = 1; defaultCardConfig.Mana = val; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaGainMana2Def))] public sealed class KijinSeijaGainMana2 : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)new GainManaAction(((Card)this).Mana); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaGrazeDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 2; defaultCardConfig.UpgradedValue1 = 3; defaultCardConfig.Illustrator = ""; defaultCardConfig.ToolPlayableTimes = 9; defaultCardConfig.RelativeEffects = new List { "Graze" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Graze" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaGrazeDef))] public sealed class KijinSeijaGraze : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(((Card)this).Value1, 0, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaGraze2Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 1; defaultCardConfig.UpgradedValue1 = 1; defaultCardConfig.Illustrator = ""; defaultCardConfig.ToolPlayableTimes = 2; defaultCardConfig.RelativeEffects = new List { "Invincible" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Invincible" }; defaultCardConfig.Keywords = (Keyword)2097152; defaultCardConfig.UpgradedKeywords = (Keyword)2097152; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaGraze2Def))] public sealed class KijinSeijaGraze2 : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(((Card)this).Value1, ((Card)this).Value1, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaHealDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 3; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Keywords = (Keyword)0; defaultCardConfig.UpgradedKeywords = (Keyword)2097152; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaHealDef))] public sealed class KijinSeijaHeal : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)1, (int?)1, (int?)0, (int?)0, 0.2f, true); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaInvertedWorldDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "KijinSeijaInvertedWorld1" }; defaultCardConfig.UpgradedRelativeEffects = new List { "KijinSeijaInvertedWorld1" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaInvertedWorldDef))] public sealed class KijinSeijaInvertedWorld : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)1, (int?)0, (int?)0, (int?)0, 0f, true); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaJiaYongDianQiDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.RelativeEffects = new List { "Appliance" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Appliance" }; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaJiaYongDianQiDef))] public sealed class KijinSeijaJiaYongDianQi : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(0, 0, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaKillDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Value1 = 4; defaultCardConfig.UpgradedValue1 = 7; defaultCardConfig.Illustrator = ""; defaultCardConfig.ToolPlayableTimes = 1; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaKillDef))] public sealed class KijinSeijaKill : KijinSeijaCard { public string FailToKill => ((GameEntity)this).LocalizeProperty("FailToKill", false, true); public override bool Triggered { get { IEnumerable allAliveEnemies = ((Card)this).Battle.AllAliveEnemies; foreach (EnemyUnit item in allAliveEnemies) { if (((Unit)item).MaxHp - ((Unit)item).Hp >= ((Unit)((Card)this).Battle.Player).Hp && ((Unit)item).MaxHp <= ((Unit)((Card)this).Battle.Player).MaxHp * ((Card)this).Value1) { return true; } } return false; } } public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) EnemyUnit selectedEnemy = selector.SelectedEnemy; if (((Unit)selectedEnemy).MaxHp >= ((Unit)((Card)this).Battle.Player).MaxHp * ((Card)this).Value1) { yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)selectedEnemy, FailToKill, 3f, 0f, 0f, true); } else if (((Unit)selectedEnemy).MaxHp - ((Unit)selectedEnemy).Hp >= ((Unit)((Card)this).Battle.Player).Hp) { yield return (BattleAction)new ForceKillAction((Unit)(object)((Card)this).Battle.Player, (Unit)(object)selectedEnemy); } else { yield return (BattleAction)(object)PerformAction.Chat((Unit)(object)selectedEnemy, FailToKill, 3f, 0f, 0f, true); } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaLoseHpDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_004a: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Black = 1; ((ManaGroup)(ref val)).Red = 1; ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 3; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Keywords = (Keyword)0; defaultCardConfig.UpgradedKeywords = (Keyword)2097152; defaultCardConfig.ToolPlayableTimes = 2; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaLoseHpDef))] public sealed class KijinSeijaLoseHp : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) if (((Unit)((Card)this).Battle.Player).MaxHp == ((Unit)((Card)this).Battle.Player).Hp) { Singleton.Instance.CurrentGameRun.SetHpAndMaxHp(1, ((Unit)((Card)this).Battle.Player).MaxHp, false); } else { Singleton.Instance.CurrentGameRun.SetHpAndMaxHp(((Unit)((Card)this).Battle.Player).MaxHp - ((Unit)((Card)this).Battle.Player).Hp, ((Unit)((Card)this).Battle.Player).MaxHp, false); } yield break; } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaLoseHp2Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 3; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 3; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Keywords = (Keyword)0; defaultCardConfig.UpgradedKeywords = (Keyword)2097152; defaultCardConfig.ToolPlayableTimes = 2; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaLoseHp2Def))] public sealed class KijinSeijaLoseHp2 : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)((Unit)((Card)this).Battle.Player).Hp, (int?)null, (int?)null, (int?)null, 0f, true); Singleton.Instance.CurrentGameRun.SetHpAndMaxHp(1, ((Unit)((Card)this).Battle.Player).MaxHp, false); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaLoseHp3Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 3; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 5; defaultCardConfig.UpgradedValue1 = 10; defaultCardConfig.Keywords = (Keyword)65536; defaultCardConfig.UpgradedKeywords = (Keyword)65536; defaultCardConfig.ToolPlayableTimes = 2; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaLoseHp3Def))] public sealed class KijinSeijaLoseHp3 : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) Singleton.Instance.CurrentGameRun.SetHpAndMaxHp(((Unit)((Card)this).Battle.Player).MaxHp - ((Unit)((Card)this).Battle.Player).MaxHp / ((Card)this).Value1, ((Unit)((Card)this).Battle.Player).MaxHp - ((Unit)((Card)this).Battle.Player).MaxHp / ((Card)this).Value1, false); yield break; } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaLosePowerDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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_0073: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 5; defaultCardConfig.Mana = val; defaultCardConfig.Value1 = 3; defaultCardConfig.UpgradedValue1 = 5; defaultCardConfig.ToolPlayableTimes = 5; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaLosePowerDef))] public sealed class KijinSeijaLosePower : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)new LosePowerAction(50); yield return (BattleAction)new GainManaAction(((Card)this).Mana); yield return (BattleAction)new DrawManyCardAction(((Card)this).Value1); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaLoveGirlDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 1; defaultCardConfig.UpgradedValue1 = 2; defaultCardConfig.ToolPlayableTimes = 5; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "LoveGirlDamageReduce" }; defaultCardConfig.UpgradedRelativeEffects = new List { "LoveGirlDamageReduce" }; defaultCardConfig.Keywords = (Keyword)524288; defaultCardConfig.UpgradedKeywords = (Keyword)524288; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaLoveGirlDef))] public sealed class KijinSeijaLoveGirl : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)((Card)this).Value1, (int?)null, (int?)null, (int?)null, 0f, true); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaMaoYuDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaMaoYuDef))] public sealed class KijinSeijaMaoYu : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(0, 0, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaMoneyDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 1; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaMoneyDef))] public sealed class KijinSeijaMoney : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(1, 1, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaPoisonDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)2; defaultCardConfig.RelativeKeyword = (Keyword)65536; defaultCardConfig.UpgradedRelativeKeyword = (Keyword)65536; defaultCardConfig.Value1 = 8; defaultCardConfig.UpgradedValue1 = 12; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "Poison" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Poison" }; defaultCardConfig.Keywords = (Keyword)524288; defaultCardConfig.UpgradedKeywords = (Keyword)524288; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaPoisonDef))] public sealed class KijinSeijaPoison : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); foreach (EnemyUnit enemy in ((Card)this).Battle.AllAliveEnemies) { if (((Unit)enemy).IsAlive && !((Card)this).Battle.BattleShouldEnd) { yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)enemy, (int?)((Card)this).Value1, (int?)0, (int?)0, (int?)0, 0f, true); } } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaRabbitDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "EnemyTuanzi" }; defaultCardConfig.UpgradedRelativeEffects = new List { "EnemyTuanzi" }; defaultCardConfig.Keywords = (Keyword)8388608; defaultCardConfig.UpgradedKeywords = (Keyword)8388608; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaRabbitDef))] public sealed class KijinSeijaRabbit : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)2, (int?)null, (int?)null, (int?)null, 0f, true); yield return ((Card)this).BuffAction(0, 0, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaShenLingGoldDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)5; defaultCardConfig.RelativeKeyword = (Keyword)65536; defaultCardConfig.UpgradedRelativeKeyword = (Keyword)65536; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "Amulet" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Amulet" }; defaultCardConfig.Keywords = (Keyword)65536; defaultCardConfig.UpgradedKeywords = (Keyword)65536; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaShenLingGoldDef))] public sealed class KijinSeijaShenLingGold : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)1, (int?)null, (int?)null, (int?)null, 0f, true); foreach (EnemyUnit enemy in ((Card)this).Battle.AllAliveEnemies) { if (((Unit)enemy).IsAlive && !((Card)this).Battle.BattleShouldEnd) { yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)enemy, (int?)30, (int?)null, (int?)null, (int?)null, 1f, true); } } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaShenLingHPDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)5; defaultCardConfig.RelativeKeyword = (Keyword)65536; defaultCardConfig.UpgradedRelativeKeyword = (Keyword)65536; defaultCardConfig.Value1 = 2; defaultCardConfig.UpgradedValue1 = 3; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "Amulet" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Amulet" }; defaultCardConfig.Keywords = (Keyword)65536; defaultCardConfig.UpgradedKeywords = (Keyword)65536; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaShenLingHPDef))] public sealed class KijinSeijaShenLingHP : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)1, (int?)null, (int?)null, (int?)null, 0f, true); foreach (EnemyUnit enemy in ((Card)this).Battle.AllAliveEnemies) { if (((Unit)enemy).IsAlive && !((Card)this).Battle.BattleShouldEnd) { yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)enemy, (int?)((Card)this).Value1, (int?)null, (int?)null, (int?)null, 1f, true); } } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaSunflowerDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 3; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Damage = 7; defaultCardConfig.UpgradedDamage = 9; defaultCardConfig.Block = 9; defaultCardConfig.UpgradedBlock = 9; defaultCardConfig.ToolPlayableTimes = 9; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaSunflowerDef))] public sealed class KijinSeijaSunflower : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); yield return ((Card)this).AttackAction(selector, "WhiteFairy1"); yield return ((Card)this).AttackAction(selector, "Instant"); KijinSeijaSunflower kijinSeijaSunflower = this; BlockInfo block = ((Card)this).Block; yield return ((Card)kijinSeijaSunflower).DefenseAction(((BlockInfo)(ref block)).Block, 0, (BlockShieldType)1, true); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaTiaoZhanDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 1; defaultCardConfig.UpgradedValue1 = 1; defaultCardConfig.ToolPlayableTimes = 1; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaTiaoZhanDef))] public sealed class KijinSeijaTiaoZhan : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(0, 0, 0, 0, 0.2f); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)0, (int?)99, (int?)0, (int?)0, 0f, true); yield return ((Card)this).BuffAction(((Card)this).Value1, 0, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaTokenDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0038: 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_0051: 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_008c: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.IsPooled = false; defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)2; val = default(ManaGroup); ((ManaGroup)(ref val)).Philosophy = 1; defaultCardConfig.Mana = val; defaultCardConfig.Keywords = (Keyword)589824; defaultCardConfig.UpgradedKeywords = (Keyword)589824; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaTokenDef))] public sealed class KijinSeijaToken : KijinSeijaCard { public int KijinSeijaTokenCount { get { if (((Card)this).Battle != null) { return ((Card)this).Battle.EnumerateAllCardsButExile().Count((Card card) => card is KijinSeijaToken); } return 0; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)new GainManaAction(((Card)this).Mana); foreach (EnemyUnit enemy in ((Card)this).Battle.AllAliveEnemies) { if (KijinSeijaTokenCount >= 7) { List KijinSeijaTokens = (from card in ((Card)this).Battle.EnumerateAllCardsButExile() where card is KijinSeijaToken select card).ToList(); if ((object)this == KijinSeijaTokens.First()) { yield return (BattleAction)new DamageAction((Unit)(object)((Card)this).Battle.Player, (IEnumerable)((Card)this).Battle.EnemyGroup.Alives, DamageInfo.Reaction((float)((Unit)enemy).MaxHp * 10f, false), "实现愿望", (GunType)0); yield return (BattleAction)new ExileManyCardAction((IEnumerable)KijinSeijaTokens); } } } } } public sealed class KijinSeijaUPDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0030: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Any = 0; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Keywords = (Keyword)524288; defaultCardConfig.UpgradedKeywords = (Keyword)524288; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaUPDef))] public sealed class KijinSeijaUP : KijinSeijaCard { public override bool CanUpgrade => ((Card)this).UpgradeCounter < 99; public override bool IsUpgraded => ((Card)this).UpgradeCounter > 0; public override void Initialize() { ((Card)this).Initialize(); ((Card)this).UpgradeCounter = 0; } public override void Upgrade() { int? upgradeCounter = ((Card)this).UpgradeCounter + 1; ((Card)this).UpgradeCounter = upgradeCounter; ((Card)this).ProcessKeywordUpgrade(); ((Card)this).CostChangeInUpgrading(); ((GameEntity)this).NotifyChanged(); } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) for (int Value12 = 0; Value12 < ((Card)this).UpgradeCounter; Value12++) { List list = ((GameEntity)this).GameRun.BaseDeck.Where((Card val) => val.CanUpgradeAndPositive).ToList(); if (list.Count <= 0) { continue; } Card card3 = CollectionsExtensions.Sample((IEnumerable)list, ((GameEntity)this).GameRun.GameRunEventRng); ((GameEntity)this).GameRun.UpgradeDeckCard(card3, false); foreach (Card card4 in ((Card)this).Battle.EnumerateAllCards()) { if (card4 is KijinSeijaUP) { yield return null; } else if (card4.InstanceId == card3.InstanceId) { if (card4.CanUpgrade) { yield return (BattleAction)new UpgradeCardAction(card4); } break; } } } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((GameEntity)this).GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if (deckCardByInstanceId != null) { ((GameEntity)this).GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); } public override IEnumerable AfterFollowPlayAction() { Card deckCardByInstanceId = ((GameEntity)this).GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if (deckCardByInstanceId != null) { ((GameEntity)this).GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); } } public sealed class KijinSeijaVampireDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 3; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 2; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "Vampire" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Vampire" }; defaultCardConfig.Keywords = (Keyword)524288; defaultCardConfig.UpgradedKeywords = (Keyword)524288; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaVampireDef))] public sealed class KijinSeijaVampire : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)null, (int?)null, (int?)null, (int?)null, 1f, true); yield return ((Card)this).BuffAction(1, 0, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaWaterDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)2; defaultCardConfig.Value1 = 12; defaultCardConfig.UpgradedValue1 = 15; defaultCardConfig.ToolPlayableTimes = 5; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "Drowning" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Drowning" }; defaultCardConfig.Keywords = (Keyword)524288; defaultCardConfig.UpgradedKeywords = (Keyword)524288; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaWaterDef))] public sealed class KijinSeijaWater : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); foreach (EnemyUnit enemy in ((Card)this).Battle.AllAliveEnemies) { if (((Unit)enemy).IsAlive && !((Card)this).Battle.BattleShouldEnd) { yield return ((Card)this).DebuffAction((Unit)(object)enemy, ((Card)this).Value1, 0, 0, 0, true, 0.2f); } } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaWeakDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)0; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)2; defaultCardConfig.RelativeKeyword = (Keyword)65536; defaultCardConfig.UpgradedRelativeKeyword = (Keyword)65536; defaultCardConfig.Value1 = 2; defaultCardConfig.UpgradedValue1 = 3; defaultCardConfig.ToolPlayableTimes = 6; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "Vulnerable" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Vulnerable" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaWeakDef))] public sealed class KijinSeijaWeak : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) <>n__1(); foreach (EnemyUnit enemy in ((Card)this).Battle.AllAliveEnemies) { if (((Unit)enemy).IsAlive && !((Card)this).Battle.BattleShouldEnd) { yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)enemy, (int?)0, (int?)((Card)this).Value1, (int?)0, (int?)0, 0f, true); } } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__1() { ((Card)this).NotifyActivating(); } } public sealed class KijinSeijaWGCZDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 1; defaultCardConfig.UpgradedValue1 = 2; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaWGCZDef))] public sealed class KijinSeijaWGCZ : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } public override Interaction Precondition() { //IL_003a: Unknown result type (might be due to invalid IL or missing references) //IL_0040: Expected O, but got Unknown List list = ((Card)this).Battle.ExileZone.Where((Card card) => (object)card != this).ToList(); if (!CollectionsExtensions.Empty((IReadOnlyCollection)list)) { return (Interaction)new SelectCardInteraction(1, ((Card)this).Value1, (IEnumerable)list, (SelectedCardHandling)0); } return null; } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) if (precondition == null) { yield break; } SelectCardInteraction selectCardInteraction = (SelectCardInteraction)precondition; Card card = ((selectCardInteraction != null) ? selectCardInteraction.SelectedCards[0] : null); if (card == null) { yield break; } foreach (Card selectedCard in selectCardInteraction.SelectedCards) { _ = selectedCard; yield return (BattleAction)new PlayCardAction(card); yield return (BattleAction)new RemoveCardAction(card); } IReadOnlyList cards = selectCardInteraction.SelectedCards; int num = cards.Sum(delegate(Card val) { //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) ManaGroup cost = val.Config.Cost; return ((ManaGroup)(ref cost)).Amount; }); yield return ((Card)this).SacrificeAction(num); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaYaoShiDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 4; defaultCardConfig.UpgradedValue1 = 6; defaultCardConfig.ToolPlayableTimes = 2; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "RockHardAura" }; defaultCardConfig.UpgradedRelativeEffects = new List { "RockHardAura" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaYaoShiDef))] public sealed class KijinSeijaYaoShi : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)((Card)this).Value1, (int?)null, (int?)null, (int?)null, 0f, true); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaYaTianGouDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 10; defaultCardConfig.UpgradedValue1 = 15; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "KijinSeijaFastAttack" }; defaultCardConfig.UpgradedRelativeEffects = new List { "KijinSeijaFastAttack" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaYaTianGouDef))] public sealed class KijinSeijaYaTianGou : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)((Card)this).Value1, (int?)null, (int?)null, (int?)null, 0f, true); yield return ((Card)this).BuffAction(2, 0, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaYinyangyuDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0041: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)4; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 7; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "Spirit", "Firepower" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaYinyangyuDef))] public sealed class KijinSeijaYinyangyu : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).BuffAction(1, 0, 0, 0, 0.2f); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaHybridDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Unknown result type (might be due to invalid IL or missing references) //IL_0052: 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_008d: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)1, (ManaColor)2 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Hybrid = 1; ((ManaGroup)(ref val)).HybridColor = 0; ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Mana = val; defaultCardConfig.ToolPlayableTimes = 6; defaultCardConfig.Keywords = (Keyword)65536; defaultCardConfig.UpgradedKeywords = (Keyword)65536; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaHybridDef))] public sealed class KijinSeijaHybrid : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)new GainTurnManaAction(((Card)this).Mana); yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)null, (int?)null, (int?)null, (int?)null, 0f, true); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaXCostDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0030: 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_0155: Unknown result type (might be due to invalid IL or missing references) //IL_0164: Unknown result type (might be due to invalid IL or missing references) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.IsXCost = true; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.ToolPlayableTimes = 2; defaultCardConfig.RelativeEffects = new List { "Graze", "Firepower", "Spirit", "TimeAuraSe", "MoodEpiphany", "Burst", "FrostArmor" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Graze", "Firepower", "Spirit", "TimeAuraSe", "MoodEpiphany", "Burst", "FrostArmor" }; defaultCardConfig.Value2 = 3; defaultCardConfig.UpgradedValue2 = 4; val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Mana = val; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaXCostDef))] public sealed class KijinSeijaXCost : KijinSeijaCard { private ManaGroup _colorlessMana; public ManaGroup ColorlessMana => _colorlessMana; public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } public override ManaGroup GetXCostFromPooled(ManaGroup pooledMana) { //IL_0003: Unknown result type (might be due to invalid IL or missing references) //IL_0027: Unknown result type (might be due to invalid IL or missing references) //IL_0028: Unknown result type (might be due to invalid IL or missing references) //IL_002b: Unknown result type (might be due to invalid IL or missing references) ManaGroup result = default(ManaGroup); ((ManaGroup)(ref result)).Colorless = ((ManaGroup)(ref pooledMana)).Colorless; ((ManaGroup)(ref result)).Philosophy = ((ManaGroup)(ref pooledMana)).Philosophy; return result; } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) int times1 = ((Card)this).SynergyAmount(consumingMana, (ManaColor)6, 1); yield return ((Card)this).BuffAction(times1, 0, 0, 0, 0.2f); yield return ((Card)this).BuffAction(times1 * ((Card)this).Value2, 0, 0, 0, 0.2f); yield return ((Card)this).BuffAction(times1 * ((Card)this).Value2, 0, 0, 0, 0.2f); yield return ((Card)this).BuffAction(times1 * ((Card)this).Value2, 0, 0, 0, 0.2f); yield return ((Card)this).BuffAction(times1 * ((Card)this).Value2, 0, 0, 0, 0.2f); if (times1 >= 4) { yield return ((Card)this).BuffAction(0, 0, 0, 0, 0.2f); yield return ((Card)this).BuffAction(1, 0, 0, 0, 0.2f); } } public KijinSeijaXCost() { //IL_0003: Unknown result type (might be due to invalid IL or missing references) //IL_0012: Unknown result type (might be due to invalid IL or missing references) //IL_0013: Unknown result type (might be due to invalid IL or missing references) ManaGroup colorlessMana = default(ManaGroup); ((ManaGroup)(ref colorlessMana)).Colorless = 1; _colorlessMana = colorlessMana; base..ctor(); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaAoeAttackDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0030: 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_0064: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.Colors = new List { (ManaColor)4 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; ((ManaGroup)(ref val)).Red = 1; ((ManaGroup)(ref val)).Colorless = 1; ((ManaGroup)(ref val)).Black = 1; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 4; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)2; defaultCardConfig.Damage = 2; defaultCardConfig.UpgradedDamage = 10; defaultCardConfig.ToolPlayableTimes = 9; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaAoeAttackDef))] public sealed class KijinSeijaAoeAttack : KijinSeijaCard { protected override int AdditionalDamage => (int)Math.Pow(2.0, 10 - ((Card)this).DeckCounter.Value); public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return ((Card)this).AttackAction(selector, "银月之精"); yield return (BattleAction)new DamageAction((Unit)(object)((Card)this).Battle.Player, (IEnumerable)((Card)this).Battle.EnemyGroup.Alives, DamageInfo.Reaction((float)((Card)this).AdditionalDamage, false), "Instant", (GunType)0); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaMultiAttackDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_0030: 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_0049: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.GunName = GunNameID.GetGunFromId(400); defaultCardConfig.Colors = new List { (ManaColor)4 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)1; defaultCardConfig.TargetType = (TargetType)1; defaultCardConfig.Damage = 1; defaultCardConfig.UpgradedDamage = 2; defaultCardConfig.ToolPlayableTimes = 8; defaultCardConfig.Value1 = 10; defaultCardConfig.UpgradedValue1 = 8; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaMultiAttackDef))] public sealed class KijinSeijaMultiAttack : KijinSeijaCard { private string LastType { get; set; } public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } private string GetGunName(int gunIndex) { string text = LastType + gunIndex; if (GunConfig.FromName(text) != null) { return text; } return "SingleJiandaoSe" + gunIndex; } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) ((Card)this).CardGuns = new Guns(GetGunName(2), ((Card)this).Value1 - 1, false); yield return ((Card)this).AttackAction(selector, GetGunName(2)); foreach (GunPair gunPair in ((Card)this).CardGuns.GunPairs) { yield return ((Card)this).AttackAction(selector, gunPair); } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaConditionalDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 4; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Value1 = 30; defaultCardConfig.UpgradedValue1 = 45; defaultCardConfig.Value2 = 24; defaultCardConfig.UpgradedValue2 = 32; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeEffects = new List { "Reflect", "Grace" }; defaultCardConfig.UpgradedRelativeEffects = new List { "Reflect", "Grace" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaConditionalDef))] public sealed class KijinSeijaConditional : KijinSeijaCard { public override bool Triggered { get { IEnumerable allAliveEnemies = ((Card)this).Battle.AllAliveEnemies; foreach (EnemyUnit item in allAliveEnemies) { if (item.Intentions.Any(delegate(Intention i) { if (!(i is AttackIntention)) { SpellCardIntention val = (SpellCardIntention)(object)((i is SpellCardIntention) ? i : null); if (val == null || !val.Damage.HasValue) { return false; } } return true; })) { return true; } } return false; } } public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)((Card)this).Value1, (int?)0, (int?)0, (int?)0, 0.2f, true); if (((Card)this).PlayInTriggered) { yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)((Card)this).Value2, (int?)0, (int?)0, (int?)0, 0.2f, true); } } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaCardGenerationDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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_0038: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Colorless = 2; defaultCardConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; defaultCardConfig.UpgradedCost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.ToolPlayableTimes = 3; defaultCardConfig.Keywords = (Keyword)65536; defaultCardConfig.UpgradedKeywords = (Keyword)65536; defaultCardConfig.Illustrator = ""; defaultCardConfig.RelativeCards = new List { "KijinSeijaUnplayable" }; defaultCardConfig.UpgradedRelativeCards = new List { "KijinSeijaUnplayable" }; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaCardGenerationDef))] public sealed class KijinSeijaCardGeneration : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) yield return (BattleAction)new AddCardsToHandAction((IEnumerable)Library.CreateCards(1, false), (AddCardsType)0, false); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } public sealed class KijinSeijaDiscoverDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) //IL_0092: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)6 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; ((ManaGroup)(ref val)).Colorless = 1; defaultCardConfig.Cost = val; defaultCardConfig.Rarity = (Rarity)1; defaultCardConfig.Type = (CardType)3; defaultCardConfig.TargetType = (TargetType)4; defaultCardConfig.Value1 = 4; defaultCardConfig.UpgradedValue1 = 7; defaultCardConfig.ToolPlayableTimes = 4; defaultCardConfig.Value2 = 1; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; defaultCardConfig.Mana = val; defaultCardConfig.Keywords = (Keyword)196608; defaultCardConfig.UpgradedKeywords = (Keyword)327680; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaDiscoverDef))] public sealed class KijinSeijaDiscover : KijinSeijaCard { public override void Initialize() { //IL_004a: 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_009b: Invalid comparison between Unknown and I4 //IL_006a: 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) ((Card)this).Initialize(); ((Card)this).Config = CardConfig.FromId(((GameEntity)this).Id); if (((Card)this).Config == null) { throw new InvalidDataException("Cannot find card config for <" + ((GameEntity)this).Id + ">"); } ((Card)this).Keywords = ((Card)this).Config.Keywords; if (!((Card)this).Config.IsXCost) { ((Card)this).BaseCost = ((Card)this).ConfigCost; ((Card)this).TurnCostDelta = ManaGroup.Empty; } ((Card)this).DeckCounter = ((Card)this).ToolPlayableTimes; if ((int)((Card)this).CardType == 5) { ((Card)this).Loyalty = ((Card)this).ConfigLoyalty; } if (((Card)this).PlentifulMana.HasValue) { ((Card)this).IsPlentiful = true; } } public override IEnumerable AfterUseAction() { Card deckCardByInstanceId = ((Card)this).Battle.GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if ((((Card)this).DeckCounter = ((Card)this).DeckCounter - 1) == 0) { if (deckCardByInstanceId != null) { ((Card)this).Battle.GameRun.RemoveDeckCard(deckCardByInstanceId, false); } yield return (BattleAction)new RemoveCardAction((Card)(object)this); yield break; } if (deckCardByInstanceId != null) { deckCardByInstanceId.DeckCounter = ((Card)this).DeckCounter; } foreach (BattleAction item in <>n__0()) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) Card[] array = ((Card)this).Battle.RollCardsWithoutManaLimit(new CardWeightTable(RarityWeightTable.BattleCard, OwnerWeightTable.Valid, CardTypeWeightTable.CanBeLoot, false), ((Card)this).Value1, (Predicate)((CardConfig config) => config.Id != ((GameEntity)this).Id && ((Enum)config.Keywords).HasFlag((Enum)(object)(Keyword)256))); MiniSelectCardInteraction interaction = new MiniSelectCardInteraction((IEnumerable)array, false, false, false) { Source = (GameEntity)(object)this }; yield return (BattleAction)new InteractionAction((Interaction)(object)interaction, false); Card selectedCard = interaction.SelectedCard; selectedCard.SetTurnCost(((Card)this).Mana); selectedCard.IsEthereal = true; selectedCard.IsExile = true; yield return (BattleAction)new AddCardsToHandAction((Card[])(object)new Card[1] { selectedCard }); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__0() { return ((Card)this).AfterUseAction(); } } } namespace KijinSeijaMod.Cards.Template { public class KijinSeijaCard : Card { protected virtual int BaseValue3 { get; set; } = 0; protected virtual int BaseUpgradedValue3 { get; set; } = 0; public int Value3 { get { if (((Card)this).IsUpgraded) { return BaseUpgradedValue3; } return BaseValue3; } } } public static class CardIndexGenerator { private static readonly List offColors = BepinexPlugin.offColors; private static int? initial_offset = null; private static HashSet uniqueIds = new HashSet(); public const int milx1 = 10000000; public static HashSet UniqueIds { get { if (uniqueIds == null) { uniqueIds = new HashSet(); } return uniqueIds; } } public static int Initial_offset { get { if (!initial_offset.HasValue) { int num = 0; if (UniqueTracker.Instance.configIndexes.TryGetValue(typeof(CardConfig), out var value)) { num = value.Where((int i) => i >= 10000000).DefaultIfEmpty().Max() / 10000000; } num++; initial_offset = num * 10000000; } return initial_offset.Value; } } internal static void PromiseClearIndexSet() { EntityManager.AddPostLoadAction((Action)delegate { uniqueIds = null; }, (Assembly)null); } public static int GetUniqueIndex(CardConfig config) { //IL_0040: 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_005f: 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_0080: 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_00ec: Unknown result type (might be due to invalid IL or missing references) //IL_00f3: Unknown result type (might be due to invalid IL or missing references) //IL_00f4: Unknown result type (might be due to invalid IL or missing references) //IL_00f6: Expected I4, but got Unknown //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_00cd: Unknown result type (might be due to invalid IL or missing references) //IL_00d2: Unknown result type (might be due to invalid IL or missing references) int num = Initial_offset; num += (config.Colors.Any((ManaColor x) => offColors.Any((ManaColor y) => y == x)) ? 1000000 : 0); num += ((!((Enum)config.Keywords).HasFlag((Enum)(object)(Keyword)1)) ? ((config.Rarity + 1) * 100000) : 0); int num2 = ((config.Colors.Count > 1) ? 9 : ((int)config.Colors[0])); num += num2 * 10000; int num3; if (!config.IsXCost && !((Enum)config.Keywords).HasFlag((Enum)(object)(Keyword)32768)) { ManaGroup cost = config.Cost; if (((ManaGroup)(ref cost)).Total <= 9) { cost = config.Cost; num3 = ((ManaGroup)(ref cost)).Total; goto IL_00df; } } num3 = 9; goto IL_00df; IL_00df: int num4 = num3; num += num4 * 1000; num += config.Type * 100; if (UniqueTracker.Instance.configIndexes.TryGetValue(typeof(CardConfig), out var value)) { for (; value.Contains(num); num++) { } } return num; } } public abstract class KijinSeijaCardTemplate : CardTemplate { 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(KijinSeijaDefaultConfig.DefaultID((EntityDefinition)(object)this)); } public override CardImages LoadCardImages() { return KijinSeijaImageLoader.LoadCardImages((CardTemplate)(object)this); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)KijinSeijaLocalization.CardsBatchLoc.AddEntity((EntityDefinition)(object)this); } public CardConfig GetDefaultCardConfig() { return KijinSeijaDefaultConfig.DefaultCardConfig(); } } } namespace KijinSeijaMod.Cards.B { public sealed class KijinSeija99OSDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)4 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 1; ((ManaGroup)(ref cost)).White = 1; ((ManaGroup)(ref cost)).Red = 1; ((ManaGroup)(ref cost)).Black = 1; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)5; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Value1 = 3; defaultCardConfig.UpgradedValue1 = 2; defaultCardConfig.Loyalty = 1; defaultCardConfig.UpgradedLoyalty = 4; defaultCardConfig.PassiveCost = 1; defaultCardConfig.UpgradedPassiveCost = 1; defaultCardConfig.UltimateCost = -9; defaultCardConfig.UpgradedUltimateCost = -9; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeija99OSDef))] public sealed class KijinSeija99OS : KijinSeijaCard { public override IEnumerable OnTurnStartedInHand() { return ((Card)this).GetPassiveActions(); } public override IEnumerable GetPassiveActions() { if (!((Card)this).Summoned || ((Card)this).Battle.BattleShouldEnd) { yield break; } <>n__0(); ((Card)this).Loyalty = ((Card)this).Loyalty + ((Card)this).PassiveCost; Unit player = (Unit)(object)((Card)this).Battle.Player; for (int i = 0; i < ((Card)this).Battle.FriendPassiveTimes; i++) { if (((Card)this).Battle.BattleShouldEnd) { break; } yield return (BattleAction)(object)new ApplyStatusEffectAction(player, (int?)(((Card)this).Battle.DrawZone.Count / 5), (int?)0, (int?)0, (int?)0, 0.2f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction(player, (int?)(((Card)this).Battle.DiscardZone.Count / 5), (int?)0, (int?)0, (int?)0, 0.2f, true); } } protected override IEnumerable SummonActions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) foreach (BattleAction item in <>n__1(selector, consumingMana, precondition)) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) ((Card)this).Loyalty = ((Card)this).Loyalty + ((Card)this).UltimateCost; ((Card)this).UltimateUsed = true; for (int Value12 = 0; Value12 < 12; Value12++) { List list1 = ((GameEntity)this).GameRun.BaseDeck.Where((Card val) => val.CanUpgradeAndPositive).ToList(); if (list1.Count <= 0) { continue; } Card card3 = CollectionsExtensions.Sample((IEnumerable)list1, ((GameEntity)this).GameRun.GameRunEventRng); ((GameEntity)this).GameRun.UpgradeDeckCard(card3, false); foreach (Card card4 in ((Card)this).Battle.EnumerateAllCards()) { if (card4.InstanceId == card3.InstanceId) { if (card4.CanUpgrade) { yield return (BattleAction)new UpgradeCardAction(card4); } break; } } } List list2 = ((GameEntity)this).GameRun.BaseDeck.Where((Card val) => (int)val.CardType == 5).ToList(); if (list2.Count > 0) { ((GameEntity)this).GameRun.RemoveDeckCards(((GameEntity)this).GameRun.BaseDeckWithoutUnremovable.Where((Card c) => (int)c.CardType == 5), true); } yield return (BattleAction)(object)((Card)this).SkillAnime; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Card)this).NotifyActivating(); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__1(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) return ((Card)this).SummonActions(selector, consumingMana, precondition); } } public sealed class KijinSeija99SDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)3 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 1; ((ManaGroup)(ref cost)).White = 1; ((ManaGroup)(ref cost)).Red = 1; ((ManaGroup)(ref cost)).Black = 1; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)5; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Value1 = 3; defaultCardConfig.UpgradedValue1 = 2; defaultCardConfig.Loyalty = 1; defaultCardConfig.UpgradedLoyalty = 4; defaultCardConfig.PassiveCost = 1; defaultCardConfig.UpgradedPassiveCost = 1; defaultCardConfig.UltimateCost = -9; defaultCardConfig.UpgradedUltimateCost = -9; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeija99SDef))] public sealed class KijinSeija99S : KijinSeijaCard { public override IEnumerable OnTurnStartedInHand() { return ((Card)this).GetPassiveActions(); } public override IEnumerable GetPassiveActions() { if (!((Card)this).Summoned || ((Card)this).Battle.BattleShouldEnd) { yield break; } <>n__0(); ((Card)this).Loyalty = ((Card)this).Loyalty + ((Card)this).PassiveCost; Unit player = (Unit)(object)((Card)this).Battle.Player; for (int i = 0; i < ((Card)this).Battle.FriendPassiveTimes; i++) { if (((Card)this).Battle.BattleShouldEnd) { break; } if (player.Hp > player.MaxHp / 2) { yield return (BattleAction)(object)new ApplyStatusEffectAction(player, (int?)1, (int?)0, (int?)0, (int?)0, 0.2f, true); } else { yield return (BattleAction)(object)new ApplyStatusEffectAction(player, (int?)1, (int?)0, (int?)0, (int?)0, 0.2f, true); } } } protected override IEnumerable SummonActions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) foreach (BattleAction item in <>n__1(selector, consumingMana, precondition)) { yield return item; } } public override Interaction Precondition() { //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Expected O, but got Unknown if (((Card)this).UltimateUsed) { List list = ((GameEntity)this).GameRun.BaseDeckWithoutUnremovable.ToList(); Card deckCardByInstanceId = ((GameEntity)this).GameRun.GetDeckCardByInstanceId(((Card)this).InstanceId); if (deckCardByInstanceId != null) { list.Remove(deckCardByInstanceId); } if (list.Count <= 0) { return null; } return (Interaction)new SelectCardInteraction(0, 10, (IEnumerable)list, (SelectedCardHandling)0); } return null; } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) ((Card)this).Loyalty = ((Card)this).Loyalty + ((Card)this).UltimateCost; ((Card)this).UltimateUsed = true; SelectCardInteraction selectCardInteraction = (SelectCardInteraction)precondition; Card card1 = ((selectCardInteraction != null) ? selectCardInteraction.SelectedCards.FirstOrDefault() : null); if (card1 != null) { ((GameEntity)this).GameRun.RemoveDeckCard(card1, true); } List list2 = ((GameEntity)this).GameRun.BaseDeck.Where((Card val) => (int)val.CardType == 5).ToList(); if (list2.Count > 0) { ((GameEntity)this).GameRun.RemoveDeckCards(((GameEntity)this).GameRun.BaseDeckWithoutUnremovable.Where((Card c) => (int)c.CardType == 5), true); } yield return (BattleAction)(object)((Card)this).SkillAnime; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Card)this).NotifyActivating(); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__1(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) return ((Card)this).SummonActions(selector, consumingMana, precondition); } } public sealed class KijinSeijaTeammateDef : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: 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) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)4 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 2; ((ManaGroup)(ref cost)).Red = 1; ((ManaGroup)(ref cost)).Black = 1; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)5; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Loyalty = 4; defaultCardConfig.UpgradedLoyalty = 7; defaultCardConfig.PassiveCost = 1; defaultCardConfig.UpgradedPassiveCost = 1; defaultCardConfig.ActiveCost = -9; defaultCardConfig.UpgradedActiveCost = -9; defaultCardConfig.UltimateCost = -9; defaultCardConfig.UpgradedUltimateCost = -9; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaTeammateDef))] public sealed class KijinSeijaTeammate : KijinSeijaCard { public override IEnumerable OnTurnStartedInHand() { return ((Card)this).GetPassiveActions(); } public override IEnumerable GetPassiveActions() { if (!((Card)this).Summoned || ((Card)this).Battle.BattleShouldEnd) { yield break; } <>n__0(); ((Card)this).Loyalty = ((Card)this).Loyalty + ((Card)this).PassiveCost; Unit player = (Unit)(object)((Card)this).Battle.Player; for (int i = 0; i < ((Card)this).Battle.FriendPassiveTimes; i++) { if (((Card)this).Battle.BattleShouldEnd) { break; } yield return (BattleAction)(object)new ApplyStatusEffectAction(player, (int?)(player.MaxHp / 5), (int?)null, (int?)null, (int?)null, 0f, true); } } protected override IEnumerable SummonActions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) foreach (BattleAction item in <>n__1(selector, consumingMana, precondition)) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) foreach (EnemyUnit enemy in ((Card)this).Battle.AllAliveEnemies) { if (precondition == null || (int)((MiniSelectCardInteraction)precondition).SelectedCard.FriendToken == 1) { ((Card)this).Loyalty = ((Card)this).Loyalty + ((Card)this).ActiveCost; yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)enemy, (int?)1, (int?)1, (int?)0, (int?)0, 0f, true); yield return (BattleAction)(object)((Card)this).SkillAnime; } else { ((Card)this).Loyalty = ((Card)this).Loyalty + ((Card)this).UltimateCost; ((Card)this).UltimateUsed = true; yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)1, (int?)1, (int?)0, (int?)0, 0f, true); yield return (BattleAction)(object)((Card)this).SkillAnime; } } } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Card)this).NotifyActivating(); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__1(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) return ((Card)this).SummonActions(selector, consumingMana, precondition); } } public sealed class KijinSeijaTeammate2Def : KijinSeijaCardTemplate { public override CardConfig MakeConfig() { //IL_001f: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) CardConfig defaultCardConfig = GetDefaultCardConfig(); defaultCardConfig.Colors = new List { (ManaColor)2 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Colorless = 2; ((ManaGroup)(ref cost)).Blue = 1; defaultCardConfig.Cost = cost; defaultCardConfig.Rarity = (Rarity)2; defaultCardConfig.Type = (CardType)5; defaultCardConfig.TargetType = (TargetType)0; defaultCardConfig.Value1 = 3; defaultCardConfig.UpgradedValue1 = 2; defaultCardConfig.Value2 = 7; defaultCardConfig.UpgradedValue2 = 5; defaultCardConfig.Loyalty = 4; defaultCardConfig.UpgradedLoyalty = 4; defaultCardConfig.PassiveCost = 1; defaultCardConfig.UpgradedPassiveCost = 2; defaultCardConfig.UltimateCost = -8; defaultCardConfig.UpgradedUltimateCost = -8; defaultCardConfig.Illustrator = ""; defaultCardConfig.Index = CardIndexGenerator.GetUniqueIndex(defaultCardConfig); return defaultCardConfig; } } [EntityLogic(typeof(KijinSeijaTeammate2Def))] public sealed class KijinSeijaTeammate2 : KijinSeijaCard { public override IEnumerable OnTurnStartedInHand() { return ((Card)this).GetPassiveActions(); } public override IEnumerable GetPassiveActions() { if (!((Card)this).Summoned || ((Card)this).Battle.BattleShouldEnd) { yield break; } <>n__0(); ((Card)this).Loyalty = ((Card)this).Loyalty + ((Card)this).PassiveCost; Unit player = (Unit)(object)((Card)this).Battle.Player; for (int i = 0; i < ((Card)this).Battle.FriendPassiveTimes; i++) { if (((Card)this).Battle.BattleShouldEnd) { break; } yield return (BattleAction)new HealAction((Unit)(object)((Card)this).Battle.Player, (Unit)(object)((Card)this).Battle.Player, 3, (HealType)0, 0.2f); yield return (BattleAction)(object)new ApplyStatusEffectAction(player, (int?)((Card)this).Value1, (int?)null, (int?)null, (int?)null, 0f, true); } } protected override IEnumerable SummonActions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) foreach (BattleAction item in <>n__1(selector, consumingMana, precondition)) { yield return item; } } protected override IEnumerable Actions(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0016: 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) ((Card)this).Loyalty = ((Card)this).Loyalty + ((Card)this).UltimateCost; ((Card)this).UltimateUsed = true; yield return (BattleAction)(object)new ApplyStatusEffectAction((Unit)(object)((Card)this).Battle.Player, (int?)1, (int?)0, (int?)0, (int?)0, 0f, true); yield return (BattleAction)(object)((Card)this).SkillAnime; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Card)this).NotifyActivating(); } [CompilerGenerated] [DebuggerHidden] private IEnumerable <>n__1(UnitSelector selector, ManaGroup consumingMana, Interaction precondition) { //IL_0002: Unknown result type (might be due to invalid IL or missing references) return ((Card)this).SummonActions(selector, consumingMana, precondition); } } } namespace KijinSeijaMod.BattleActions { public class BuffAttackEventArgs : GameEventArgs { public Card Card { get; internal set; } public int Amount { get; internal set; } protected override string GetBaseDebugString() { return "BuffAttack: " + Amount; } } } namespace KijinSeijaMod.Patches { public static class CustomEventTextManager { public static Dictionary> MasterTextDict = new Dictionary>(); public static bool IsLoaded = false; public static void LoadAllCustomYamls() { //IL_0054: Unknown result type (might be due to invalid IL or missing references) if (IsLoaded) { return; } IsLoaded = true; string directoryName = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); string path = Path.Combine(directoryName, "DirResources"); if (!Directory.Exists(path)) { return; } string[] files = Directory.GetFiles(path, "KijinSeija_*.yaml", SearchOption.AllDirectories); IDeserializer val = new DeserializerBuilder().IgnoreUnmatchedProperties().Build(); string[] array = files; foreach (string text in array) { try { string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(text); string[] array2 = fileNameWithoutExtension.Split(new char[1] { '_' }); string text2 = ((array2.Length > 1) ? array2[1] : "Unknown"); string name = new DirectoryInfo(Path.GetDirectoryName(text)).Name; string text3 = "ZhHans"; switch (name) { case "en": text3 = "En"; break; case "ja": text3 = "Ja"; break; case "ko": text3 = "Ko"; break; case "zh-Hans": text3 = "ZhHans"; break; default: if (array2.Length > 2) { text3 = array2[2]; } break; } if (!MasterTextDict.ContainsKey(text3)) { MasterTextDict[text3] = new Dictionary(); } string text4 = File.ReadAllText(text); Dictionary dictionary = val.Deserialize>(text4); if (dictionary == null) { continue; } Debug.Log((object)$"[KijinSeija_XRay_Load] 成功加载文件: {fileNameWithoutExtension}, 识别文件夹为: {name}, 划入语言包: {text3}, 共读取到词条: {dictionary.Count} 个"); foreach (KeyValuePair item in dictionary) { string text5 = item.Key.Replace("\ufeff", "").Trim(); switch (text5) { default: if (!(text5 == "NPC")) { MasterTextDict[text3][text5] = item.Value; break; } goto case "Title"; case "Title": case "HostName": case "TargetTitle": case "TargetNPC": MasterTextDict[text3][text5 + "_" + text2] = item.Value; break; } } } catch (Exception ex) { Debug.LogError((object)("[KijinSeija_XRay_Error] 文件读取失败: " + text + " 报错: " + ex.Message)); } } } public static string DetectLanguageFromVanillaDict(IDictionary dict) { if (dict == null || dict.Count == 0) { return "ZhHans"; } int num = 0; int num2 = 0; foreach (string value in dict.Values) { if (!string.IsNullOrWhiteSpace(value)) { if (Regex.IsMatch(value, "[\\uac00-\\ud7a3]")) { return "Ko"; } if (Regex.IsMatch(value, "[\\u3040-\\u30ff]")) { return "Ja"; } if (Regex.IsMatch(value, "[\\u4e00-\\u9fa5]")) { num++; } else { num2++; } } } string text = ((num > 0 && num >= num2 / 5) ? "ZhHans" : "En"); Debug.Log((object)$"[KijinSeija_XRay_Detect] 语言嗅探 -> 中文条目数:{num}, 外文条目数:{num2} ===> 最终裁定当前游戏语言为: {text}"); return text; } } [HarmonyPatch(typeof(DialogRunner), "LocalizeLine")] public class OverrideDialogLinePatch { private static readonly FieldInfo stringTableField = AccessTools.Field(typeof(DialogRunner), "_stringTable"); private static bool _hasDiagnosed = false; private static void Prefix(DialogRunner __instance, string lineId) { if (!SeijaRunTracker.IsSeijaRun) { return; } CustomEventTextManager.LoadAllCustomYamls(); string text = lineId.Replace("\ufeff", "").Replace("\r", "").Replace("\n", "") .Trim(); IDictionary dictionary = (IDictionary)stringTableField.GetValue(__instance); if (dictionary != null) { string text2 = CustomEventTextManager.DetectLanguageFromVanillaDict(dictionary); if (!_hasDiagnosed) { Debug.Log((object)$"[KijinSeija_XRay_Patch] 拦截到对话请求!系统需要语言: {text2}。 我们的字典里有这个语言包吗? => {CustomEventTextManager.MasterTextDict.ContainsKey(text2)}"); _hasDiagnosed = true; } if (CustomEventTextManager.MasterTextDict.ContainsKey(text2)) { if (CustomEventTextManager.MasterTextDict[text2].TryGetValue(text, out var value)) { dictionary[lineId] = value; } else { Debug.LogWarning((object)("[KijinSeija_XRay_Miss] 漏网之鱼:游戏请求翻译 Key [" + text + "],但在我们的 " + text2 + " 字典里找不到!")); } } } TextReplaceMonitor.EnsureRunning(); } } public class TextReplaceMonitor : MonoBehaviour { public static void EnsureRunning() { //IL_0026: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Expected O, but got Unknown if (SeijaRunTracker.IsSeijaRun) { TextReplaceMonitor textReplaceMonitor = Object.FindObjectOfType(); if ((Object)(object)textReplaceMonitor == (Object)null) { GameObject val = new GameObject("KijinSeija_TextMonitor_Immortal"); Object.DontDestroyOnLoad((Object)(object)val); textReplaceMonitor = val.AddComponent(); } } } [Obsolete] private void Update() { if (!SeijaRunTracker.IsSeijaRun || !CustomEventTextManager.IsLoaded) { return; } GameRunController currentRun = SeijaRunTracker.CurrentRun; if (currentRun == null) { return; } Station currentStation = currentRun.CurrentStation; AdventureStation val = (AdventureStation)(object)((currentStation is AdventureStation) ? currentStation : null); if (val == null) { return; } string id = val.Adventure.Id; string text = null; string value = null; string text2 = null; string value2 = null; foreach (Dictionary value5 in CustomEventTextManager.MasterTextDict.Values) { if (value5.TryGetValue("TargetTitle_" + id, out var value3)) { text = value3; value5.TryGetValue("Title_" + id, out value); } if (value5.TryGetValue("TargetNPC_" + id, out var value4)) { text2 = value4; if (!value5.TryGetValue("NPC_" + id, out value2)) { value5.TryGetValue("HostName_" + id, out value2); } } } string text3 = text?.Trim(); string text4 = text2?.Trim(); string text5 = value?.Trim(); string text6 = value2?.Trim(); TextMeshProUGUI[] array = Object.FindObjectsOfType(); foreach (TextMeshProUGUI val2 in array) { if (!string.IsNullOrWhiteSpace(((TMP_Text)val2).text)) { string text7 = Regex.Replace(((TMP_Text)val2).text, "<.*?>", string.Empty).Replace("\ufeff", "").Trim(); if (!string.IsNullOrEmpty(text3) && !string.IsNullOrEmpty(text5) && text7 == text3) { ((TMP_Text)val2).text = ((TMP_Text)val2).text.Replace(text3, text5); } if (!string.IsNullOrEmpty(text4) && !string.IsNullOrEmpty(text6) && text7 == text4) { ((TMP_Text)val2).text = ((TMP_Text)val2).text.Replace(text4, text6); } } } } } [HarmonyPatch] internal class CustomGameEventManager { public static GameEvent PreCustomEvent { get; set; } public static GameEvent PostCustomEvent { get; set; } [HarmonyPatch(typeof(GameRunController), "EnterBattle")] private static bool Prefix(GameRunController __instance) { PreCustomEvent = new GameEvent(); PostCustomEvent = new GameEvent(); return true; } } [HarmonyPatch(typeof(SpellConfig), "FromId")] public static class CustomSpellConfigPatch { internal static readonly string[] CustomSpellNames = new string[2] { "天下翻覆", "天壤梦弓的诏敕" }; internal static readonly Dictionary> SpellNameTranslations = new Dictionary> { ["天下翻覆"] = new Dictionary { { (Locale)1, "天下翻覆" }, { (Locale)0, "Decree of the Dream Bow of Heaven & Earth" }, { (Locale)3, "天下翻覆" }, { (Locale)10, "천양몽궁의 조칙" } }, ["天壤梦弓的诏敕"] = new Dictionary { { (Locale)1, "天壤梦弓的诏敕" }, { (Locale)0, "Overturning All Under Heaven" }, { (Locale)3, "天壤夢弓の詔勅" }, { (Locale)10, "천하번복" } } }; internal static string GetLocalizedSpellName(string key) { //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_001a: 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_002f: Invalid comparison between Unknown and I4 if (SpellNameTranslations.TryGetValue(key, out var value)) { Locale currentLocale = Localization.CurrentLocale; if (value.TryGetValue(currentLocale, out var value2)) { return value2; } if ((int)currentLocale == 2 && value.TryGetValue((Locale)1, out var value3)) { return value3; } if (value.TryGetValue((Locale)0, out var value4)) { return value4; } } return key; } [HarmonyPrefix] public static bool FromIdPrefix(string Id, ref SpellConfig __result) { //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0033: Expected O, but got Unknown string[] customSpellNames = CustomSpellNames; foreach (string text in customSpellNames) { if (Id == text) { SpellConfig val = (SpellConfig)FormatterServices.GetUninitializedObject(typeof(SpellConfig)); typeof(SpellConfig).GetProperty("Id", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic).SetValue(val, text); typeof(SpellConfig).GetProperty("Resource", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic).SetValue(val, null); __result = val; return false; } } return true; } } [HarmonyPatch(typeof(SpellPanel), "SetSpellNameByKey")] public static class CustomSpellNameDisplayPatch { [HarmonyPrefix] public static bool Prefix(SpellPanel __instance, string configKey, string spellKey) { string[] customSpellNames = CustomSpellConfigPatch.CustomSpellNames; foreach (string text in customSpellNames) { if (!(configKey == text)) { continue; } FieldInfo field = typeof(SpellPanel).GetField("spellName", BindingFlags.Instance | BindingFlags.NonPublic); if (field != null) { object? value = field.GetValue(__instance); TextMeshProUGUI val = (TextMeshProUGUI)((value is TextMeshProUGUI) ? value : null); if ((Object)(object)val != (Object)null) { string localizedSpellName = CustomSpellConfigPatch.GetLocalizedSpellName(text); ((TMP_Text)val).text = Localization.LocalizeFormat("UI.SpellUntitled", new object[1] { localizedSpellName }); } } return false; } return true; } } [HarmonyPatch(typeof(Stage), "CreateStation")] public class ReplaceFinalBossPatch { private static void Postfix(Stage __instance, MapNode node, ref Station __result) { //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Invalid comparison between Unknown and I4 if (__instance.Level != 4 || !(((GameEntity)((GameEntity)__instance).GameRun.Player).Id == BepinexPlugin.modUniqueID) || (int)node.StationType != 10) { return; } Station obj = __result; BattleStation val = (BattleStation)(object)((obj is BattleStation) ? obj : null); if (val != null) { EnemyGroupEntry val2 = Library.TryGetEnemyGroupEntry("KijinSeijaSagume"); if (val2 != null) { val.EnemyGroupEntry = val2; } } } } public static class SeijaRunTracker { public static bool IsSeijaRun; public static GameRunController CurrentRun; } [HarmonyPatch(typeof(GameRunController), "Create")] public class TrackerCreatePatch { private static void Postfix(GameRunController __result) { object obj; if (__result == null) { obj = null; } else { PlayerUnit player = __result.Player; obj = ((player != null) ? ((GameEntity)player).Id : null); } SeijaRunTracker.IsSeijaRun = (string?)obj == BepinexPlugin.modUniqueID; SeijaRunTracker.CurrentRun = __result; } } [HarmonyPatch(typeof(GameRunController), "Restore")] public class TrackerRestorePatch { private static void Postfix(GameRunController __result) { object obj; if (__result == null) { obj = null; } else { PlayerUnit player = __result.Player; obj = ((player != null) ? ((GameEntity)player).Id : null); } SeijaRunTracker.IsSeijaRun = (string?)obj == BepinexPlugin.modUniqueID; SeijaRunTracker.CurrentRun = __result; } } [HarmonyPatch(typeof(UnitModelConfig), "FromName")] public class EraseEirinPatch { private static void Prefix(ref string Name) { if (Name == "Eirin" && SeijaRunTracker.IsSeijaRun) { Name = "ThisModelNameDoesNotExist_Null"; } } } public class ShinmyoumaruDebutHandler : MonoBehaviour { public GameRunController gameRun; private GameObject canvasObj; private void Update() { //IL_006d: Unknown result type (might be due to invalid IL or missing references) //IL_0077: Expected O, but got Unknown //IL_00c8: 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_00df: Expected O, but got Unknown //IL_014b: 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_0179: 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_01a2: Unknown result type (might be due to invalid IL or missing references) if (gameRun == null) { Object.Destroy((Object)(object)((Component)this).gameObject); return; } Station currentStation = gameRun.CurrentStation; AdventureStation val = (AdventureStation)(object)((currentStation is AdventureStation) ? currentStation : null); bool flag = val != null && val.Adventure.Id == "Debut"; if (flag && (Object)(object)canvasObj == (Object)null) { canvasObj = new GameObject("Shinmyoumaru_TopCanvas"); Object.DontDestroyOnLoad((Object)(object)canvasObj); Canvas val2 = canvasObj.AddComponent(); val2.renderMode = (RenderMode)0; val2.sortingOrder = 32767; CanvasScaler val3 = canvasObj.AddComponent(); val3.uiScaleMode = (ScaleMode)1; val3.referenceResolution = new Vector2(1920f, 1080f); GameObject val4 = new GameObject("Shinmyoumaru_Image"); val4.transform.SetParent(canvasObj.transform, false); Image val5 = val4.AddComponent(); val5.sprite = ResourceLoader.LoadSprite("KijinSeijaShinmyoumaru.png", (IResourceSource)(object)BepinexPlugin.directorySource, (Rect?)null, 84, (Vector2?)null); ((Graphic)val5).SetNativeSize(); RectTransform component = val4.GetComponent(); component.anchorMin = new Vector2(0.6f, 0.5f); component.anchorMax = new Vector2(0.6f, 0.5f); component.pivot = new Vector2(0.5f, 0.5f); component.anchoredPosition = Vector2.zero; ((Transform)component).localScale = new Vector3(-1f, 1f, 1f); } else if (!flag && (Object)(object)canvasObj != (Object)null) { Object.Destroy((Object)(object)canvasObj); Object.Destroy((Object)(object)((Component)this).gameObject); } else if (gameRun.CurrentStage != null && gameRun.CurrentStage.Level > 1) { Object.Destroy((Object)(object)((Component)this).gameObject); } } } } namespace System.Runtime.CompilerServices { [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] internal sealed class IgnoresAccessChecksToAttribute : Attribute { internal IgnoresAccessChecksToAttribute(string assemblyName) { } } internal static class IsExternalInit { } }