hooperk 2 mesiacov pred
rodič
commit
c73ba9a271

+ 15 - 17
Assets/Scripts/CardEffect/EX12/Purple/EX12_063.cs

@@ -15,25 +15,20 @@ namespace DCGO.CardEffects.EX12
             {
             {
                 bool PermanentCondition(Permanent targetPermanent)
                 bool PermanentCondition(Permanent targetPermanent)
                 {
                 {
-                    return targetPermanent.TopCard.EqualsTraits("Puppet")
-                            || targetPermanent.TopCard.EqualsTraits("Shambala");
+                    return !targetPermanent.HasPermanentColor(CardColor.White) 
+                        && (targetPermanent.TopCard.EqualsTraits("Puppet")
+                            || targetPermanent.TopCard.EqualsTraits("Shambala"));
                 }
                 }
 
 
-                List<CardColor> validColors = new List<CardColor>(){ CardColor.Red, CardColor.Blue, CardColor.Yellow, CardColor.Green, CardColor.Black, CardColor.Purple };
-
-                foreach(CardColor color in validColors)//Add separate evo condition for each one non-white color
-                {
-                    cardEffects.Add(CardEffectFactory.AddSelfDigivolutionRequirementStaticEffect(
-                        permanentCondition: PermanentCondition,
-                        digivolutionCost: 3,
-                        ignoreDigivolutionRequirement: false,
-                        card: card,
-                        condition: null,
-                        level: 4,
-                        cardColor: color
-                        )
-                    );
-                }
+                cardEffects.Add(CardEffectFactory.AddSelfDigivolutionRequirementStaticEffect(
+                    permanentCondition: PermanentCondition,
+                    digivolutionCost: 3,
+                    ignoreDigivolutionRequirement: false,
+                    card: card,
+                    condition: null,
+                    level: 4
+                    )
+                );
             }
             }
             #endregion
             #endregion
 
 
@@ -134,6 +129,7 @@ namespace DCGO.CardEffects.EX12
                     return cardSource.IsDigimon
                     return cardSource.IsDigimon
                         && cardSource.HasLevel
                         && cardSource.HasLevel
                         && cardSource.Level <= 4
                         && cardSource.Level <= 4
+                        && (cardSource.EqualsTraits("Puppet") || cardSource.EqualsTraits("TB"))
                         && CardEffectCommons.CanPlayAsNewPermanent(cardSource, false, activateClass);
                         && CardEffectCommons.CanPlayAsNewPermanent(cardSource, false, activateClass);
                 }
                 }
                 
                 
@@ -168,6 +164,7 @@ namespace DCGO.CardEffects.EX12
                 ActivateClass activateClass = new();
                 ActivateClass activateClass = new();
                 activateClass.SetUpICardEffect(OnDeletionEffectName, hash => OnDeletionUseCondition(hash, activateClass), card);
                 activateClass.SetUpICardEffect(OnDeletionEffectName, hash => OnDeletionUseCondition(hash, activateClass), card);
                 activateClass.SetUpActivateClass(hash => OnDeletionActivateCondition(hash, activateClass), hash => OnDeletionActivateCoroutine(hash, activateClass), -1, false, OnDeletionEffectDescription());
                 activateClass.SetUpActivateClass(hash => OnDeletionActivateCondition(hash, activateClass), hash => OnDeletionActivateCoroutine(hash, activateClass), -1, false, OnDeletionEffectDescription());
+                activateClass.SetIsSkippable(true);
                 cardEffects.Add(activateClass);
                 cardEffects.Add(activateClass);
             }
             }
 
 
@@ -176,6 +173,7 @@ namespace DCGO.CardEffects.EX12
                 ActivateClass activateClass = new();
                 ActivateClass activateClass = new();
                 activateClass.SetUpICardEffect(OnDeletionEffectName, hash => OnDeletionUseCondition(hash, activateClass), card);
                 activateClass.SetUpICardEffect(OnDeletionEffectName, hash => OnDeletionUseCondition(hash, activateClass), card);
                 activateClass.SetUpActivateClass(hash => OnDeletionActivateCondition(hash, activateClass), hash => OnDeletionActivateCoroutine(hash, activateClass), -1, false, OnDeletionEffectDescription());
                 activateClass.SetUpActivateClass(hash => OnDeletionActivateCondition(hash, activateClass), hash => OnDeletionActivateCoroutine(hash, activateClass), -1, false, OnDeletionEffectDescription());
+                activateClass.SetIsSkippable(true);
                 activateClass.SetIsInheritedEffect(true);
                 activateClass.SetIsInheritedEffect(true);
                 cardEffects.Add(activateClass);
                 cardEffects.Add(activateClass);
             }
             }

+ 9 - 0
Assets/Scripts/Script/Permanent.cs

@@ -781,6 +781,15 @@ public class Permanent
     }
     }
     #endregion
     #endregion
 
 
+    #region Color of the permanent
+    public bool HasPermanentColor(CardColor color)
+    {
+        if (TopCard == null) return false;
+
+        return TopCard.CardColors.Contains(color);
+    }
+    #endregion
+
     #region Can be returned to deck?
     #region Can be returned to deck?
     public bool CannotReturnToLibrary(ICardEffect cardEffect)
     public bool CannotReturnToLibrary(ICardEffect cardEffect)
     {
     {