Decompiled source of YuyukoCharacterMod v0.0.10
YuyukoCharacterMod.dll
Decompiled a month ago
The result has been truncated due to the large size, download it to view full contents!
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using AddWatermark; using BepInEx; using BepInEx.Bootstrap; using BepInEx.Logging; using Cysharp.Threading.Tasks; using DG.Tweening; using HarmonyLib; using LBoL.Base; using LBoL.Base.Extensions; using LBoL.ConfigData; using LBoL.Core; using LBoL.Core.Battle; using LBoL.Core.Battle.BattleActions; using LBoL.Core.Battle.Interactions; using LBoL.Core.Cards; using LBoL.Core.Randoms; using LBoL.Core.StatusEffects; using LBoL.Core.Units; using LBoL.EntityLib.Cards; using LBoL.EntityLib.Cards.Neutral.Green; using LBoL.EntityLib.Cards.Neutral.NoColor; using LBoL.EntityLib.Exhibits; using LBoL.EntityLib.StatusEffects.Basic; using LBoL.EntityLib.StatusEffects.Cirno; using LBoL.EntityLib.StatusEffects.Enemy; using LBoL.EntityLib.StatusEffects.ExtraTurn; using LBoL.EntityLib.StatusEffects.Neutral.Black; using LBoL.EntityLib.StatusEffects.Others; using LBoL.Presentation; using LBoL.Presentation.UI; using LBoL.Presentation.UI.ExtraWidgets; using LBoL.Presentation.UI.Panels; using LBoLEntitySideloader; using LBoLEntitySideloader.Attributes; using LBoLEntitySideloader.Entities; using LBoLEntitySideloader.Resource; using LBoLEntitySideloader.Utils; using UnityEngine; using UnityEngine.Experimental.Rendering; using YuyukoCharacterMod.BattleActions; using YuyukoCharacterMod.Cards; using YuyukoCharacterMod.Cards.Template; using YuyukoCharacterMod.GunName; using YuyukoCharacterMod.ImageLoader; using YuyukoCharacterMod.Localization; using YuyukoCharacterMod.StatusEffects; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: IgnoresAccessChecksTo("LBoL.Base")] [assembly: IgnoresAccessChecksTo("LBoL.ConfigData")] [assembly: IgnoresAccessChecksTo("LBoL.Core")] [assembly: IgnoresAccessChecksTo("LBoL.EntityLib")] [assembly: IgnoresAccessChecksTo("LBoL.Presentation")] [assembly: IgnoresAccessChecksTo("Untitled.ConfigDataBuilder.Base")] [assembly: AssemblyCompany("YuyukoCharacterMod")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0+e23f6c0a8c2a3f651237e985cc0c253c9677a68e")] [assembly: AssemblyProduct("YuyukoCharacterMod")] [assembly: AssemblyTitle("YuyukoCharacterMod")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] namespace YuyukoCharacterMod { [BepInPlugin("rmrfmaxxc.lbol.YuyukoCharacterMod", "YuyukoCharacterMod", "0.0.10")] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInProcess("LBoL.exe")] public class BepinexPlugin : BaseUnityPlugin { public static string modUniqueID = "YuyukoCharacterMod"; public static string playerName = "Yuyuko"; public static bool useInGameModel = true; public static string modelName = "Yuyuko"; public static bool modelIsFlipped = true; public static List<ManaColor> offColors = new List<ManaColor> { (ManaColor)2, (ManaColor)4 }; private static readonly Harmony harmony = PInfo.harmony; internal static ManualLogSource log; internal static TemplateSequenceTable sequenceTable = new TemplateSequenceTable(0); internal static IResourceSource embeddedSource = (IResourceSource)new EmbeddedSource(Assembly.GetExecutingAssembly()); internal static DirectorySource directorySource = new DirectorySource("rmrfmaxxc.lbol.YuyukoCharacterMod", ""); private void Awake() { log = ((BaseUnityPlugin)this).Logger; Object.DontDestroyOnLoad((Object)(object)((Component)this).gameObject); ((Object)((Component)this).gameObject).hideFlags = (HideFlags)61; CardIndexGenerator.PromiseClearIndexSet(); EntityManager.RegisterSelf(); harmony.PatchAll(); YuyukoCharacterLocalization.DiscoverAndLoad(); if (Chainloader.PluginInfos.ContainsKey("neo.lbol.tools.watermark")) { WatermarkWrapper.ActivateWatermark(); } } private void OnDestroy() { if (harmony != null) { harmony.UnpatchSelf(); } } } public static class PInfo { public const string GUID = "rmrfmaxxc.lbol.YuyukoCharacterMod"; public const string Name = "YuyukoCharacterMod"; public const string version = "0.0.10"; public static readonly Harmony harmony = new Harmony("rmrfmaxxc.lbol.YuyukoCharacterMod"); } public class YuyukoCharacterLoadouts { public static string UltimateSkillA = "YuyukoCharacterUltA"; public static string UltimateSkillB = "YuyukoCharacterUltB"; public static string ExhibitA = "YuyukoCharacterExhibitA"; public static string ExhibitB = "YuyukoCharacterExhibitB"; public static List<string> DeckA = new List<string> { "Shoot", "Shoot", "Boundary", "Boundary", "YuyukoCharacterAttackW", "YuyukoCharacterAttackG", "YuyukoCharacterBlockB", "YuyukoCharacterBlockB", "YuyukoCharacterBlockB", "YuyukoCharacterDeceasedSpirit" }; public static List<string> DeckB = new List<string> { "Shoot", "Shoot", "Boundary", "Boundary", "YuyukoCharacterAttackW", "YuyukoCharacterAttackG", "YuyukoCharacterBlockB", "YuyukoCharacterBlockB", "YuyukoCharacterBlockB", "YuyukoCharacterButterflyDelusion", "YuyukoCharacterSwallowtailButterfly" }; public static PlayerUnitConfig playerUnitConfig; static YuyukoCharacterLoadouts() { //IL_0154: Unknown result type (might be due to invalid IL or missing references) //IL_0175: Unknown result type (might be due to invalid IL or missing references) //IL_0199: Unknown result type (might be due to invalid IL or missing references) //IL_01a3: Expected O, but got Unknown string modUniqueID = BepinexPlugin.modUniqueID; int? num = 0; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).White = 1; ((ManaGroup)(ref val)).Black = 2; ((ManaGroup)(ref val)).Green = 1; playerUnitConfig = new PlayerUnitConfig(modUniqueID, 8, 0, num, "", "#aabccd", true, 78, val, 40, 0, UltimateSkillA, UltimateSkillB, ExhibitA, ExhibitB, (IReadOnlyList<string>)DeckA, (IReadOnlyList<string>)DeckB, 3, 2); } } public sealed class YuyukoCharacterPlayerDef : PlayerUnitTemplate { [EntityLogic(typeof(YuyukoCharacterPlayerDef))] public sealed class YuyukoCharacterMod : PlayerUnit { public GameEvent<MillEventArgs> Milling { get; } = new GameEvent<MillEventArgs>(); public GameEvent<MillEventArgs> Milled { get; } = new GameEvent<MillEventArgs>(); public GameEvent<ReflowerConsumeEventArgs> Reflowering { get; } = new GameEvent<ReflowerConsumeEventArgs>(); public GameEvent<ReflowerConsumeEventArgs> Reflowered { get; } = new GameEvent<ReflowerConsumeEventArgs>(); protected override void OnEnterBattle(BattleController battle) { ((Unit)this).OnEnterBattle(battle); battle.ActionViewer.Register<MillCardAction>((BattleActionViewer<MillCardAction>)ViewMill, (Predicate<MillCardAction>)null); ((Unit)this).ReactBattleEvent<CardUsingEventArgs>(((Unit)this).Battle.CardUsed, (Func<CardUsingEventArgs, IEnumerable<BattleAction>>)OnCardUsed); } private IEnumerator ViewMill(MillCardAction action) { CardUi ui = UiManager.GetPanel<PlayBoard>().CardUi; Card card = ((EventBattleAction<MillEventArgs>)action).Args.CardMilled; if ((int)action.TransitionType == 1) { Sequence s = DOTween.Sequence(); HandCard cardWidget2 = ui.CreateHandWidget(card); Transform transform = ((Component)cardWidget2).transform; transform.position = ((Component)ui.discardZoneButton).transform.position; transform.localScale = new Vector3(0.2f, 0.2f); TweenSettingsExtensions.Join(s, (Tween)(object)ShortcutExtensions.DOScale(transform, Vector3.one, 0.3f)); cardWidget2.IsDisappearing = false; cardWidget2.CardWidget.ShowManaHand = false; ui._specialReactingWidgets.Add(cardWidget2); cardWidget2.SpecialReacting = true; yield return (object)new WaitForSecondsRealtime(0.5f); } else if ((int)action.TransitionType == 2) { HandCard handCard3 = ((IEnumerable<HandCard>)ui._specialReactingWidgets).FirstOrDefault((Func<HandCard, bool>)((HandCard w) => w.Card == card)); if ((Object)(object)handCard3 != (Object)null) { ui._specialReactingWidgets.Remove(handCard3); yield return ui.MoveCardToDiscard(handCard3, (int)((BattleAction)action).Cause != 13); } else { Debug.Log((object)("[CardUi] Discarding '" + ((GameEntity)card).DebugName + "' special reacted: widget not found.")); } } } private IEnumerable<BattleAction> OnCardUsed(CardUsingEventArgs args) { if (!((Unit)this).Battle.BattleShouldEnd) { yield return (BattleAction)(object)new ApplyStatusEffectAction<YuyukoCharacterButterflySe>((Unit)(object)((Unit)this).Battle.Player, (int?)1, (int?)0, (int?)0, (int?)0, 0.2f, true); } } } public UniTask<Sprite>? LoadSpellPortraitAsync { get; private set; } public override IdContainer GetId() { //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Unknown result type (might be due to invalid IL or missing references) return IdContainer.op_Implicit(BepinexPlugin.modUniqueID); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)YuyukoCharacterLocalization.PlayerUnitBatchLoc.AddEntity((EntityDefinition)(object)this); } public override PlayerImages LoadPlayerImages() { return YuyukoCharacterImageLoader.LoadPlayerImages(BepinexPlugin.playerName); } public override PlayerUnitConfig MakeConfig() { return YuyukoCharacterLoadouts.playerUnitConfig; } } internal class WatermarkWrapper { [MethodImpl(MethodImplOptions.NoInlining)] internal static void ActivateWatermark() { API.ActivateWatermark(); } } } namespace YuyukoCharacterMod.YuyukoCharacterUlt { public sealed class YuyukoCharacterUltADef : YuyukoCharacterUltTemplate { public override UltimateSkillConfig MakeConfig() { UltimateSkillConfig defaulUltConfig = GetDefaulUltConfig(); defaulUltConfig.Damage = 12; defaulUltConfig.Value1 = 5; defaulUltConfig.Value2 = 3; defaulUltConfig.RelativeEffects = new List<string> { "YuyukoCharacterButterflySe", "Weak", "Vulnerable" }; return defaulUltConfig; } } [EntityLogic(typeof(YuyukoCharacterUltADef))] public sealed class YuyukoCharacterUltA : UltimateSkill { public YuyukoCharacterUltA() { ((UltimateSkill)this).TargetType = (TargetType)1; ((UltimateSkill)this).GunName = GunNameID.GetGunFromId(4001); } protected override IEnumerable<BattleAction> Actions(UnitSelector selector) { EnemyUnit enemy = selector.GetEnemy(((UltimateSkill)this).Battle); yield return (BattleAction)new DamageAction((Unit)(object)((UltimateSkill)this).Owner, (Unit)(object)enemy, ((UltimateSkill)this).Damage, ((UltimateSkill)this).GunName, (GunType)0); if (!((UltimateSkill)this).Battle.BattleShouldEnd) { yield return (BattleAction)(object)new ApplyStatusEffectAction<YuyukoCharacterButterflySe>((Unit)(object)((UltimateSkill)this).Battle.Player, (int?)((UltimateSkill)this).Value1, (int?)0, (int?)0, (int?)0, 0.2f, true); } if (((Unit)enemy).IsAlive) { yield return (BattleAction)(object)new ApplyStatusEffectAction<Weak>((Unit)(object)enemy, (int?)0, (int?)((UltimateSkill)this).Value2, (int?)0, (int?)0, 0.2f, true); yield return (BattleAction)(object)new ApplyStatusEffectAction<Vulnerable>((Unit)(object)enemy, (int?)0, (int?)((UltimateSkill)this).Value2, (int?)0, (int?)0, 0.2f, true); } } } public sealed class YuyukoCharacterUltBDef : YuyukoCharacterUltTemplate { public override UltimateSkillConfig MakeConfig() { UltimateSkillConfig defaulUltConfig = GetDefaulUltConfig(); defaulUltConfig.Damage = 20; defaulUltConfig.Value1 = 2; defaulUltConfig.Value2 = 5; defaulUltConfig.RelativeCards = new List<string> { "YuyukoCharacterGhostlyButterfly" }; return defaulUltConfig; } } [EntityLogic(typeof(YuyukoCharacterUltBDef))] public sealed class YuyukoCharacterUltB : UltimateSkill { public YuyukoCharacterUltB() { ((UltimateSkill)this).TargetType = (TargetType)1; ((UltimateSkill)this).GunName = GunNameID.GetGunFromId(4001); } protected override IEnumerable<BattleAction> Actions(UnitSelector selector) { EnemyUnit enemy = selector.GetEnemy(((UltimateSkill)this).Battle); yield return (BattleAction)new DamageAction((Unit)(object)((UltimateSkill)this).Owner, (Unit)(object)enemy, ((UltimateSkill)this).Damage, ((UltimateSkill)this).GunName, (GunType)0); if (!((UltimateSkill)this).Battle.BattleShouldEnd) { yield return (BattleAction)new AddCardsToDrawZoneAction((IEnumerable<Card>)Library.CreateCards<YuyukoCharacterGhostlyButterfly>(((UltimateSkill)this).Value1, false), (DrawZoneTarget)0, (AddCardsType)0); yield return (BattleAction)(object)new MillCardsAction(((UltimateSkill)this).Value2); } } } public class YuyukoCharacterUltTemplate : 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(YuyukoCharacterDefaultConfig.GetDefaultID((EntityDefinition)(object)this)); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)YuyukoCharacterLocalization.UltimateSkillsBatchLoc.AddEntity((EntityDefinition)(object)this); } public override Sprite LoadSprite() { return YuyukoCharacterImageLoader.LoadUltLoader((UltimateSkillTemplate)(object)this); } public override UltimateSkillConfig MakeConfig() { throw new NotImplementedException(); } public UltimateSkillConfig GetDefaulUltConfig() { return YuyukoCharacterDefaultConfig.GetDefaultUltConfig(); } } } namespace YuyukoCharacterMod.StatusEffects { public sealed class YuyukoCharacterAncientPlaceOfDeathSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuyukoCharacterAncientPlaceOfDeathSeDef))] public sealed class YuyukoCharacterAncientPlaceOfDeathSe : StatusEffect { private string GunName => GunNameID.GetGunFromId(502); protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<DieEventArgs>(((StatusEffect)this).Battle.EnemyDied, (EventSequencedReactor<DieEventArgs>)OnEnemyDied); } private IEnumerable<BattleAction> OnEnemyDied(DieEventArgs args) { if (!((StatusEffect)this).Battle.BattleShouldEnd && ((StatusEffect)this).Battle.EnemyGroup.Alives != null) { int damageToDeal = args.Unit.MaxHp * ((StatusEffect)this).Level; <>n__0(); yield return (BattleAction)new DamageAction(((StatusEffect)this).Owner, (IEnumerable<Unit>)((StatusEffect)this).Battle.EnemyGroup.Alives, DamageInfo.Reaction((float)damageToDeal, false), GunName, (GunType)0); } } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuyukoCharacterBriefInLifeSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuyukoCharacterBriefInLifeSeDef))] public sealed class YuyukoCharacterBriefInLifeSe : StatusEffect { } public sealed class YuyukoCharacterButterflySeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuyukoCharacterButterflySeDef))] public sealed class YuyukoCharacterButterflySe : StatusEffect { } public sealed class YuyukoCharacterDanceOfTheDeadButterfliesSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe", "YuyukoCharacterDeathSe" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterDanceOfTheDeadButterfliesSeDef))] public sealed class YuyukoCharacterDanceOfTheDeadButterfliesSe : StatusEffect { protected override void OnAdded(Unit unit) { if (((StatusEffect)this).Battle.Player is YuyukoCharacterPlayerDef.YuyukoCharacterMod yuyukoCharacterMod) { ((StatusEffect)this).ReactOwnerEvent<MillEventArgs>(yuyukoCharacterMod.Milled, (EventSequencedReactor<MillEventArgs>)OnMilled); } } private IEnumerable<BattleAction> OnMilled(MillEventArgs args) { <>n__0(); foreach (BattleAction item in ((StatusEffect)this).DebuffAction<YuyukoDeath>((IEnumerable<Unit>)((StatusEffect)this).Battle.AllAliveEnemies, ((StatusEffect)this).Level, 0, 0, 0, true, 0.2f)) { yield return item; } } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuyukoCharacterDeadButterflySeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterDeadButterflySeDef))] public sealed class YuyukoCharacterDeadButterflySe : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((StatusEffect)this).Owner.TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarted); } private IEnumerable<BattleAction> OnOwnerTurnStarted(UnitEventArgs args) { if (((StatusEffect)this).Battle == null || ((StatusEffect)this).Battle.BattleShouldEnd) { yield break; } <>n__0(); foreach (BattleAction item in ((StatusEffect)this).DebuffAction<YuyukoDeath>((IEnumerable<Unit>)((StatusEffect)this).Battle.AllAliveEnemies, ((StatusEffect)this).Level, 0, 0, 0, true, 0.2f)) { yield return item; } } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuyukoCharacterDeepRootedButterflySeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuyukoCharacterDeepRootedButterflySeDef))] public sealed class YuyukoCharacterDeepRootedButterflySe : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<DamageEventArgs>(((StatusEffect)this).Owner.DamageReceived, (EventSequencedReactor<DamageEventArgs>)OnDamageReceived); ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((StatusEffect)this).Owner.TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarted); } private IEnumerable<BattleAction> OnDamageReceived(DamageEventArgs args) { int num; if (args.Source != ((StatusEffect)this).Owner && args.Source.IsAlive) { DamageInfo damageInfo = args.DamageInfo; if ((int)((DamageInfo)(ref damageInfo)).DamageType == 2) { damageInfo = args.DamageInfo; num = ((((DamageInfo)(ref damageInfo)).Amount > 0f) ? 1 : 0); goto IL_0080; } } num = 0; goto IL_0080; IL_0080: if (num != 0) { <>n__0(); yield return ((StatusEffect)this).DebuffAction<YuyukoDeath>(args.Source, ((StatusEffect)this).Level, 0, 0, 0, true, 0.2f); } } private IEnumerable<BattleAction> OnOwnerTurnStarted(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 YuyukoCharacterEndlessCherryBlossomsSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuyukoCharacterEndlessCherryBlossomsSeDef))] public sealed class YuyukoCharacterEndlessCherryBlossomsSe : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((StatusEffect)this).Owner.TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarted); } private IEnumerable<BattleAction> OnOwnerTurnStarted(UnitEventArgs args) { for (int i = 0; i < ((StatusEffect)this).Level; i++) { Card card = (Card)(object)Library.CreateCard<YuyukoCharacterGhostlyButterfly>(); card.IsReplenish = true; yield return (BattleAction)new AddCardsToDrawZoneAction((IEnumerable<Card>)(object)new Card[1] { card }, (DrawZoneTarget)2, (AddCardsType)0); } } } public sealed class YuyukoCharacterEndlessEveningSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuyukoCharacterEndlessEveningSeDef))] public sealed class YuyukoCharacterEndlessEveningSe : StatusEffect { public int ReflowerCost { get; set; } = 0; } public sealed class YuyukoCharacterFeastOfLingeringRegretsSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterFeastOfLingeringRegretsSeDef))] public sealed class YuyukoCharacterFeastOfLingeringRegretsSe : StatusEffect { } public sealed class YuyukoCharacterFlowerButterflyWindMoonSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe" }; defaultStatusEffectConfig.HasCount = true; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterFlowerButterflyWindMoonSeDef))] public sealed class YuyukoCharacterFlowerButterflyWindMoonSe : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((StatusEffect)this).Owner.TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarted); ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((StatusEffect)this).Owner.TurnEnded, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnEnded); } private IEnumerable<BattleAction> OnOwnerTurnStarted(UnitEventArgs args) { if (((StatusEffect)this).Battle != null && !((StatusEffect)this).Battle.BattleShouldEnd) { <>n__0(); yield return (BattleAction)(object)new MillCardsAction(((StatusEffect)this).Level); } } private IEnumerable<BattleAction> OnOwnerTurnEnded(UnitEventArgs args) { if (!((StatusEffect)this).Battle.BattleShouldEnd) { ((StatusEffect)this).Count = 0; } yield break; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuyukoCharacterDeathSeDef : YuyukoCharacterStatusEffectTemplate { } [EntityLogic(typeof(YuyukoCharacterDeathSeDef))] public sealed class YuyukoCharacterDeathSe : StatusEffect { } public sealed class YuyukoCharacterMillKeywordSeDef : YuyukoCharacterStatusEffectTemplate { } [EntityLogic(typeof(YuyukoCharacterMillKeywordSeDef))] public sealed class YuyukoCharacterMillKeywordSe : StatusEffect { } public sealed class YuyukoCharacterReflowerKeywordSeDef : YuyukoCharacterStatusEffectTemplate { } [EntityLogic(typeof(YuyukoCharacterReflowerKeywordSeDef))] public sealed class YuyukoCharacterReflowerKeywordSe : StatusEffect { } public sealed class YuyukoCharacterLandOfDeathSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterLandOfDeathSeDef))] public sealed class YuyukoCharacterLandOfDeathSe : StatusEffect { protected override void OnAdded(Unit unit) { if (((StatusEffect)this).Battle.Player is YuyukoCharacterPlayerDef.YuyukoCharacterMod yuyukoCharacterMod) { ((StatusEffect)this).ReactOwnerEvent<MillEventArgs>(yuyukoCharacterMod.Milled, (EventSequencedReactor<MillEventArgs>)OnMilled); } } private IEnumerable<BattleAction> OnMilled(MillEventArgs args) { <>n__0(); yield return (BattleAction)new CastBlockShieldAction(((StatusEffect)this).Owner, ((StatusEffect)this).Level, 0, (BlockShieldType)1, true); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuyukoCharacterLightTrapOfPassingAwaySeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterButterflySe", "YuyukoCharacterReflowerKeywordSe" }; defaultStatusEffectConfig.HasCount = true; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterLightTrapOfPassingAwaySeDef))] public sealed class YuyukoCharacterLightTrapOfPassingAwaySe : StatusEffect { public ManaGroup ManaCost { get { //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) //IL_0016: Unknown result type (might be due to invalid IL or missing references) ManaGroup result = default(ManaGroup); ((ManaGroup)(ref result)).Any = 0; return result; } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<CardUsingEventArgs>(((StatusEffect)this).Battle.CardUsed, (EventSequencedReactor<CardUsingEventArgs>)OnCardUsed); ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((StatusEffect)this).Owner.TurnEnded, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnEnded); } private IEnumerable<BattleAction> OnCardUsed(CardUsingEventArgs args) { if (((StatusEffect)this).Count < ((StatusEffect)this).Level) { Card card2 = args.Card; YuyukoCharacterCard yCard = card2 as YuyukoCharacterCard; if (yCard?.IsReflower ?? false) { <>n__0(); List<Card> list = new List<Card>(); Card card = ((Card)yCard).CloneBattleCard(); card.SetTurnCost(ManaCost); card.IsExile = true; card.IsEthereal = true; list.Add(card); yield return (BattleAction)new AddCardsToHandAction((IEnumerable<Card>)list, (AddCardsType)0); ((StatusEffect)this).Count = ((StatusEffect)this).Count + 1; } } } private IEnumerable<BattleAction> OnOwnerTurnEnded(UnitEventArgs args) { if (!((StatusEffect)this).Battle.BattleShouldEnd) { ((StatusEffect)this).Count = 0; } yield break; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuyukoCharacterNetherworldMysterySpotSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterButterflySe" }; defaultStatusEffectConfig.HasCount = true; defaultStatusEffectConfig.CountStackType = (StackType)0; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterNetherworldMysterySpotSeDef))] public sealed class YuyukoCharacterNetherworldMysterySpotSe : StatusEffect { public ManaGroup Mana { get { //IL_0003: Unknown result type (might be due to invalid IL or missing references) //IL_0017: Unknown result type (might be due to invalid IL or missing references) //IL_0018: Unknown result type (might be due to invalid IL or missing references) //IL_001b: Unknown result type (might be due to invalid IL or missing references) ManaGroup result = default(ManaGroup); ((ManaGroup)(ref result)).Philosophy = ((StatusEffect)this).Level; return result; } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((StatusEffect)this).Owner.TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarted); } private IEnumerable<BattleAction> OnOwnerTurnStarted(UnitEventArgs args) { yield return (BattleAction)new GainManaAction(Mana); yield return (BattleAction)(object)new ApplyStatusEffectAction<YuyukoCharacterButterflySe>(((StatusEffect)this).Owner, (int?)((StatusEffect)this).Count, (int?)0, (int?)0, (int?)0, 0.2f, true); } } public sealed class YuyukoCharacterRefloweringSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterButterflySe", "YuyukoCharacterReflowerKeywordSe", "Firepower", "Spirit" }; defaultStatusEffectConfig.HasCount = true; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterRefloweringSeDef))] public sealed class YuyukoCharacterRefloweringSe : StatusEffect { public int ButterflyThreshold = 10; public int DrawAmount = 1; public int ButterflyAmount = 5; public int WhiteManaThreshold = 20; public int FirepowerThreshold = 30; public int FirepowerAmount = 2; public int GreenManaThreshold = 50; public int SpiritThreshold = 80; public int SpiritAmount = 2; public int DoubleDamageThreshold = 100; public int DoubleDamageAmount = 2; public ManaGroup ManaWhite; public ManaGroup ManaBlack; public ManaGroup ManaGreen; public int DamageRate { get; set; } = 2; public ManaGroup Mana { get { //IL_0003: Unknown result type (might be due to invalid IL or missing references) //IL_0055: Unknown result type (might be due to invalid IL or missing references) //IL_0056: 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) ManaGroup result = default(ManaGroup); ((ManaGroup)(ref result)).White = ((((StatusEffect)this).Count >= WhiteManaThreshold) ? ((StatusEffect)this).Level : 0); ((ManaGroup)(ref result)).Black = ((StatusEffect)this).Level; ((ManaGroup)(ref result)).Green = ((((StatusEffect)this).Count >= GreenManaThreshold) ? ((StatusEffect)this).Level : 0); return result; } } protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((StatusEffect)this).Owner.TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnStarted); ((StatusEffect)this).HandleOwnerEvent<DamageDealingEventArgs>(unit.DamageDealing, (GameEventHandler<DamageDealingEventArgs>)OnDamageDealing); if (((StatusEffect)this).Battle.Player is YuyukoCharacterPlayerDef.YuyukoCharacterMod yuyukoCharacterMod) { ((StatusEffect)this).ReactOwnerEvent<ReflowerConsumeEventArgs>(yuyukoCharacterMod.Reflowered, (EventSequencedReactor<ReflowerConsumeEventArgs>)OnReflower); } } private void OnDamageDealing(DamageDealingEventArgs args) { //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_0018: Unknown result type (might be due to invalid IL or missing references) //IL_001e: Invalid comparison between Unknown and I4 //IL_002a: Unknown result type (might be due to invalid IL or missing references) //IL_002f: Unknown result type (might be due to invalid IL or missing references) //IL_0041: Unknown result type (might be due to invalid IL or missing references) //IL_0055: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Invalid comparison between Unknown and I4 if (((StatusEffect)this).Count < DoubleDamageThreshold) { return; } DamageInfo damageInfo = args.DamageInfo; if ((int)((DamageInfo)(ref damageInfo)).DamageType == 2) { damageInfo = args.DamageInfo; args.DamageInfo = ((DamageInfo)(ref damageInfo)).MultiplyBy(DamageRate + ((StatusEffect)this).Level - 1); ((GameEventArgs)args).AddModifier((GameEntity)(object)this); if ((int)((GameEventArgs)args).Cause != 20) { ((StatusEffect)this).NotifyActivating(); } } } private IEnumerable<BattleAction> OnOwnerTurnStarted(UnitEventArgs args) { <>n__0(); yield return (BattleAction)new GainManaAction(Mana); if (((StatusEffect)this).Count >= ButterflyThreshold) { yield return (BattleAction)new DrawManyCardAction(((StatusEffect)this).Level * DrawAmount); } if (((StatusEffect)this).Count >= FirepowerThreshold) { yield return (BattleAction)(object)new ApplyStatusEffectAction<Firepower>(((StatusEffect)this).Owner, (int?)(((StatusEffect)this).Level * FirepowerAmount), (int?)0, (int?)0, (int?)0, 0.2f, true); } if (((StatusEffect)this).Count >= SpiritThreshold) { yield return (BattleAction)(object)new ApplyStatusEffectAction<Spirit>(((StatusEffect)this).Owner, (int?)(((StatusEffect)this).Level * SpiritAmount), (int?)0, (int?)0, (int?)0, 0.2f, true); } } private IEnumerable<BattleAction> OnReflower(ReflowerConsumeEventArgs args) { if (((StatusEffect)this).Count != 100) { if (((StatusEffect)this).Count + args.Consume > 100) { ((StatusEffect)this).Count = 100; } else { ((StatusEffect)this).Count = ((StatusEffect)this).Count + args.Consume; } } yield break; } public YuyukoCharacterRefloweringSe() { //IL_005d: 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_006d: 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_0084: Unknown result type (might be due to invalid IL or missing references) //IL_0085: Unknown result type (might be due to invalid IL or missing references) //IL_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_009d: Unknown result type (might be due to invalid IL or missing references) ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).White = 1; ManaWhite = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Black = 1; ManaBlack = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Green = 1; ManaGreen = val; ((StatusEffect)this)..ctor(); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuyukoCharacterRepositoryOfHirokawaSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterButterflySe", "YuyukoCharacterReflowerKeywordSe" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterRepositoryOfHirokawaSeDef))] public sealed class YuyukoCharacterRepositoryOfHirokawaSe : StatusEffect { protected override void OnAdded(Unit unit) { if (((StatusEffect)this).Battle.Player is YuyukoCharacterPlayerDef.YuyukoCharacterMod yuyukoCharacterMod) { ((StatusEffect)this).ReactOwnerEvent<ReflowerConsumeEventArgs>(yuyukoCharacterMod.Reflowered, (EventSequencedReactor<ReflowerConsumeEventArgs>)OnReflower); } } private IEnumerable<BattleAction> OnReflower(ReflowerConsumeEventArgs args) { <>n__0(); yield return (BattleAction)new CastBlockShieldAction(((StatusEffect)this).Owner, 0, ((StatusEffect)this).Level, (BlockShieldType)1, true); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuyukoCharacterSaigyoujiParinirvanaSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuyukoCharacterSaigyoujiParinirvanaSeDef))] public sealed class YuyukoCharacterSaigyoujiParinirvanaSe : StatusEffect { protected override void OnAdded(Unit unit) { ((StatusEffect)this).ReactOwnerEvent<UnitEventArgs>(((StatusEffect)this).Owner.TurnEnded, (EventSequencedReactor<UnitEventArgs>)OnOwnerTurnEnded); } private IEnumerable<BattleAction> OnOwnerTurnEnded(UnitEventArgs args) { if (((StatusEffect)this).Battle != null && !((StatusEffect)this).Battle.BattleShouldEnd) { <>n__0(); yield return (BattleAction)(object)new TriggerLawOfMortalityAction(((StatusEffect)this).Level); } } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public class YuyukoCharacterStatusEffectTemplate : 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(YuyukoCharacterDefaultConfig.GetDefaultID((EntityDefinition)(object)this)); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)YuyukoCharacterLocalization.StatusEffectsBatchLoc.AddEntity((EntityDefinition)(object)this); } public override Sprite LoadSprite() { return YuyukoCharacterImageLoader.LoadStatusEffectLoader((StatusEffectTemplate)(object)this); } public override StatusEffectConfig MakeConfig() { return GetDefaultStatusEffectConfig(); } public static StatusEffectConfig GetDefaultStatusEffectConfig() { return YuyukoCharacterDefaultConfig.GetDefaultStatusEffectConfig(); } } public sealed class YuyukoCharacterSubtleMelodySeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { return YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); } } [EntityLogic(typeof(YuyukoCharacterSubtleMelodySeDef))] public sealed class YuyukoCharacterSubtleMelodySe : StatusEffect { } public sealed class YuyukoCharacterWeepingHiganSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; defaultStatusEffectConfig.Order = 5; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterWeepingHiganSeDef))] public sealed class YuyukoCharacterWeepingHiganSe : StatusEffect { public string GunName => GunNameID.GetGunFromId(862); public int DamageTaken { get; set; } = 0; protected override void OnAdded(Unit unit) { ((StatusEffect)this).HandleOwnerEvent<DamageEventArgs>(((Unit)((StatusEffect)this).Battle.Player).DamageTaking, (GameEventHandler<DamageEventArgs>)OnPlayerDamageTaking); ((StatusEffect)this).ReactOwnerEvent<DamageEventArgs>(((Unit)((StatusEffect)this).Battle.Player).DamageReceived, (EventSequencedReactor<DamageEventArgs>)OnPlayerDamageReceived); } private void OnPlayerDamageTaking(DamageEventArgs args) { //IL_0021: Unknown result type (might be due to invalid IL or missing references) //IL_0027: Invalid comparison between Unknown and I4 //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_003b: Unknown result type (might be due to invalid IL or missing references) //IL_006d: Unknown result type (might be due to invalid IL or missing references) bool flag = ((GameEventArgs)args).ActionSource is NextTurnLoseGame || ((GameEventArgs)args).ActionSource is UseCardToLoseGame; if ((int)((GameEventArgs)args).Cause == 7 && !flag) { DamageInfo damageInfo = args.DamageInfo; DamageTaken = MathExtensions.RoundToInt(((DamageInfo)(ref damageInfo)).Damage); if (DamageTaken > 0) { ((StatusEffect)this).NotifyActivating(); args.DamageInfo = ((DamageInfo)(ref damageInfo)).ReduceActualDamageBy(DamageTaken); ((GameEventArgs)args).AddModifier((GameEntity)(object)this); } } } private IEnumerable<BattleAction> OnPlayerDamageReceived(DamageEventArgs args) { if ((int)((GameEventArgs)args).Cause == 7 && DamageTaken > 0) { <>n__0(); yield return (BattleAction)new DamageAction(((StatusEffect)this).Owner, (IEnumerable<Unit>)((StatusEffect)this).Battle.AllAliveEnemies, DamageInfo.HpLose((float)DamageTaken * (float)((StatusEffect)this).Level, false), GunName, (GunType)0); DamageTaken = 0; } } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } public sealed class YuyukoCharacterYoumuFriendSeDef : YuyukoCharacterStatusEffectTemplate { public override StatusEffectConfig MakeConfig() { StatusEffectConfig defaultStatusEffectConfig = YuyukoCharacterStatusEffectTemplate.GetDefaultStatusEffectConfig(); defaultStatusEffectConfig.RelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe" }; return defaultStatusEffectConfig; } } [EntityLogic(typeof(YuyukoCharacterYoumuFriendSeDef))] public sealed class YuyukoCharacterYoumuFriendSe : StatusEffect { public string GunName => GunNameID.GetGunFromId(520); protected override void OnAdded(Unit unit) { if (((StatusEffect)this).Battle.Player is YuyukoCharacterPlayerDef.YuyukoCharacterMod yuyukoCharacterMod) { ((StatusEffect)this).ReactOwnerEvent<MillEventArgs>(yuyukoCharacterMod.Milled, (EventSequencedReactor<MillEventArgs>)OnMilled); } } private IEnumerable<BattleAction> OnMilled(MillEventArgs args) { <>n__0(); yield return (BattleAction)new DamageAction(((StatusEffect)this).Owner, (IEnumerable<Unit>)((StatusEffect)this).Battle.AllAliveEnemies, DamageInfo.Reaction((float)((StatusEffect)this).Level, false), GunName, (GunType)0); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((StatusEffect)this).NotifyActivating(); } } } namespace YuyukoCharacterMod.model { public sealed class YuyukoCharacterModel : UnitModelTemplate { public static bool useInGameModel = BepinexPlugin.useInGameModel; public static string model_name = (useInGameModel ? BepinexPlugin.modelName : "YuyukoCharacterModel.png"); public static string spellsprite_name = "YuyukoCharacterStand.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 ((EntityDefinition)new YuyukoCharacterPlayerDef()).UniqueId; } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)YuyukoCharacterLocalization.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<Sprite> 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>(UnitModelConfig.FromName(model_name)); val.Flip = BepinexPlugin.modelIsFlipped; return val; } UnitModelConfig val2 = ObjectExtensions.Copy<UnitModelConfig>(((UnitModelTemplate)this).DefaultConfig()); val2.Flip = BepinexPlugin.modelIsFlipped; val2.Type = 0; val2.Offset = new Vector2(0f, -0.1f); val2.HasSpellPortrait = true; return val2; } } } namespace YuyukoCharacterMod.Localization { public sealed class YuyukoCharacterLocalization { public static string Cards = "Cards"; public static string Exhibits = "Exhibits"; public static string PlayerUnit = "PlayerUnit"; 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 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 DiscoverAndLoad() { CardsBatchLoc.DiscoverAndLoadLocFiles(Cards); ExhibitsBatchLoc.DiscoverAndLoadLocFiles(Exhibits); PlayerUnitBatchLoc.DiscoverAndLoadLocFiles(PlayerUnit); UnitModelBatchLoc.DiscoverAndLoadLocFiles(UnitModel); UltimateSkillsBatchLoc.DiscoverAndLoadLocFiles(UltimateSkills); StatusEffectsBatchLoc.DiscoverAndLoadLocFiles(StatusEffects); } } } namespace YuyukoCharacterMod.GunName { public static class GunNameID { private static IReadOnlyList<GunConfig> 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 YuyukoCharacterMod.Exhibits { public sealed class YuyukoCharacterExhibitADef : YuyukoCharacterExhibitTemplate { public override ExhibitConfig MakeConfig() { //IL_002e: 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) ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.Value1 = 20; defaultExhibitConfig.Value2 = 5; defaultExhibitConfig.HasCounter = true; ManaGroup value = default(ManaGroup); ((ManaGroup)(ref value)).White = 1; defaultExhibitConfig.Mana = value; defaultExhibitConfig.BaseManaColor = (ManaColor)1; defaultExhibitConfig.RelativeEffects = new List<string> { "YuyukoCharacterButterflySe", "YuyukoCharacterReflowerKeywordSe" }; return defaultExhibitConfig; } } [EntityLogic(typeof(YuyukoCharacterExhibitADef))] public sealed class YuyukoCharacterExhibitA : ShiningExhibit { protected override void OnEnterBattle() { ((Exhibit)this).Counter = 0; ((Exhibit)this).ReactBattleEvent<UnitEventArgs>(((Unit)((Exhibit)this).Battle.Player).TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnPlayerTurnStarted); if (((Exhibit)this).Battle.Player is YuyukoCharacterPlayerDef.YuyukoCharacterMod yuyukoCharacterMod) { ((Exhibit)this).ReactBattleEvent<ReflowerConsumeEventArgs>(yuyukoCharacterMod.Reflowered, (EventSequencedReactor<ReflowerConsumeEventArgs>)OnReflower); } } private IEnumerable<BattleAction> OnReflower(ReflowerConsumeEventArgs args) { int value; for (value = ((Exhibit)this).Counter + args.Consume; value >= ((Exhibit)this).Value1; value -= ((Exhibit)this).Value1) { <>n__0(); yield return (BattleAction)new GainManaAction(((Exhibit)this).Mana); } ((Exhibit)this).Counter = value; } private IEnumerable<BattleAction> OnPlayerTurnStarted(UnitEventArgs args) { if (((Unit)((Exhibit)this).Battle.Player).TurnCounter == 1) { <>n__0(); yield return (BattleAction)(object)new ApplyStatusEffectAction<YuyukoCharacterButterflySe>((Unit)(object)((Exhibit)this).Battle.Player, (int?)((Exhibit)this).Value2, (int?)0, (int?)0, (int?)0, 0.2f, true); } } protected override void OnLeaveBattle() { ((Exhibit)this).Counter = 0; } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Exhibit)this).NotifyActivating(); } } public sealed class YuyukoCharacterExhibitBDef : YuyukoCharacterExhibitTemplate { public override ExhibitConfig MakeConfig() { //IL_0025: Unknown result type (might be due to invalid IL or missing references) //IL_0034: Unknown result type (might be due to invalid IL or missing references) ExhibitConfig defaultExhibitConfig = GetDefaultExhibitConfig(); defaultExhibitConfig.Value1 = 2; defaultExhibitConfig.Value2 = 4; ManaGroup value = default(ManaGroup); ((ManaGroup)(ref value)).Green = 1; defaultExhibitConfig.Mana = value; defaultExhibitConfig.BaseManaColor = (ManaColor)5; defaultExhibitConfig.RelativeEffects = new List<string>(); return defaultExhibitConfig; } } [EntityLogic(typeof(YuyukoCharacterExhibitBDef))] public sealed class YuyukoCharacterExhibitB : ShiningExhibit { protected override void OnEnterBattle() { ((Exhibit)this).ReactBattleEvent<UnitEventArgs>(((Unit)((Exhibit)this).Battle.Player).TurnStarted, (EventSequencedReactor<UnitEventArgs>)OnPlayerTurnStarted); ((Exhibit)this).ReactBattleEvent<GameEventArgs>(((Exhibit)this).Battle.Reshuffled, (EventSequencedReactor<GameEventArgs>)OnReshuffled); } private IEnumerable<BattleAction> OnPlayerTurnStarted(UnitEventArgs args) { if (((Unit)((Exhibit)this).Battle.Player).TurnCounter != 1) { yield break; } <>n__0(); foreach (EnemyUnit enemy in ((Exhibit)this).Battle.AllAliveEnemies) { yield return (BattleAction)(object)new ApplyStatusEffectAction<YuyukoDeath>((Unit)(object)enemy, (int?)((Exhibit)this).Value1, (int?)0, (int?)0, (int?)0, 0.2f, true); } } private IEnumerable<BattleAction> OnReshuffled(GameEventArgs args) { <>n__0(); yield return (BattleAction)new CastBlockShieldAction((Unit)(object)((Exhibit)this).Owner, (Unit)(object)((Exhibit)this).Owner, ((Exhibit)this).Value2, 0, (BlockShieldType)1, true); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Exhibit)this).NotifyActivating(); } } public class YuyukoCharacterExhibitTemplate : 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(YuyukoCharacterDefaultConfig.GetDefaultID((EntityDefinition)(object)this)); } public override LocalizationOption LoadLocalization() { return (LocalizationOption)(object)YuyukoCharacterLocalization.ExhibitsBatchLoc.AddEntity((EntityDefinition)(object)this); } public override ExhibitSprites LoadSprite() { return YuyukoCharacterImageLoader.LoadExhibitSprite((ExhibitTemplate)(object)this); } public override ExhibitConfig MakeConfig() { return GetDefaultExhibitConfig(); } public ExhibitConfig GetDefaultExhibitConfig() { return YuyukoCharacterDefaultConfig.GetDefaultExhibitConfig(); } } } namespace YuyukoCharacterMod.ImageLoader { public sealed class YuyukoCharacterDefaultConfig { private static readonly string OwnerName = BepinexPlugin.modUniqueID; public static string GetDefaultID(EntityDefinition entity) { string name = ((object)entity).GetType().Name; return name.Remove(name.Length - 3); } public static CardConfig GetCardDefaultConfig() { //IL_0033: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_014e: Unknown result type (might be due to invalid IL or missing references) //IL_0155: Expected O, but got Unknown return new CardConfig(0, "", 10, true, new string[0][], "", "", 0, false, true, true, false, true, (Rarity)0, (CardType)0, (TargetType?)null, (IReadOnlyList<ManaColor>)new List<ManaColor>(), false, default(ManaGroup), (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, (Keyword)0, (Keyword)0, false, (Keyword)0, (Keyword)0, (IReadOnlyList<string>)new List<string>(), (IReadOnlyList<string>)new List<string>(), (IReadOnlyList<string>)new List<string>(), (IReadOnlyList<string>)new List<string>(), OwnerName, "", "", false, (string)null, (IReadOnlyList<string>)new List<string>()); } public static ExhibitConfig GetDefaultExhibitConfig() { //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<string>)new List<string>(), (IReadOnlyList<string>)new List<string>()); } public static StatusEffectConfig GetDefaultStatusEffectConfig() { //IL_0048: Unknown result type (might be due to invalid IL or missing references) //IL_004e: 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<string>)new List<string>(), "Default", "Default", "Default"); } public static UltimateSkillConfig GetDefaultUltConfig() { //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<string>)new List<string>(), (IReadOnlyList<string>)new List<string>()); } } public sealed class YuyukoCharacterImageLoader { 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, Sprite>)((string s) => ResourceLoader.LoadSprite(s, (IResourceSource)(object)BepinexPlugin.directorySource, 100, 1, (FilterMode)1, true, (Rect?)null, (Vector2?)null)), (Func<string, UniTask<Sprite>>)((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, "", false); 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 YuyukoCharacterMod.Cards { public sealed class YuyukoCharacterDeadlyDanceDef : YuyukoCharacterCardTemplate { 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.GunName = GunNameID.GetGunFromId(4004); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Any = 1; ((ManaGroup)(ref cost)).Black = 1; cardDefaultConfig.Cost = cost; cardDefaultConfig.Rarity = (Rarity)0; cardDefaultConfig.Type = (CardType)1; cardDefaultConfig.TargetType = (TargetType)1; cardDefaultConfig.Damage = 12; cardDefaultConfig.Value1 = 3; cardDefaultConfig.UpgradedValue1 = 4; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.Illustrator = "@ruju_amn"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterDeadlyDanceDef))] public sealed class YuyukoCharacterDeadlyDance : YuyukoCharacterCard { protected override IEnumerable<BattleAction> 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, ((Card)this).GunName); if (((Unit)selector.SelectedEnemy).IsAlive && !((Card)this).Battle.BattleShouldEnd) { yield return ((Card)this).DebuffAction<YuyukoDeath>((Unit)(object)selector.SelectedEnemy, ((Card)this).Value1, 0, 0, 0, true, 0.2f); } if (!((Card)this).Battle.BattleShouldEnd && ((Card)this).IsUpgraded) { yield return (BattleAction)(object)new TriggerLawOfMortalityAction(); } } } public sealed class YuyukoCharacterDeepRootedButterflyDef : YuyukoCharacterCardTemplate { 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Any = 2; ((ManaGroup)(ref cost)).Black = 1; cardDefaultConfig.Cost = cost; cardDefaultConfig.Rarity = (Rarity)0; cardDefaultConfig.Type = (CardType)2; cardDefaultConfig.TargetType = (TargetType)4; cardDefaultConfig.Block = 17; cardDefaultConfig.UpgradedBlock = 23; cardDefaultConfig.Value1 = 2; cardDefaultConfig.UpgradedValue1 = 3; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.Illustrator = "モ誰"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterDeepRootedButterflyDef))] public sealed class YuyukoCharacterDeepRootedButterfly : YuyukoCharacterCard { protected override IEnumerable<BattleAction> 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).DefenseAction(true); yield return ((Card)this).BuffAction<YuyukoCharacterDeepRootedButterflySe>(((Card)this).Value1, 0, 0, 0, 0.2f); } } public sealed class YuyukoCharacterPastSinDef : YuyukoCharacterCardTemplate { 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Black = 1; cardDefaultConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; cardDefaultConfig.UpgradedCost = val; cardDefaultConfig.Rarity = (Rarity)0; cardDefaultConfig.Type = (CardType)3; cardDefaultConfig.TargetType = (TargetType)1; cardDefaultConfig.Value1 = 4; cardDefaultConfig.UpgradedValue1 = 5; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.Illustrator = "たるつ"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterPastSinDef))] public sealed class YuyukoCharacterPastSin : YuyukoCharacterCard { protected override IEnumerable<BattleAction> 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).DebuffAction<YuyukoDeath>((Unit)(object)selector.SelectedEnemy, ((Card)this).Value1, 0, 0, 0, true, 0.2f); yield return (BattleAction)(object)new TriggerLawOfMortalityAction(); } } public sealed class YuyukoCharacterBlockBDef : YuyukoCharacterCardTemplate { public override CardConfig MakeConfig() { //IL_0027: 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.IsPooled = false; cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; ((ManaGroup)(ref val)).Black = 1; cardDefaultConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; cardDefaultConfig.UpgradedCost = val; cardDefaultConfig.Rarity = (Rarity)0; cardDefaultConfig.Type = (CardType)2; cardDefaultConfig.TargetType = (TargetType)4; cardDefaultConfig.Block = 10; cardDefaultConfig.UpgradedBlock = 13; cardDefaultConfig.Keywords = (Keyword)2; cardDefaultConfig.UpgradedKeywords = (Keyword)2; cardDefaultConfig.Illustrator = "@fujimori_shiki"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterBlockBDef))] public sealed class YuyukoCharacterBlockB : YuyukoCharacterCard { } public sealed class YuyukoCharacterDeathOfOnesHomeDef : YuyukoCharacterCardTemplate { 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_00a5: Unknown result type (might be due to invalid IL or missing references) CardConfig cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Black = 1; cardDefaultConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; cardDefaultConfig.UpgradedCost = val; cardDefaultConfig.Rarity = (Rarity)2; cardDefaultConfig.Type = (CardType)3; cardDefaultConfig.TargetType = (TargetType)4; cardDefaultConfig.Value1 = 2; cardDefaultConfig.Value2 = 5; val = default(ManaGroup); ((ManaGroup)(ref val)).Black = 2; ((ManaGroup)(ref val)).Philosophy = 1; cardDefaultConfig.Mana = val; cardDefaultConfig.Keywords = (Keyword)131072; cardDefaultConfig.UpgradedKeywords = (Keyword)131072; cardDefaultConfig.Illustrator = "kumatangent"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterDeathOfOnesHomeDef))] public sealed class YuyukoCharacterDeathOfOnesHome : YuyukoCharacterCard { protected override IEnumerable<BattleAction> 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 (BattleAction)new DrawManyCardAction(((Card)this).Value1); yield return ((Card)this).DebuffAction<NextTurnLoseHp>((Unit)(object)((Card)this).Battle.Player, ((Card)this).Value2, 0, 0, 0, true, 0.2f); } } public sealed class YuyukoCharacterSaigyoujiParinirvanaDef : YuyukoCharacterCardTemplate { 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; ((ManaGroup)(ref val)).Black = 2; cardDefaultConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; ((ManaGroup)(ref val)).Black = 1; cardDefaultConfig.UpgradedCost = val; cardDefaultConfig.Rarity = (Rarity)2; cardDefaultConfig.Type = (CardType)4; cardDefaultConfig.TargetType = (TargetType)4; cardDefaultConfig.Value1 = 1; cardDefaultConfig.Illustrator = "kumatangent"; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterSaigyoujiParinirvanaDef))] public sealed class YuyukoCharacterSaigyoujiParinirvana : YuyukoCharacterCard { protected override IEnumerable<BattleAction> 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<YuyukoCharacterSaigyoujiParinirvanaSe>(((Card)this).Value1, 0, 0, 0, 0.2f); } } public sealed class YuyukoCharacterTemptationOfTheNextWorldDef : YuyukoCharacterCardTemplate { 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_00b0: 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) CardConfig cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.GunName = GunNameID.GetGunFromId(4003); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Black = 2; cardDefaultConfig.Cost = val; cardDefaultConfig.IsXCost = true; cardDefaultConfig.Rarity = (Rarity)2; cardDefaultConfig.Type = (CardType)1; cardDefaultConfig.TargetType = (TargetType)1; cardDefaultConfig.Damage = 8; cardDefaultConfig.UpgradedDamage = 10; cardDefaultConfig.Value1 = 2; cardDefaultConfig.Value2 = 1; cardDefaultConfig.UpgradedValue2 = 2; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; cardDefaultConfig.Mana = val; cardDefaultConfig.Keywords = (Keyword)256; cardDefaultConfig.UpgradedKeywords = (Keyword)256; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.Illustrator = "cheeseroll8443"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterTemptationOfTheNextWorldDef))] public sealed class YuyukoCharacterTemptationOfTheNextWorld : YuyukoCharacterCard { protected override int BaseValue3 { get; set; } = 2; protected override int BaseUpgradedValue3 { get; set; } = 2; protected override int AdditionalValue2 { get { //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_0024: Unknown result type (might be due to invalid IL or missing references) if (((Card)this).PendingManaUsage.HasValue) { ManaGroup valueOrDefault = ((Card)this).PendingManaUsage.GetValueOrDefault(); return ((Card)this).SynergyAmount(valueOrDefault, (ManaColor)0, 1) * base.Value3; } return 0; } } public override ManaGroup GetXCostFromPooled(ManaGroup pooledMana) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0002: Unknown result type (might be due to invalid IL or missing references) //IL_0005: Unknown result type (might be due to invalid IL or missing references) return pooledMana; } protected override IEnumerable<BattleAction> 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(((Card)this).GunName, ((Card)this).Value1, false); foreach (GunPair gunPair in ((Card)this).CardGuns.GunPairs) { yield return ((Card)this).AttackAction(selector, gunPair); } if (((Unit)selector.SelectedEnemy).IsAlive && !((Card)this).Battle.BattleShouldEnd) { yield return ((Card)this).DebuffAction<YuyukoDeath>((Unit)(object)selector.SelectedEnemy, ((Card)this).Value2, 0, 0, 0, true, 0.2f); } } } public sealed class YuyukoCharacterBewildermentDef : YuyukoCharacterCardTemplate { 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Any = 1; ((ManaGroup)(ref cost)).Black = 1; cardDefaultConfig.Cost = cost; cardDefaultConfig.Rarity = (Rarity)1; cardDefaultConfig.Type = (CardType)2; cardDefaultConfig.TargetType = (TargetType)4; cardDefaultConfig.Block = 12; cardDefaultConfig.UpgradedBlock = 0; cardDefaultConfig.Shield = 0; cardDefaultConfig.UpgradedShield = 12; cardDefaultConfig.Value1 = 4; cardDefaultConfig.Value2 = 2; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterButterflySe", "YuyukoCharacterReflowerKeywordSe", "TempFirepowerNegative" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterButterflySe", "YuyukoCharacterReflowerKeywordSe", "TempFirepowerNegative" }; cardDefaultConfig.Illustrator = "@yanagi_marie"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterBewildermentDef))] public sealed class YuyukoCharacterBewilderment : YuyukoCharacterCard { public override bool IsReflower { get; } = true; public override Interaction Precondition() { return ChooseReflowerLevel<YuyukoCharacterBewilderment>(); } protected override IEnumerable<BattleAction> 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).DefenseAction(true); if (precondition == null) { yield break; } foreach (BattleAction item in ResolveReflowerAction(selector, consumingMana, precondition)) { yield return item; } } protected override IEnumerable<BattleAction> BaseReflowerAction() { foreach (BattleAction item in ((Card)this).DebuffAction<TempFirepowerNegative>((IEnumerable<Unit>)((Card)this).Battle.AllAliveEnemies, ReflowerEffectValue, 0, 0, 0, true, 0.2f)) { yield return item; } } } public sealed class YuyukoCharacterDeadButterflyDef : YuyukoCharacterCardTemplate { 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Any = 1; ((ManaGroup)(ref cost)).Black = 1; cardDefaultConfig.Cost = cost; cardDefaultConfig.Rarity = (Rarity)1; cardDefaultConfig.Type = (CardType)4; cardDefaultConfig.TargetType = (TargetType)4; cardDefaultConfig.Value1 = 2; cardDefaultConfig.UpgradedValue1 = 3; cardDefaultConfig.Illustrator = "ぷっち"; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterDeathSe" }; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterDeadButterflyDef))] public sealed class YuyukoCharacterDeadButterfly : YuyukoCharacterCard { protected override IEnumerable<BattleAction> 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 (((Card)this).Battle != null && !((Card)this).Battle.BattleShouldEnd) { foreach (BattleAction item in ((Card)this).DebuffAction<YuyukoDeath>((IEnumerable<Unit>)((Card)this).Battle.AllAliveEnemies, ((Card)this).Value1, 0, 0, 0, true, 0.2f)) { yield return item; } } yield return ((Card)this).BuffAction<YuyukoCharacterDeadButterflySe>(((Card)this).Value1, 0, 0, 0, 0.2f); } } public sealed class YuyukoCharacterDemonWorldDef : YuyukoCharacterCardTemplate { 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; ((ManaGroup)(ref val)).Black = 1; cardDefaultConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; cardDefaultConfig.UpgradedCost = val; cardDefaultConfig.Rarity = (Rarity)1; cardDefaultConfig.Type = (CardType)3; cardDefaultConfig.TargetType = (TargetType)2; cardDefaultConfig.Value1 = 8; cardDefaultConfig.Value2 = 1; cardDefaultConfig.Illustrator = "wankosoradayo"; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterDeathSe", "YuyukoCharacterReflowerKeywordSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterDeathSe", "YuyukoCharacterReflowerKeywordSe" }; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterDemonWorldDef))] public sealed class YuyukoCharacterDemonWorld : YuyukoCharacterCard { public override bool IsReflower { get; } = true; protected override int BaseValue3 { get; set; } = 5; protected override int BaseUpgradedValue3 { get; set; } = 7; public override Interaction Precondition() { return ChooseReflowerLevel<YuyukoCharacterDemonWorld>(); } protected override IEnumerable<BattleAction> 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 (BattleAction item in ((Card)this).DebuffAction<YuyukoDeath>((IEnumerable<Unit>)((Card)this).Battle.AllAliveEnemies, base.Value3, 0, 0, 0, true, 0.2f)) { yield return item; } if (precondition == null) { yield break; } foreach (BattleAction item2 in ResolveReflowerAction(selector, consumingMana, precondition)) { yield return item2; } } protected override IEnumerable<BattleAction> BaseReflowerAction() { yield return (BattleAction)(object)new TriggerLawOfMortalityAction(ReflowerEffectValue); } } public sealed class YuyukoCharacterFoolishBurialDef : YuyukoCharacterCardTemplate { 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Any = 0; cardDefaultConfig.Cost = cost; cardDefaultConfig.Rarity = (Rarity)1; cardDefaultConfig.Type = (CardType)3; cardDefaultConfig.TargetType = (TargetType)4; cardDefaultConfig.Value1 = 1; cardDefaultConfig.UpgradedKeywords = (Keyword)2097152; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe" }; cardDefaultConfig.Illustrator = "飛者@秋例 ぬ09ab"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterFoolishBurialDef))] public sealed class YuyukoCharacterFoolishBurial : YuyukoCharacterCard { public override Interaction Precondition() { //IL_002f: Unknown result type (might be due to invalid IL or missing references) //IL_0035: Expected O, but got Unknown List<Card> list = ((Card)this).Battle.DrawZone.ToList(); if (list.Count <= 0) { return null; } return (Interaction)new SelectHandInteraction(0, ((Card)this).Value1, (IEnumerable<Card>)list); } protected override IEnumerable<BattleAction> 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; } IReadOnlyList<Card> cards = ((SelectHandInteraction)precondition).SelectedCards; if (cards.Count <= 0) { yield break; } foreach (Card card in cards) { yield return (BattleAction)new MoveCardToDrawZoneAction(card, (DrawZoneTarget)0); yield return (BattleAction)(object)new MillCardsAction(); } } } public sealed class YuyukoCharacterInkBlackCherryBlossomDef : YuyukoCharacterCardTemplate { 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_006a: Unknown result type (might be due to invalid IL or missing references) //IL_00ca: Unknown result type (might be due to invalid IL or missing references) //IL_00d9: Unknown result type (might be due to invalid IL or missing references) CardConfig cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.GunName = GunNameID.GetGunFromId(4002); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 3; ((ManaGroup)(ref val)).Black = 1; cardDefaultConfig.Cost = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 2; ((ManaGroup)(ref val)).Black = 1; cardDefaultConfig.UpgradedCost = val; cardDefaultConfig.Rarity = (Rarity)1; cardDefaultConfig.Type = (CardType)1; cardDefaultConfig.TargetType = (TargetType)2; cardDefaultConfig.Damage = 16; cardDefaultConfig.Value1 = 4; cardDefaultConfig.Value2 = 5; cardDefaultConfig.Illustrator = "ファルケン@リクエスト受付中"; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; cardDefaultConfig.Mana = val; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe", "YuyukoCharacterDeathSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe", "YuyukoCharacterDeathSe" }; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterInkBlackCherryBlossomDef))] public sealed class YuyukoCharacterInkBlackCherryBlossom : YuyukoCharacterCard { public override bool IsMill { get; } = true; public override IEnumerable<BattleAction> OnMill() { if (((Card)this).Battle != null && !((Card)this).Battle.BattleShouldEnd) { <>n__0(); yield return (BattleAction)(object)new TriggerLawOfMortalityAction(); } } protected override IEnumerable<BattleAction> 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, ((Card)this).GunName); if (((Card)this).Battle == null || ((Card)this).Battle.BattleShouldEnd) { yield break; } foreach (BattleAction item in ((Card)this).DebuffAction<YuyukoDeath>((IEnumerable<Unit>)((Card)this).Battle.AllAliveEnemies, ((Card)this).Value1, 0, 0, 0, true, 0.2f)) { yield return item; } yield return (BattleAction)(object)new TriggerLawOfMortalityAction(); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Card)this).NotifyActivating(); } } public sealed class YuyukoCharacterLostAgainDef : YuyukoCharacterCardTemplate { 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_0078: 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) CardConfig cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 1; ((ManaGroup)(ref val)).Black = 1; cardDefaultConfig.Cost = val; cardDefaultConfig.Rarity = (Rarity)1; cardDefaultConfig.Type = (CardType)3; cardDefaultConfig.TargetType = (TargetType)0; cardDefaultConfig.Value1 = 2; cardDefaultConfig.UpgradedValue1 = 3; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; cardDefaultConfig.Mana = val; cardDefaultConfig.Illustrator = "Unlike-"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterLostAgainDef))] public sealed class YuyukoCharacterLostAgain : YuyukoCharacterCard { private ManaGroup _manaWhite { get; set; } public ManaGroup ManaWhite => _manaWhite; private ManaGroup _manaGreen { get; set; } public ManaGroup ManaGreen => _manaGreen; public ManaGroup ManaToGain { get; set; } public override bool Triggered => ((Card)this).Battle != null && ((Card)this).Battle.BattleCardUsageHistory.Count != 0 && (((Card)this).Battle.BattleCardUsageHistory.Last().Config.Colors.Contains((ManaColor)1) || ((Card)this).Battle.BattleCardUsageHistory.Last().Config.Colors.Contains((ManaColor)5)); protected override string GetBaseDescription() { //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_00c2: Unknown result type (might be due to invalid IL or missing references) //IL_00da: Unknown result type (might be due to invalid IL or missing references) if (((Card)this).Battle != null && ((Card)this).Battle.BattleCardUsageHistory.Count != 0) { if (((Card)this).Battle.BattleCardUsageHistory.Last().Config.Colors.Contains((ManaColor)1) || ((Card)this).Battle.BattleCardUsageHistory.Last().Config.Colors.Contains((ManaColor)5)) { int white = (((Card)this).Battle.BattleCardUsageHistory.Last().Config.Colors.Contains((ManaColor)1) ? 1 : 0); int green = (((Card)this).Battle.BattleCardUsageHistory.Last().Config.Colors.Contains((ManaColor)5) ? 1 : 0); ManaGroup manaToGain = default(ManaGroup); ((ManaGroup)(ref manaToGain)).White = white; ((ManaGroup)(ref manaToGain)).Green = green; ManaToGain = manaToGain; } else { ManaToGain = ((Card)this).Mana; } ((GameEntity)this).NotifyChanged(); } return ((Card)this).GetBaseDescription(); } protected override IEnumerable<BattleAction> 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); if (((Card)this).PlayInTriggered && (((Card)this).Battle.BattleCardUsageHistory.Last().Config.Colors.Contains((ManaColor)1) || ((Card)this).Battle.BattleCardUsageHistory.Last().Config.Colors.Contains((ManaColor)5))) { yield return (BattleAction)new GainManaAction(ManaToGain); } } public YuyukoCharacterLostAgain() { //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) //IL_001b: Unknown result type (might be due to invalid IL or missing references) //IL_002a: Unknown result type (might be due to invalid IL or missing references) //IL_002b: Unknown result type (might be due to invalid IL or missing references) //IL_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) //IL_0043: Unknown result type (might be due to invalid IL or missing references) ManaGroup val = default(ManaGroup); ((ManaGroup)(ref val)).White = 1; _manaWhite = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Green = 1; _manaGreen = val; val = default(ManaGroup); ((ManaGroup)(ref val)).Any = 0; ManaToGain = val; base..ctor(); } } public sealed class YuyukoCharacterPoisonousMothDef : YuyukoCharacterCardTemplate { public override CardConfig MakeConfig() { //IL_002f: 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.IsPooled = false; cardDefaultConfig.HideMesuem = true; cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Any = 1; ((ManaGroup)(ref cost)).Black = 1; cardDefaultConfig.Cost = cost; cardDefaultConfig.Rarity = (Rarity)1; cardDefaultConfig.Type = (CardType)3; cardDefaultConfig.TargetType = (TargetType)2; cardDefaultConfig.Value1 = 4; cardDefaultConfig.UpgradedValue1 = 6; cardDefaultConfig.Illustrator = "wankosoradayo"; cardDefaultConfig.RelativeEffects = new List<string> { "Poison", "YuyukoCharacterDeathSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "Poison", "YuyukoCharacterDeathSe" }; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterPoisonousMothDef))] public sealed class YuyukoCharacterPoisonousMoth : YuyukoCharacterCard { protected override IEnumerable<BattleAction> 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 (((Card)this).Battle != null && !((Card)this).Battle.BattleShouldEnd) { foreach (BattleAction item in ((Card)this).DebuffAction<Poison>((IEnumerable<Unit>)((Card)this).Battle.AllAliveEnemies, ((Card)this).Value1, 0, 0, 0, true, 0.2f)) { yield return item; } } foreach (EnemyUnit enemy in ((Card)this).Battle.AllAliveEnemies) { if (((Unit)enemy).HasStatusEffect<Poison>()) { Poison poison = ((Unit)enemy).GetStatusEffect<Poison>(); int poisonAmount = ((StatusEffect)poison).Level; yield return (BattleAction)new RemoveStatusEffectAction((StatusEffect)(object)poison, true, 0.1f); yield return ((Card)this).DebuffAction<YuyukoDeath>((Unit)(object)enemy, poisonAmount, 0, 0, 0, true, 0.2f); } } yield return (BattleAction)(object)new TriggerLawOfMortalityAction(); } } public sealed class YuyukoCharacterSelfLossDef : YuyukoCharacterCardTemplate { 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.GunName = GunNameID.GetGunFromId(6150); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Any = 1; ((ManaGroup)(ref cost)).Black = 1; cardDefaultConfig.Cost = cost; cardDefaultConfig.Rarity = (Rarity)1; cardDefaultConfig.Type = (CardType)1; cardDefaultConfig.TargetType = (TargetType)1; cardDefaultConfig.Damage = 10; cardDefaultConfig.UpgradedDamage = 13; cardDefaultConfig.Value1 = 2; cardDefaultConfig.Value2 = 3; cardDefaultConfig.Keywords = (Keyword)256; cardDefaultConfig.UpgradedKeywords = (Keyword)256; cardDefaultConfig.Illustrator = "のこき"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterSelfLossDef))] public sealed class YuyukoCharacterSelfLoss : YuyukoCharacterCard { protected override IEnumerable<BattleAction> 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(((Card)this).GunName, ((Card)this).Value1, false); foreach (GunPair gunPair in ((Card)this).CardGuns.GunPairs) { yield return ((Card)this).AttackAction(selector, gunPair); } yield return ((Card)this).DebuffAction<NextTurnLoseHp>((Unit)(object)((Card)this).Battle.Player, ((Card)this).Value2, 0, 0, 0, true, 0.2f); } } public sealed class YuyukoCharacterButterflyDelusionDef : YuyukoCharacterCardTemplate { public override CardConfig MakeConfig() { //IL_0027: 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3, (ManaColor)5 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Hybrid = 1; ((ManaGroup)(ref cost)).HybridColor = 8; cardDefaultConfig.Cost = cost; cardDefaultConfig.Rarity = (Rarity)0; cardDefaultConfig.Type = (CardType)3; cardDefaultConfig.TargetType = (TargetType)2; cardDefaultConfig.Value1 = 3; cardDefaultConfig.UpgradedValue1 = 4; cardDefaultConfig.Value2 = 2; cardDefaultConfig.UpgradedValue2 = 3; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe", "YuyukoCharacterDeathSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe", "YuyukoCharacterDeathSe" }; cardDefaultConfig.Illustrator = "ずか"; cardDefaultConfig.Index = CardIndexGenerator.GetUniqueIndex(cardDefaultConfig); return cardDefaultConfig; } } [EntityLogic(typeof(YuyukoCharacterButterflyDelusionDef))] public sealed class YuyukoCharacterButterflyDelusion : YuyukoCharacterCard { public override bool IsMill { get; } = true; public override IEnumerable<BattleAction> OnMill() { if (((Card)this).Battle == null || ((Card)this).Battle.BattleShouldEnd) { yield break; } <>n__0(); foreach (BattleAction item in ((Card)this).DebuffAction<YuyukoDeath>((IEnumerable<Unit>)((Card)this).Battle.AllAliveEnemies, ((Card)this).Value1, 0, 0, 0, true, 0.2f)) { yield return item; } } protected override IEnumerable<BattleAction> 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 (BattleAction item in ((Card)this).DebuffAction<YuyukoDeath>((IEnumerable<Unit>)((Card)this).Battle.AllAliveEnemies, ((Card)this).Value1, 0, 0, 0, true, 0.2f)) { yield return item; } yield return (BattleAction)(object)new MillCardsAction(((Card)this).Value2); } [CompilerGenerated] [DebuggerHidden] private void <>n__0() { ((Card)this).NotifyActivating(); } } public sealed class YuyukoCharacterComeFullCircleDef : YuyukoCharacterCardTemplate { public override CardConfig MakeConfig() { //IL_0027: 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 cardDefaultConfig = GetCardDefaultConfig(); cardDefaultConfig.Colors = new List<ManaColor> { (ManaColor)3, (ManaColor)5 }; ManaGroup cost = default(ManaGroup); ((ManaGroup)(ref cost)).Hybrid = 1; ((ManaGroup)(ref cost)).HybridColor = 8; cardDefaultConfig.Cost = cost; cardDefaultConfig.Rarity = (Rarity)1; cardDefaultConfig.Type = (CardType)3; cardDefaultConfig.TargetType = (TargetType)4; cardDefaultConfig.Value1 = 3; cardDefaultConfig.UpgradedValue1 = 4; cardDefaultConfig.Value2 = 1; cardDefaultConfig.UpgradedValue2 = 2; cardDefaultConfig.RelativeEffects = new List<string> { "YuyukoCharacterMillKeywordSe" }; cardDefaultConfig.UpgradedRelativeEffects = new List<stri