mbunch_kascope 1 год назад
Родитель
Сommit
91bcdc005b

+ 3 - 4
Assets/CardEffect/BT21/Red/BT21_020.cs

@@ -28,11 +28,10 @@ namespace DCGO.CardEffects.BT21
                 {
                     if (CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card))
                     {
-                        if (permanent.cardSources.Find(source =>
-                                                        (source.EqualsCardName("Agunimon") || source.EqualsCardName("BurningGreymon")) &&
-                                                        source.CanPlayCardTargetFrame(permanent.PermanentFrame, true, activateClass)))
+                        if (permanent.DigivolutionCards.Find(source =>
+                                                        (source.EqualsCardName("Agunimon") || source.EqualsCardName("BurningGreymon"))))
                         {
-                            return true;
+                            return card.CanPlayCardTargetFrame(permanent.PermanentFrame, true, activateClass);
                         }
                     }
                     return false;

+ 0 - 1
Assets/CardEffect/BT21/Red/BT21_022.cs

@@ -213,7 +213,6 @@ namespace DCGO.CardEffects.BT21
                             {
                                 return true;
                             }
-                            return true;
                         }
                     }
                     return false;

+ 30 - 12
Assets/CardEffect/BT21/Red/BT21_030.cs

@@ -55,7 +55,7 @@ namespace DCGO.CardEffects.BT21
                 {
                     if (cardSource == card)
                     {
-                        DigiXrosConditionElement element = new DigiXrosConditionElement(CanSelectCardCondition, "[OmniShoutmon]/[ZeigGreymon]");
+                        DigiXrosConditionElement element = new DigiXrosConditionElement(CanSelectCardCondition, "1 Digimon card with [Xros Heart] or [Blue Flare] trait");
 
                         bool CanSelectCardCondition(CardSource cardSource)
                         {
@@ -81,17 +81,34 @@ namespace DCGO.CardEffects.BT21
                             return false;
                         }
 
-                        List<DigiXrosConditionElement> elements = new List<DigiXrosConditionElement>() { element };
+                        List<DigiXrosConditionElement> elements = new List<DigiXrosConditionElement>();
 
-                        bool CanTargetCondition_ByPreSelectedList(List<CardSource> cardSources, CardSource cardSource)
+                        for (int i = 0; i < 50; i++)
                         {
-                            return !cardSources
-                                .Select(cs => cs.CardID)
-                                .Distinct()
-                                .Contains(cardSource.CardID);
+                            elements.Add(element);
                         }
 
-                        DigiXrosCondition digiXrosCondition = new DigiXrosCondition(elements, CanTargetCondition_ByPreSelectedList, 1);
+                        bool CanTargetCondition_ByPreSelecetedList(List<CardSource> cardSources, CardSource cardSource)
+                        {
+                            List<string> cardIDs = new List<string>();
+
+                            foreach (CardSource cardSource1 in cardSources)
+                            {
+                                if (!cardIDs.Contains(cardSource1.CardID))
+                                {
+                                    cardIDs.Add(cardSource1.CardID);
+                                }
+                            }
+
+                            if (cardIDs.Contains(cardSource.CardID))
+                            {
+                                return false;
+                            }
+
+                            return true;
+                        }
+
+                        DigiXrosCondition digiXrosCondition = new DigiXrosCondition(elements, CanTargetCondition_ByPreSelecetedList, 1);
 
                         return digiXrosCondition;
                     }
@@ -109,19 +126,19 @@ namespace DCGO.CardEffects.BT21
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Play Cost -1 and select trash cards for a DigiXros", CanUseCondition, card);
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
-                activateClass.SetHashString("PlayCost-1_BT21-030");
+                activateClass.SetHashString("PlayCost-1_BT12_112");
                 cardEffects.Add(activateClass);
 
                 string EffectDiscription()
                 {
-                    return "When this card would be played, by placing 1 of your [Shoutmon] under it, reduce the play cost by 1 and cards in your trash can also be placed for DigiXros.";
+                    return "When you would play this card from your hand, by placing 1 of your [Shoutmon] as a digivolution card under this Digimon, reduce its play cost by 1 and place the cards in your trash as digivolution cards for a DigiXros.";
                 }
 
                 bool CanSelectPermanentCondition(Permanent permanent)
                 {
                     if (CardEffectCommons.IsPermanentExistsOnOwnerBattleArea(permanent, card))
                     {
-                        if (permanent.TopCard.EqualsCardName("Shoutmon"))
+                        if (permanent.TopCard.CardNames.Contains("Shoutmon"))
                         {
                             if (permanent.CanSelectBySkill(activateClass))
                             {
@@ -168,7 +185,8 @@ namespace DCGO.CardEffects.BT21
                 {
                     if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
                     {
-                        int maxCount = Math.Min(1, CardEffectCommons.MatchConditionPermanentCount(CanSelectPermanentCondition));
+                        int maxCount = 1;
+
                         SelectPermanentEffect selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
 
                         selectPermanentEffect.SetUp(

+ 2 - 3
Assets/CardEffect/BT21/Red/BT21_091.cs

@@ -96,9 +96,8 @@ namespace DCGO.CardEffects.BT21
                         if (cardTrashed)
                         {
                             yield return ContinuousController.instance.StartCoroutine(new DrawClass(card.Owner, 2, activateClass).Draw());
+                            yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.PlaceDelayOptionCards(card: card, cardEffect: activateClass));
                         }
-
-                        yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.PlaceDelayOptionCards(card: card, cardEffect: activateClass));
                     }
                 }
             }
@@ -107,7 +106,7 @@ namespace DCGO.CardEffects.BT21
 
             #region All Turns - Delay
 
-            if (timing == EffectTiming.OnAddDigivolutionCards)
+            if (timing == EffectTiming.OnEnterFieldAnyone)
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Your 1 Digimon digivolves", CanUseCondition, card);