소스 검색

Mermaimon fix + added digivolution cost to entities

Quick-Bolt 1 년 전
부모
커밋
12e2e7ce31

+ 2 - 2
Assets/CardBaseEntity/BT18/Blue/Digimon/AncientMermaimon-BT18-029.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:cefbce89b9f9be192a897a4cce897ec2024372491912a44fe72573d5302dd1bd
-size 1489
+oid sha256:5cb682eb12ff53163c25ecfb7f9225da1103d04807f6ad1b7452303ede9a686f
+size 1534

+ 2 - 2
Assets/CardBaseEntity/BT18/Blue/Digimon/Calmaramon-BT18-024.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:23e0fc5e7f7a0166a146329957ca0d617eec7f19e80c4ae9db6e252e13ccc481
-size 1432
+oid sha256:5f5e555f7e07b26cff84397f9390e048036a8a57086e1de46a1d5341022cf014
+size 1477

+ 2 - 2
Assets/CardBaseEntity/BT18/Blue/Digimon/Lanamon-BT18-023.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:d4775de525e4663c7de7dcb12ae8743e4285d94c76fca4d45f5c0bdee1a17666
-size 1463
+oid sha256:278a114e853512d04bcb537ad72bec2d4f031db158d5737ab9fefcd4472edc3f
+size 1508

+ 2 - 2
Assets/CardBaseEntity/BT18/Blue/Digimon/Mermaimon-BT18-027.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:3b2a4da6ffffa6453e0848a5234fd8e1f4fb575bcb0b0654892d36e587f5cb93
-size 1163
+oid sha256:df6e50b4760c72129574e229010e019822735abb4a69544d79ad89d3273c21f1
+size 1208

+ 2 - 2
Assets/CardBaseEntity/BT18/Blue/Digimon/Syakomon-BT18-020.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:f18830011614cbfbefc67c94218b239ffa01814689466573a1fa1e5a31da3efc
-size 1055
+oid sha256:d1e4343601cc2886bc33f5c5aeda878b52560f1881b32bbf649f22b08e1f2d77
+size 1100

+ 36 - 85
Assets/CardEffect/BT18/Blue/Mermaimon_BT18_027.cs

@@ -1,3 +1,4 @@
+using System;
 using System.Collections;
 using System.Collections.Generic;
 using System.Linq;
@@ -25,45 +26,25 @@ namespace DCGO.CardEffects.BT18
 
                 bool CanSelectCardCondition(CardSource cardSource)
                 {
-                    if (cardSource != null)
+                    if (cardSource.IsDigimon && cardSource.HasLevel)
                     {
-                        if (cardSource.Owner == card.Owner)
+                        if (CardEffectCommons.CanPlayAsNewPermanent(cardSource: cardSource, payCost: false, cardEffect: activateClass))
                         {
-                            if (cardSource.IsDigimon)
+                            if (cardSource.Level == 3 && cardSource.CardColors.Contains(CardColor.Blue))
                             {
-                                if (cardSource.Level == 3)
+                                if (cardSource.HasLevel)
                                 {
-                                    if (cardSource.CardColors.Contains(CardColor.Blue))
-                                    {
-                                        if (CardEffectCommons.CanPlayAsNewPermanent(cardSource: cardSource, payCost: false, cardEffect: activateClass))
-                                        {
-                                            if (cardSource.HasLevel)
-                                            {
-                                                return true;
-                                            }
-                                        }
-                                    }
+                                    return true;
                                 }
                             }
                         }
                     }
 
-                    return false;
-                }
-
-                bool CanSelectCardCondition1(CardSource cardSource)
-                {
-                    if (cardSource != null)
+                    if (cardSource.IsTamer)
                     {
-                        if (cardSource.Owner == card.Owner)
+                        if (CardEffectCommons.CanPlayAsNewPermanent(cardSource: cardSource, payCost: false, cardEffect: activateClass))
                         {
-                            if (cardSource.IsTamer)
-                            {
-                                if (CardEffectCommons.CanPlayAsNewPermanent(cardSource: cardSource, payCost: false, cardEffect: activateClass))
-                                {
-                                    return true;                                   
-                                }                                                                 
-                            }
+                            return true;
                         }
                     }
 
@@ -79,7 +60,7 @@ namespace DCGO.CardEffects.BT18
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        if (card.PermanentOfThisCard().DigivolutionCards.Count((cardSource) => CanSelectCardCondition(cardSource) || CanSelectCardCondition1(cardSource)) >= 1)
+                        if (card.PermanentOfThisCard().DigivolutionCards.Count((cardSource) => CanSelectCardCondition(cardSource)) >= 1)
                         {
                             return true;
                         }
@@ -92,67 +73,37 @@ namespace DCGO.CardEffects.BT18
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        List<CardSource> selectedCards = new List<CardSource>();
+                        Permanent selectedPermanent = card.PermanentOfThisCard();
 
-                        if (card.PermanentOfThisCard().DigivolutionCards.Count((cardSource) => CanSelectCardCondition(cardSource)) >= 1)
+                        if (selectedPermanent.DigivolutionCards.Count(CanSelectCardCondition) >= 1)
                         {
-                            int maxCount = 1;
+                            int maxCount = Math.Min(1, selectedPermanent.DigivolutionCards.Count(CanSelectCardCondition));
 
-                            SelectCardEffect selectCardEffect = GManager.instance.GetComponent<SelectCardEffect>();
-
-                            selectCardEffect.SetUp(
-                                canTargetCondition: (cardSource) => CanSelectCardCondition(cardSource),
-                                canTargetCondition_ByPreSelecetedList: null,
-                                canEndSelectCondition: null,
-                                canNoSelect: () => false,
-                                selectCardCoroutine: SelectCardCoroutine,
-                                afterSelectCardCoroutine: null,
-                                message: "Select 1 level 3 or lower blue Digimon card to play.",
-                                maxCount: maxCount,
-                                canEndNotMax: false,
-                                isShowOpponent: true,
-                                mode: SelectCardEffect.Mode.Custom,
-                                root: SelectCardEffect.Root.Custom,
-                                customRootCardList: card.PermanentOfThisCard().DigivolutionCards,
-                                canLookReverseCard: true,
-                                selectPlayer: card.Owner,
-                                cardEffect: activateClass);
-
-                            yield return ContinuousController.instance.StartCoroutine(selectCardEffect.Activate());
-
-                            IEnumerator SelectCardCoroutine(CardSource cardSource)
-                            {
-                                selectedCards.Add(cardSource);
-
-                                yield return null;
-                            }
-                        }
-
-                        if (card.PermanentOfThisCard().DigivolutionCards.Count((cardSource) => CanSelectCardCondition1(cardSource)) >= 1)
-                        {
-                            int maxCount = 1;
+                            List<CardSource> selectedCards = new List<CardSource>();
 
                             SelectCardEffect selectCardEffect = GManager.instance.GetComponent<SelectCardEffect>();
 
                             selectCardEffect.SetUp(
-                                canTargetCondition: (cardSource) => CanSelectCardCondition1(cardSource),
-                                canTargetCondition_ByPreSelecetedList: null,
-                                canEndSelectCondition: null,
-                                canNoSelect: () => false,
-                                selectCardCoroutine: SelectCardCoroutine,
-                                afterSelectCardCoroutine: null,
-                                message: "Select 1 Tamer to play.",
-                                maxCount: maxCount,
-                                canEndNotMax: false,
-                                isShowOpponent: true,
-                                mode: SelectCardEffect.Mode.Custom,
-                                root: SelectCardEffect.Root.Custom,
-                                customRootCardList: card.PermanentOfThisCard().DigivolutionCards,
-                                canLookReverseCard: true,
-                                selectPlayer: card.Owner,
-                                cardEffect: activateClass);
-
-                            yield return ContinuousController.instance.StartCoroutine(selectCardEffect.Activate());
+                                        canTargetCondition: CanSelectCardCondition,
+                                        canTargetCondition_ByPreSelecetedList: null,
+                                        canEndSelectCondition: null,
+                                        canNoSelect: () => true,
+                                        selectCardCoroutine: SelectCardCoroutine,
+                                        afterSelectCardCoroutine: null,
+                                        message: "Select 1 digivolution card to play.",
+                                        maxCount: maxCount,
+                                        canEndNotMax: false,
+                                        isShowOpponent: true,
+                                        mode: SelectCardEffect.Mode.Custom,
+                                        root: SelectCardEffect.Root.Custom,
+                                        customRootCardList: selectedPermanent.DigivolutionCards,
+                                        canLookReverseCard: true,
+                                        selectPlayer: card.Owner,
+                                        cardEffect: activateClass);
+
+                            selectCardEffect.SetUpCustomMessage("Select 1 digivolution card to play.", "The opponent is selecting 1 digivolution card to play.");
+
+                            yield return StartCoroutine(selectCardEffect.Activate());
 
                             IEnumerator SelectCardCoroutine(CardSource cardSource)
                             {
@@ -160,15 +111,15 @@ namespace DCGO.CardEffects.BT18
 
                                 yield return null;
                             }
-                        }
 
-                        yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.PlayPermanentCards(
+                            yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.PlayPermanentCards(
                                 cardSources: selectedCards,
                                 activateClass: activateClass,
                                 payCost: false,
                                 isTapped: false,
                                 root: SelectCardEffect.Root.DigivolutionCards,
                                 activateETB: true));
+                        }
                     }
                 }
             }