mbunch_kascope vor 2 Jahren
Ursprung
Commit
ce51e37495
35 geänderte Dateien mit 914 neuen und 303 gelöschten Zeilen
  1. 2 2
      Assets/CardBaseEntity/EX3/Red/Digimon/フレアリザモン-EX3-006.asset
  2. 3 2
      Assets/CardEffect/BT15/Black/Megadramon_BT15_064.cs
  3. 1 1
      Assets/CardEffect/BT15/Black/WaruMonzaemon_BT15_065.cs
  4. 11 5
      Assets/CardEffect/BT15/Blue/Gomamon_X_Antibody_BT15_021.cs
  5. 11 5
      Assets/CardEffect/BT15/Blue/MegaSeadramon_BT15_029.cs
  6. 11 5
      Assets/CardEffect/BT15/Blue/WereGarurumon_ACE_BT15_026.cs
  7. 11 5
      Assets/CardEffect/BT15/Green/Palmon_X_Antibody_BT15_045.cs
  8. 11 5
      Assets/CardEffect/BT15/Purple/Gesomon_BT15_074.cs
  9. 10 7
      Assets/CardEffect/BT15/Purple/Myotismon_ACE_BT15_076.cs
  10. 16 5
      Assets/CardEffect/BT15/Purple/VenomMyotismon_BT15_080.cs
  11. 1 1
      Assets/CardEffect/BT16/Black/DoruDjinn_BT16_098.cs
  12. 1 1
      Assets/CardEffect/BT16/Black/Dorugoramon_BT16_064.cs
  13. 10 5
      Assets/CardEffect/BT16/Black/Namakemon_BT16_055.cs
  14. 11 5
      Assets/CardEffect/BT16/Black/Sealsdramon_BT16_054.cs
  15. 170 139
      Assets/CardEffect/BT16/Blue/ExVeemon_BT16_018.cs
  16. 135 3
      Assets/CardEffect/BT16/Green/MetallifeKuwagamon_BT16_045.cs
  17. 87 3
      Assets/CardEffect/BT16/Green/Runnermon_BT16_043.cs
  18. 86 3
      Assets/CardEffect/BT16/Purple/Cerberusmon_BT16_075.cs
  19. 76 3
      Assets/CardEffect/BT16/Purple/Dobermon_BT16_068.cs
  20. 92 3
      Assets/CardEffect/BT16/Purple/Pharaohmon_BT16_078.cs
  21. 2 2
      Assets/CardEffect/BT16/Purple/Sethmon_BT16_070.cs
  22. 47 3
      Assets/CardEffect/BT16/Red/ValkyrimonAce_BT16_013.cs
  23. 2 2
      Assets/CardEffect/BT16/Yellow/DragonBreath_BT16_094.cs
  24. 4 23
      Assets/CardEffect/BT17/Black/Keramon_BT17_053.cs
  25. 4 5
      Assets/CardEffect/BT17/White/Eosmon_BT17_075.cs
  26. 1 1
      Assets/CardEffect/EX5/Red/Fairamon_EX5_008.cs
  27. 16 9
      Assets/CardEffect/EX6/Yellow/OphanimonAce_EX6_027.cs
  28. 17 15
      Assets/CardEffect/EX6/Yellow/SeraphimonAce_EX6_028.cs
  29. 10 6
      Assets/CardEffect/LM/Blue/Cthyllamon_LM_006.cs
  30. 13 5
      Assets/CardEffect/LM/Blue/Thetismon_LM_004.cs
  31. 13 7
      Assets/CardEffect/LM/Green/Diarbbitmon_LM_013.cs
  32. 13 7
      Assets/CardEffect/LM/Green/Lamortmon_LM_012.cs
  33. 13 7
      Assets/CardEffect/LM/Green/SymbareAngoramon_LM_011.cs
  34. 2 2
      Assets/CardEffect/LM/Red/Siriusmon_LM_001.cs
  35. 1 1
      ProjectSettings/ProjectSettings.asset

+ 2 - 2
Assets/CardBaseEntity/EX3/Red/Digimon/フレアリザモン-EX3-006.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:1d0ac829702f622cccd53069be840aace334d629854fe1c72e1b44f8b98bfa72
-size 2233
+oid sha256:c66c83a3ce5595ec663f26d9df09b11e775f386e9844e5722f3caae3cc78053b
+size 1727

+ 3 - 2
Assets/CardEffect/BT15/Black/Megadramon_BT15_064.cs

@@ -38,13 +38,14 @@ public class Megadramon_BT15_064 : CEntity_Effect
         {
             ActivateClass activateClass = new ActivateClass();
             activateClass.SetUpICardEffect("De-Digivolve 1 on 1 Digimon", CanUseCondition, card);
-            activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
+            activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
             activateClass.SetIsInheritedEffect(true);
+            activateClass.SetHashString("AttackESS_BT15_064");
             cardEffects.Add(activateClass);
 
             string EffectDiscription()
             {
-                return "[When Attacking] [De-Digivolve] 1 of your opponent's Digimon (Trash up to 1 card from the top of one of your opponent's Digimon. If it has no digivolution cards, or becomes a level 3 Digimon, you can't trash any more cards).";
+                return "[When Attacking] [Once Per Turn] <De-Digivolve 1> 1 of your opponent's Digimon.";
             }
 
             bool CanSelectPermanentCondition(Permanent permanent)

+ 1 - 1
Assets/CardEffect/BT15/Black/WaruMonzaemon_BT15_065.cs

@@ -345,7 +345,7 @@ public class WaruMonzaemon_BT15_065 : CEntity_Effect
 
             string EffectDiscription()
             {
-                return "[On Play] [When Digivolving] By trashing 1 card with [Numemon] in it's name in your hand or from the bottom of this Digimon's digivolution cards, [De-Digivolve 1] 1 of your opponent's Digimon.";
+                return "[When Digivolving] By trashing 1 card with [Numemon] in it's name in your hand or from the bottom of this Digimon's digivolution cards, [De-Digivolve 1] 1 of your opponent's Digimon.";
             }
 
             bool CanSelectCardCondition(CardSource cardSource)

+ 11 - 5
Assets/CardEffect/BT15/Blue/Gomamon_X_Antibody_BT15_021.cs

@@ -25,11 +25,7 @@ public class Gomamon_X_Antibody_BT15_021 : CEntity_Effect
         #endregion
 
         #region On Play/When Digivolving Shared
-        string EffectSharedDiscription()
-        {
-            return "[On Play] [When Digivolving] Reveal the top 3 cards of your deck. Add 1 card with the [Sea Beast], [Plesiosaur], [Beastkin] or [X Antibody] trait among them to the hand.";
-        }
-
+        
         bool CanSelectCardCondition(CardSource cardSource)
         {
             if (cardSource.ContainsTraits("Sea Beast"))
@@ -77,6 +73,11 @@ public class Gomamon_X_Antibody_BT15_021 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[On Play] Reveal the top 3 cards of your deck. Add 1 card with the [Sea Beast], [Plesiosaur], [Beastkin] or [X Antibody] trait among them to the hand.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerOnPlay(hashtable, card); 
@@ -111,6 +112,11 @@ public class Gomamon_X_Antibody_BT15_021 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[When Digivolving] Reveal the top 3 cards of your deck. Add 1 card with the [Sea Beast], [Plesiosaur], [Beastkin] or [X Antibody] trait among them to the hand.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return  CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 11 - 5
Assets/CardEffect/BT15/Blue/MegaSeadramon_BT15_029.cs

@@ -11,11 +11,7 @@ public class MegaSeadramon_BT15_029 : CEntity_Effect
         List<ICardEffect> cardEffects = new List<ICardEffect>();
 
         #region On Play/When Digivolving Shared
-        string EffectSharedDiscription()
-        {
-            return "[On Play] [When Digivolving] By placing 1 of your other blue Digimon as this Digimon's bottom digivolution card, return 1 of your opponent's Digimon whose level is less than or equal to the placed card's level to the bottom of the deck.";
-        }
-
+        
         bool CanSelectSharedOwnPermanentCondition(Permanent permanent)
         {
             if (CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card))
@@ -63,6 +59,11 @@ public class MegaSeadramon_BT15_029 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, true, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[On Play] By placing 1 of your other blue Digimon as this Digimon's bottom digivolution card, return 1 of your opponent's Digimon whose level is less than or equal to the placed card's level to the bottom of the deck.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -151,6 +152,11 @@ public class MegaSeadramon_BT15_029 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, true, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[When Digivolving] By placing 1 of your other blue Digimon as this Digimon's bottom digivolution card, return 1 of your opponent's Digimon whose level is less than or equal to the placed card's level to the bottom of the deck.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 11 - 5
Assets/CardEffect/BT15/Blue/WereGarurumon_ACE_BT15_026.cs

@@ -38,11 +38,7 @@ public class WereGarurumon_ACE_BT15_026 : CEntity_Effect
         }
 
         #region On Play/When Digivolving Shared
-        string EffectSharedDiscription()
-        {
-            return "[On Play] [When Digivolving] Trigger <Draw 1>. (Draw 1 card from your deck.)";
-        }
-
+        
         bool CanActivateSharedCondition(Hashtable hashtable)
         {
             if (CardEffectCommons.IsExistOnBattleArea(card))
@@ -70,6 +66,11 @@ public class WereGarurumon_ACE_BT15_026 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[On Play] Trigger <Draw 1>. (Draw 1 card from your deck.)";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerOnPlay(hashtable, card); 
@@ -113,6 +114,11 @@ public class WereGarurumon_ACE_BT15_026 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[When Digivolving] Trigger <Draw 1>. (Draw 1 card from your deck.)";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 11 - 5
Assets/CardEffect/BT15/Green/Palmon_X_Antibody_BT15_045.cs

@@ -29,11 +29,7 @@ public class Palmon_X_Antibody_BT15_045 : CEntity_Effect
         }
 
         #region On Play/When Digivolving Shared
-        string EffectSharedDiscription()
-        {
-            return "[On Play] [When Digivolving] Suspend 1 of your opponent's Digimon.";
-        }
-
+        
         bool CanSelectPermanentCondition(Permanent permanent)
         {
             return CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card);
@@ -61,6 +57,11 @@ public class Palmon_X_Antibody_BT15_045 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[On Play] Suspend 1 of your opponent's Digimon.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -101,6 +102,11 @@ public class Palmon_X_Antibody_BT15_045 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[When Digivolving] Suspend 1 of your opponent's Digimon.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 11 - 5
Assets/CardEffect/BT15/Purple/Gesomon_BT15_074.cs

@@ -18,11 +18,7 @@ public class Gesomon_BT15_074 : CEntity_Effect
         }
 
         #region On Play/When Digivolving Shared
-        string EffectSharedDiscription()
-        {
-            return "[On Play] [When Digivolving] Your opponent may trash 1 Digimon card in their hand. If they don't, gain 1 memory.";
-        }
-
+        
         bool CanSelectCardCondition(CardSource cardSource)
         {
             if (cardSource.Owner == card.Owner.Enemy)
@@ -45,6 +41,11 @@ public class Gesomon_BT15_074 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[On Play] Your opponent may trash 1 Digimon card in their hand. If they don't, gain 1 memory.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -121,6 +122,11 @@ public class Gesomon_BT15_074 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectSharedDiscription()
+            {
+                return "[When Digivolving] Your opponent may trash 1 Digimon card in their hand. If they don't, gain 1 memory.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 10 - 7
Assets/CardEffect/BT15/Purple/Myotismon_ACE_BT15_076.cs

@@ -21,13 +21,6 @@ public class Myotismon_ACE_BT15_076 : CEntity_Effect
             cardEffects.Add(CardEffectFactory.BlockerSelfStaticEffect(isInheritedEffect: false, card: card, condition: null));
         }
 
-        #region On Play/When Digivolving Shared
-        string EffectDiscription()
-        {
-            return "[On Play] [When Digivolving] You may play 1 purple level 3 Digimon card or 1 purple Tamer card from your trash without paying the cost.";
-        }
-        #endregion
-
         #region On Play
         if (timing == EffectTiming.OnEnterFieldAnyone)
         {
@@ -36,6 +29,11 @@ public class Myotismon_ACE_BT15_076 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectDiscription()
+            {
+                return "[On Play] You may play 1 purple level 3 Digimon card or 1 purple Tamer card from your trash without paying the cost.";
+            }
+
             bool CanSelectCardCondition(CardSource cardSource)
             {
                 if (CardEffectCommons.CanPlayAsNewPermanent(cardSource: cardSource, payCost: false, cardEffect: activateClass))
@@ -141,6 +139,11 @@ public class Myotismon_ACE_BT15_076 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectDiscription()
+            {
+                return "[When Digivolving] You may play 1 purple level 3 Digimon card or 1 purple Tamer card from your trash without paying the cost.";
+            }
+
             bool CanSelectCardCondition(CardSource cardSource)
             {
                 if (CardEffectCommons.CanPlayAsNewPermanent(cardSource: cardSource, payCost: false, cardEffect: activateClass))

+ 16 - 5
Assets/CardEffect/BT15/Purple/VenomMyotismon_BT15_080.cs

@@ -18,11 +18,7 @@ public class VenomMyotismon_BT15_080 : CEntity_Effect
         }
 
         #region On Play/When Digivolving/On Deletion Shared
-        string EffectDiscription()
-        {
-            return "[On Play] [When Digivolving] [On Deletion] Delete 1 of your opponent's level 5 or lower Digimon.";
-        }
-
+        
         bool CanSelectPermanentCondition(Permanent permanent)
         {
             if (CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card))
@@ -47,6 +43,11 @@ public class VenomMyotismon_BT15_080 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectDiscription()
+            {
+                return "[On Play] Delete 1 of your opponent's level 5 or lower Digimon.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -100,6 +101,11 @@ public class VenomMyotismon_BT15_080 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectDiscription()
+            {
+                return "[When Digivolving] Delete 1 of your opponent's level 5 or lower Digimon.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);
@@ -153,6 +159,11 @@ public class VenomMyotismon_BT15_080 : CEntity_Effect
             activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
             cardEffects.Add(activateClass);
 
+            string EffectDiscription()
+            {
+                return "[On Deletion] Delete 1 of your opponent's level 5 or lower Digimon.";
+            }
+
             bool CanUseCondition(Hashtable hashtable)
             {
                 return CardEffectCommons.CanTriggerOnDeletion(hashtable, card);

+ 1 - 1
Assets/CardEffect/BT16/Black/DoruDjinn_BT16_098.cs

@@ -26,7 +26,7 @@ namespace DCGO.CardEffects.BT16
                 {
                     if (CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card))
                     {
-                        if(permanent.TopCard.CardNames.Contains("Dorugoramon"))
+                        if(permanent.TopCard.ContainsCardName("Dorugoramon"))
                         {
                             return true;
                         }

+ 1 - 1
Assets/CardEffect/BT16/Black/Dorugoramon_BT16_064.cs

@@ -53,7 +53,7 @@ namespace DCGO.CardEffects.BT16
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Delete Unsuspended Digimon or Tamer", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
                 string EffectDiscription()

+ 10 - 5
Assets/CardEffect/BT16/Black/Namakemon_BT16_055.cs

@@ -35,11 +35,6 @@ namespace DCGO.CardEffects.BT16
             #region On Play/When Digivolving Shared
             Permanent selectedPermanent = null;
 
-            string EffectDiscription()
-            {
-                return "[On Play] [When Digivolving] If you have 3 or more security cards, 1 of your Digimon can't have its DP reduced by your opponent's effects, and isn't affected by <De-Digivolve> effects until the end of your opponent's turn. If you have 3 or fewer security cards, 1 of your Digimon gains <Blocker> and <Reboot> until the end of your opponent's turn.";
-            }
-
             bool CanSelectPermanentCondition(Permanent permanent)
             {
                 return CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card);
@@ -105,6 +100,11 @@ namespace DCGO.CardEffects.BT16
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[On Play] If you have 3 or more security cards, 1 of your Digimon can't have its DP reduced by your opponent's effects, and isn't affected by <De-Digivolve> effects until the end of your opponent's turn. If you have 3 or fewer security cards, 1 of your Digimon gains <Blocker> and <Reboot> until the end of your opponent's turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -178,6 +178,11 @@ namespace DCGO.CardEffects.BT16
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] If you have 3 or more security cards, 1 of your Digimon can't have its DP reduced by your opponent's effects, and isn't affected by <De-Digivolve> effects until the end of your opponent's turn. If you have 3 or fewer security cards, 1 of your Digimon gains <Blocker> and <Reboot> until the end of your opponent's turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 11 - 5
Assets/CardEffect/BT16/Black/Sealsdramon_BT16_054.cs

@@ -12,11 +12,7 @@ namespace DCGO.CardEffects.BT16
 
             #region On Play/When Digivolving Shared
 
-            string EffectDiscription()
-            {
-                return "[On Play] [When Digivolving] By returning 3 cards with the [D-Brigade] or [DigiPolice] trait from your trash to the top of the deck, this Digimon gains <Rush>, and can't be blocked for the turn.";
-            }
-
+            
             bool CanSelectCardCondition(CardSource cardSource)
             {
                 if (cardSource.CardTraits.Contains("D-Brigade"))
@@ -56,6 +52,11 @@ namespace DCGO.CardEffects.BT16
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[On Play] By returning 3 cards with the [D-Brigade] or [DigiPolice] trait from your trash to the top of the deck, this Digimon gains <Rush>, and can't be blocked for the turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -129,6 +130,11 @@ namespace DCGO.CardEffects.BT16
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] By returning 3 cards with the [D-Brigade] or [DigiPolice] trait from your trash to the top of the deck, this Digimon gains <Rush>, and can't be blocked for the turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 170 - 139
Assets/CardEffect/BT16/Blue/ExVeemon_BT16_018.cs

@@ -8,168 +8,199 @@ namespace DCGO.CardEffects.BT16
         public override List<ICardEffect> CardEffects(EffectTiming timing, CardSource card)
         {
             var cardEffects = new List<ICardEffect>();
-            
-            switch (timing)
+
+            #region Alternate Digivolution Requirement
+            if (timing == EffectTiming.None)
             {
-                case EffectTiming.None:
-                    #region Alternate Digivolution Requirement
-                    
-                    bool PermanentCondition(Permanent targetPermanent)
-                    {
-                        return targetPermanent.TopCard.CardNames.Contains("Veemon");
-                    }
-                    
-                    cardEffects.Add(CardEffectFactory.AddSelfDigivolutionRequirementStaticEffect(
-                        permanentCondition: PermanentCondition,
-                        digivolutionCost: 2,
-                        ignoreDigivolutionRequirement: false,
-                        card: card,
-                        condition: null)
-                    );
-                    
-                    #endregion
-                    
-                    #region Inherited Effect
-                    bool InheritedEffectCondition()
-                    {
-                        return CardEffectCommons.IsOwnerTurn(card);
-                    }
-                    
-                    cardEffects.Add(CardEffectFactory.ChangeSelfDPStaticEffect(
-                        changeValue: 2000,
-                        isInheritedEffect: true,
-                        card: card,
-                        condition: InheritedEffectCondition));
-                
-                    #endregion
-                    
-                    break;
-                case EffectTiming.OnAllyAttack:
-                    cardEffects.Add(CardEffectFactory.RaidSelfEffect(
+                bool PermanentCondition(Permanent targetPermanent)
+                {
+                    return targetPermanent.TopCard.CardNames.Contains("Veemon");
+                }
+
+                cardEffects.Add(CardEffectFactory.AddSelfDigivolutionRequirementStaticEffect(
+                    permanentCondition: PermanentCondition,
+                    digivolutionCost: 2,
+                    ignoreDigivolutionRequirement: false,
+                    card: card,
+                    condition: null)
+                );
+            }
+            #endregion
+
+            #region Inherited Effect
+            if(timing == EffectTiming.None)
+            {
+                bool InheritedEffectCondition()
+                {
+                    return CardEffectCommons.IsOwnerTurn(card);
+                }
+
+                cardEffects.Add(CardEffectFactory.ChangeSelfDPStaticEffect(
+                    changeValue: 2000,
+                    isInheritedEffect: true,
+                    card: card,
+                    condition: InheritedEffectCondition));
+            }
+            #endregion
+
+            #region Raid
+            if(timing == EffectTiming.OnAllyAttack)
+            {
+                cardEffects.Add(CardEffectFactory.RaidSelfEffect(
                         isInheritedEffect: false,
                         card: card,
                         condition: null)
                     );
-                    break;
-                case EffectTiming.OnEnterFieldAnyone:
-                    var activatePlayClass = new ActivateClass();
-                    activatePlayClass.SetUpICardEffect("Select 1 of your Digimon to gain battle protection", CanUsePlayCondition, card);
-                    activatePlayClass.SetUpActivateClass(CanActivateCondition, ActivatePlayCoroutine, -1, false, EffectDiscription());
-                    cardEffects.Add(activatePlayClass);
-
-                    var activateDigivolveClass = new ActivateClass();
-                    activateDigivolveClass.SetUpICardEffect("Select 1 of your Digimon to gain battle protection", CanUseDigivolveCondition, card);
-                    activateDigivolveClass.SetUpActivateClass(CanActivateCondition, ActivateDigivolveCoroutine, -1, false, EffectDiscription());
-                    cardEffects.Add(activateDigivolveClass);
-
-                    string EffectDiscription()
-                    {
-                        return "[On Play] [When Digivolving] 1 of your Digimon can't be deleted in battle until the end of your opponent's turn.";
-                    }
+            }
+            #endregion
 
-                    bool CanUsePlayCondition(Hashtable hashtable)
-                    {
+            #region On Play
+            if(timing == EffectTiming.OnEnterFieldAnyone)
+            {
+                ActivateClass activatePlayClass = new ActivateClass();
+                activatePlayClass.SetUpICardEffect("Select 1 of your Digimon to gain battle protection", CanUsePlayCondition, card);
+                activatePlayClass.SetUpActivateClass(CanActivateCondition, ActivatePlayCoroutine, -1, false, EffectDiscription());
+                cardEffects.Add(activatePlayClass);
+
+                string EffectDiscription()
+                {
+                    return "[On Play] 1 of your Digimon can't be deleted in battle until the end of your opponent's turn.";
+                }
+
+                bool CanSelectPermanentCondition(Permanent permanent)
+                {
+                    return CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card);
+                }
+
+                bool CanUsePlayCondition(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.IsExistOnBattleAreaDigimon(card))
                         return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
-                    }
 
-                    bool CanUseDigivolveCondition(Hashtable hashtable)
-                    {
-                        return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);
-                    }
+                    return false;
+                }
 
-                    bool CanActivateCondition(Hashtable hashtable)
-                    {
-                        return CardEffectCommons.IsExistOnBattleArea(card);
-                    }
-                    
-                    bool CanSelectPermanentCondition(Permanent permanent)
-                    {
-                        return CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card);
-                    }
+                bool CanActivateCondition(Hashtable hashtable)
+                {
+                    return CardEffectCommons.IsExistOnBattleAreaDigimon(card);
+                }
 
-                    IEnumerator ActivatePlayCoroutine(Hashtable hashtable)
+                IEnumerator ActivatePlayCoroutine(Hashtable hashtable)
+                {
+                    var selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
+
+                    selectPermanentEffect.SetUp(
+                        selectPlayer: card.Owner,
+                        canTargetCondition: CanSelectPermanentCondition,
+                        canTargetCondition_ByPreSelecetedList: null,
+                        canEndSelectCondition: null,
+                        maxCount: 1,
+                        canNoSelect: false,
+                        canEndNotMax: false,
+                        selectPermanentCoroutine: SelectPermanentCoroutine,
+                        afterSelectPermanentCoroutine: null,
+                        mode: SelectPermanentEffect.Mode.Custom,
+                        cardEffect: activatePlayClass);
+
+                    selectPermanentEffect.SetUpCustomMessage(
+                        "Select 1 Digimon that will get effects.",
+                        "The opponent is selecting 1 Digimon that will get effects.");
+
+                    yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+                    yield break;
+
+                    IEnumerator SelectPermanentCoroutine(Permanent permanent)
                     {
-                        var selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
-                        
-                        selectPermanentEffect.SetUp(
-                            selectPlayer: card.Owner,
-                            canTargetCondition: CanSelectPermanentCondition,
-                            canTargetCondition_ByPreSelecetedList: null,
-                            canEndSelectCondition: null,
-                            maxCount: 1,
-                            canNoSelect: false,
-                            canEndNotMax: false,
-                            selectPermanentCoroutine: SelectPermanentCoroutine,
-                            afterSelectPermanentCoroutine: null,
-                            mode: SelectPermanentEffect.Mode.Custom,
-                            cardEffect: activatePlayClass);
-                        
-                        selectPermanentEffect.SetUpCustomMessage(
-                            "Select 1 Digimon that will get effects.",
-                            "The opponent is selecting 1 Digimon that will get effects.");
-                        
-                        yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+                        yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.GainCanNotBeDeletedByBattle(
+                            targetPermanent: permanent,
+                            canNotBeDestroyedByBattleCondition: CanNotBeDestroyedByBattleCondition,
+                            effectDuration: EffectDuration.UntilOpponentTurnEnd,
+                            activateClass: activatePlayClass,
+                            effectName: "Can't be deleted in battle"));
                         yield break;
-                        
-                        IEnumerator SelectPermanentCoroutine(Permanent permanent)
+
+                        bool CanNotBeDestroyedByBattleCondition(Permanent permanent1, Permanent attackingPermanent, Permanent defendingPermanent, CardSource defendingCard)
                         {
-                            yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.GainCanNotBeDeletedByBattle(
-                                targetPermanent: permanent,
-                                canNotBeDestroyedByBattleCondition: CanNotBeDestroyedByBattleCondition,
-                                effectDuration: EffectDuration.UntilOpponentTurnEnd,
-                                activateClass: activatePlayClass,
-                                effectName: "Can't be deleted in battle"));
-                            yield break;
-                            
-                            bool CanNotBeDestroyedByBattleCondition(Permanent permanent1, Permanent attackingPermanent, Permanent defendingPermanent, CardSource defendingCard)
-                            {
-                                return permanent1 == attackingPermanent || permanent1 == defendingPermanent;
-                            }
+                            return permanent1 == attackingPermanent || permanent1 == defendingPermanent;
                         }
                     }
+                }
+            }
+            #endregion
+
+            #region When Digivolving
+            if (timing == EffectTiming.OnEnterFieldAnyone)
+            {
+                ActivateClass activateDigivolveClass = new ActivateClass();
+                activateDigivolveClass.SetUpICardEffect("Select 1 of your Digimon to gain battle protection", CanUseDigivolveCondition, card);
+                activateDigivolveClass.SetUpActivateClass(CanActivateCondition, ActivateDigivolveCoroutine, -1, false, EffectDiscription());
+                cardEffects.Add(activateDigivolveClass);
+
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] 1 of your Digimon can't be deleted in battle until the end of your opponent's turn.";
+                }
+
+                bool CanSelectPermanentCondition(Permanent permanent)
+                {
+                    return CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card);
+                }
+
+                bool CanUseDigivolveCondition(Hashtable hashtable)
+                {
+                    if(CardEffectCommons.IsExistOnBattleAreaDigimon(card))
+                        return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);
+
+                    return false;
+                }
+
+                bool CanActivateCondition(Hashtable hashtable)
+                {
+                    return CardEffectCommons.IsExistOnBattleAreaDigimon(card);
+                }
+
+                IEnumerator ActivateDigivolveCoroutine(Hashtable hashtable)
+                {
+                    var selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
+
+                    selectPermanentEffect.SetUp(
+                        selectPlayer: card.Owner,
+                        canTargetCondition: CanSelectPermanentCondition,
+                        canTargetCondition_ByPreSelecetedList: null,
+                        canEndSelectCondition: null,
+                        maxCount: 1,
+                        canNoSelect: false,
+                        canEndNotMax: false,
+                        selectPermanentCoroutine: SelectPermanentCoroutine,
+                        afterSelectPermanentCoroutine: null,
+                        mode: SelectPermanentEffect.Mode.Custom,
+                        cardEffect: activateDigivolveClass);
+
+                    selectPermanentEffect.SetUpCustomMessage(
+                        "Select 1 Digimon that will get effects.",
+                        "The opponent is selecting 1 Digimon that will get effects.");
+
+                    yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+                    yield break;
 
-                    IEnumerator ActivateDigivolveCoroutine(Hashtable hashtable)
+                    IEnumerator SelectPermanentCoroutine(Permanent permanent)
                     {
-                        var selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
-
-                        selectPermanentEffect.SetUp(
-                            selectPlayer: card.Owner,
-                            canTargetCondition: CanSelectPermanentCondition,
-                            canTargetCondition_ByPreSelecetedList: null,
-                            canEndSelectCondition: null,
-                            maxCount: 1,
-                            canNoSelect: false,
-                            canEndNotMax: false,
-                            selectPermanentCoroutine: SelectPermanentCoroutine,
-                            afterSelectPermanentCoroutine: null,
-                            mode: SelectPermanentEffect.Mode.Custom,
-                            cardEffect: activateDigivolveClass);
-
-                        selectPermanentEffect.SetUpCustomMessage(
-                            "Select 1 Digimon that will get effects.",
-                            "The opponent is selecting 1 Digimon that will get effects.");
-
-                        yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+                        yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.GainCanNotBeDeletedByBattle(
+                            targetPermanent: permanent,
+                            canNotBeDestroyedByBattleCondition: CanNotBeDestroyedByBattleCondition,
+                            effectDuration: EffectDuration.UntilOpponentTurnEnd,
+                            activateClass: activateDigivolveClass,
+                            effectName: "Can't be deleted in battle"));
                         yield break;
 
-                        IEnumerator SelectPermanentCoroutine(Permanent permanent)
+                        bool CanNotBeDestroyedByBattleCondition(Permanent permanent1, Permanent attackingPermanent, Permanent defendingPermanent, CardSource defendingCard)
                         {
-                            yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.GainCanNotBeDeletedByBattle(
-                                targetPermanent: permanent,
-                                canNotBeDestroyedByBattleCondition: CanNotBeDestroyedByBattleCondition,
-                                effectDuration: EffectDuration.UntilOpponentTurnEnd,
-                                activateClass: activateDigivolveClass,
-                                effectName: "Can't be deleted in battle"));
-                            yield break;
-
-                            bool CanNotBeDestroyedByBattleCondition(Permanent permanent1, Permanent attackingPermanent, Permanent defendingPermanent, CardSource defendingCard)
-                            {
-                                return permanent == attackingPermanent || permanent == defendingPermanent;
-                            }
+                            return permanent == attackingPermanent || permanent == defendingPermanent;
                         }
                     }
-                    break;
+                }
             }
+            #endregion
 
             return cardEffects;
         }

+ 135 - 3
Assets/CardEffect/BT16/Green/MetallifeKuwagamon_BT16_045.cs

@@ -14,7 +14,7 @@ namespace DCGO.CardEffects.BT16
         {
             List<ICardEffect> cardEffects = new List<ICardEffect>();
 
-            #region On Play/When Digivolving
+            #region On Play
             if (timing == EffectTiming.OnEnterFieldAnyone)
             {
                 ActivateClass activateClass = new ActivateClass();
@@ -24,12 +24,144 @@ namespace DCGO.CardEffects.BT16
 
                 string EffectDiscription()
                 {
-                    return "[On Play] [When Digivolving] You may suspend 1 Digimon. Then, 1 of your Digimon gets +3000 DP until the end of your opponent's turn.";
+                    return "[On Play] You may suspend 1 Digimon. Then, 1 of your Digimon gets +3000 DP until the end of your opponent's turn.";
                 }
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card) || CardEffectCommons.CanTriggerOnPlay(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
+                }
+
+                bool PermanentCondition(Permanent permanent)
+                {
+                    if (CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card) || CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card))
+                    {
+                        return true;
+                    }
+                    return false;
+                }
+
+                bool PermanentConditionForSecondEffect(Permanent permanent)
+                {
+                    if (CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card))
+                    {
+                        return true;
+                    }
+                    return false;
+                }
+
+                bool CanActivateCondition(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.IsExistOnBattleArea(card))
+                    {
+                        return true;
+                    }
+
+                    return false;
+                }
+
+
+                IEnumerator ActivateCoroutine(Hashtable hashtable)
+                {
+                    List<SelectionElement<bool>> selectionElements = new List<SelectionElement<bool>>()
+                        {
+                            new SelectionElement<bool>(message: $"Yes", value : true, spriteIndex: 0),
+                            new SelectionElement<bool>(message: $"No", value : false, spriteIndex: 1),
+                        };
+
+                    string selectPlayerMessage = "Will you suspend 1 Digimon?";
+                    string notSelectPlayerMessage = "The opponent is choosing whether or not to suspend a Digimon.";
+
+                    GManager.instance.userSelectionManager.SetBoolSelection(selectionElements: selectionElements, selectPlayer: card.Owner, selectPlayerMessage: selectPlayerMessage, notSelectPlayerMessage: notSelectPlayerMessage);
+
+                    yield return ContinuousController.instance.StartCoroutine(GManager.instance.userSelectionManager.WaitForEndSelect());
+
+                    bool willSuspend = GManager.instance.userSelectionManager.SelectedBoolValue;
+
+                    if (willSuspend)
+                    {
+                        if (CardEffectCommons.HasMatchConditionPermanent(PermanentCondition))
+                        {
+
+                            int maxCount = Math.Min(1, CardEffectCommons.MatchConditionPermanentCount(PermanentCondition));
+
+                            SelectPermanentEffect selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
+
+                            selectPermanentEffect.SetUp(
+                                selectPlayer: card.Owner,
+                                canTargetCondition: PermanentCondition,
+                                canTargetCondition_ByPreSelecetedList: null,
+                                canEndSelectCondition: null,
+                                maxCount: maxCount,
+                                canNoSelect: false,
+                                canEndNotMax: false,
+                                selectPermanentCoroutine: null,
+                                afterSelectPermanentCoroutine: null,
+                                mode: SelectPermanentEffect.Mode.Tap,
+                                cardEffect: activateClass);
+
+                            selectPermanentEffect.SetUpCustomMessage("Select 1 Digimon to suspend.", "The opponent is selecting 1 Digimon to suspend.");
+
+                            yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+
+                        }
+                    }
+
+                    if (CardEffectCommons.HasMatchConditionPermanent(PermanentConditionForSecondEffect))
+                    {
+                        int maxCount = Math.Min(1, CardEffectCommons.MatchConditionPermanentCount(PermanentConditionForSecondEffect));
+
+                        SelectPermanentEffect selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
+
+                        selectPermanentEffect.SetUp(
+                            selectPlayer: card.Owner,
+                            canTargetCondition: PermanentConditionForSecondEffect,
+                            canTargetCondition_ByPreSelecetedList: null,
+                            canEndSelectCondition: null,
+                            maxCount: maxCount,
+                            canNoSelect: false,
+                            canEndNotMax: false,
+                            selectPermanentCoroutine: SelectPermanentCoroutine,
+                            afterSelectPermanentCoroutine: null,
+                            mode: SelectPermanentEffect.Mode.Custom,
+                            cardEffect: activateClass);
+
+                        selectPermanentEffect.SetUpCustomMessage(
+                            "Select 1 Digimon that will get DP +3000.",
+                            "The opponent is selecting 1 Digimon that will get DP +3000.");
+
+                        yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+
+                        IEnumerator SelectPermanentCoroutine(Permanent permanent)
+                        {
+                            yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.ChangeDigimonDP(
+                                targetPermanent: permanent,
+                                changeValue: 3000,
+                                effectDuration: EffectDuration.UntilOpponentTurnEnd,
+                                activateClass: activateClass));
+                        }
+                    }
+
+                }
+            }
+            #endregion
+
+            #region When Digivolving
+            if (timing == EffectTiming.OnEnterFieldAnyone)
+            {
+                ActivateClass activateClass = new ActivateClass();
+                activateClass.SetUpICardEffect("Suspend and gain DP", CanUseCondition, card);
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
+                cardEffects.Add(activateClass);
+
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] You may suspend 1 Digimon. Then, 1 of your Digimon gets +3000 DP until the end of your opponent's turn.";
+                }
+
+                bool CanUseCondition(Hashtable hashtable)
+                {
+                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);
                 }
 
                 bool PermanentCondition(Permanent permanent)

+ 87 - 3
Assets/CardEffect/BT16/Green/Runnermon_BT16_043.cs

@@ -26,7 +26,7 @@ namespace DCGO.CardEffects.BT16
             }
             #endregion
 
-            #region On Play/When Digivolving
+            #region On Play
             if (timing == EffectTiming.OnEnterFieldAnyone)
             {
                 ActivateClass activateClass = new ActivateClass();
@@ -36,12 +36,96 @@ namespace DCGO.CardEffects.BT16
 
                 string EffectDiscription()
                 {
-                    return "[On Play] [When Digivolving] If you have 3 or more security cards, suspend 1 of your opponent's Digimon. If you have 3 or fewer security cards, gain 1 memory.";
+                    return "[On Play] If you have 3 or more security cards, suspend 1 of your opponent's Digimon. If you have 3 or fewer security cards, gain 1 memory.";
                 }
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card) || CardEffectCommons.CanTriggerOnPlay(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
+                }
+
+                bool PermanentCondition(Permanent permanent)
+                {
+                    if (CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card))
+                    {
+                        return true;
+                    }
+                    return false;
+                }
+
+                bool CanActivateCondition(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.IsExistOnBattleArea(card))
+                    {
+                        if (card.Owner.SecurityCards.Count >= 3)
+                        {
+                            if (CardEffectCommons.HasMatchConditionOpponentsPermanent(card, PermanentCondition))
+                            {
+                                return true;
+                            }
+                        }
+
+                        if (card.Owner.SecurityCards.Count <= 3)
+                        {
+                            return true;
+                        }
+                    }
+
+                    return false;
+                }
+
+
+                IEnumerator ActivateCoroutine(Hashtable hashtable)
+                {
+                    if (card.Owner.SecurityCards.Count >= 3)
+                    {
+                        int maxCount = Math.Min(1, CardEffectCommons.MatchConditionPermanentCount(PermanentCondition));
+
+                        SelectPermanentEffect selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
+
+                        selectPermanentEffect.SetUp(
+                            selectPlayer: card.Owner,
+                            canTargetCondition: PermanentCondition,
+                            canTargetCondition_ByPreSelecetedList: null,
+                            canEndSelectCondition: null,
+                            maxCount: maxCount,
+                            canNoSelect: false,
+                            canEndNotMax: false,
+                            selectPermanentCoroutine: null,
+                            afterSelectPermanentCoroutine: null,
+                            mode: SelectPermanentEffect.Mode.Tap,
+                            cardEffect: activateClass);
+
+                        selectPermanentEffect.SetUpCustomMessage("Select 1 Digimon to suspend.", "The opponent is selecting 1 Digimon to suspend.");
+
+                        yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+
+                    }
+                    if (card.Owner.SecurityCards.Count <= 3)
+                    {
+                        yield return ContinuousController.instance.StartCoroutine(card.Owner.AddMemory(1, activateClass));
+                    }
+
+                }
+            }
+            #endregion
+
+            #region When Digivolving
+            if (timing == EffectTiming.OnEnterFieldAnyone)
+            {
+                ActivateClass activateClass = new ActivateClass();
+                activateClass.SetUpICardEffect("Suspend and/or gain memory", CanUseCondition, card);
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
+                cardEffects.Add(activateClass);
+
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] If you have 3 or more security cards, suspend 1 of your opponent's Digimon. If you have 3 or fewer security cards, gain 1 memory.";
+                }
+
+                bool CanUseCondition(Hashtable hashtable)
+                {
+                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);
                 }
 
                 bool PermanentCondition(Permanent permanent)

+ 86 - 3
Assets/CardEffect/BT16/Purple/Cerberusmon_BT16_075.cs

@@ -14,7 +14,7 @@ namespace DCGO.CardEffects.BT16
         {
             List<ICardEffect> cardEffects = new List<ICardEffect>();
 
-            #region On Play / When Digivolving
+            #region On Play
             if (timing == EffectTiming.OnEnterFieldAnyone)
             {
                 ActivateClass activateClass = new ActivateClass();
@@ -24,7 +24,7 @@ namespace DCGO.CardEffects.BT16
 
                 string EffectDiscription()
                 {
-                    return "[On Play] [When Digivolving] You may return 1 Digimon with the [Dark Animal] or [Shaman] trait from your trash to your hand.";
+                    return "[On Play] You may return 1 Digimon with the [Dark Animal] or [Shaman] trait from your trash to your hand.";
                 }
 
                 bool CanSelectCardCondition(CardSource cardSource)
@@ -52,7 +52,90 @@ namespace DCGO.CardEffects.BT16
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerOnPlay(hashtable,card) || CardEffectCommons.CanTriggerWhenDigivolving(hashtable,card);
+                    return CardEffectCommons.CanTriggerOnPlay(hashtable,card);
+                }
+
+                bool CanActivateCondition(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.IsExistOnBattleArea(card))
+                    {
+                        return true;
+                    }
+
+                    return false;
+                }
+
+                IEnumerator ActivateCoroutine(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.HasMatchConditionOwnersCardInTrash(card, CanSelectCardCondition))
+                    {
+                        int maxCount = Math.Min(1, card.Owner.TrashCards.Count(CanSelectCardCondition));
+
+                        SelectCardEffect selectCardEffect = GManager.instance.GetComponent<SelectCardEffect>();
+
+                        selectCardEffect.SetUp(
+                            canTargetCondition: CanSelectCardCondition,
+                            canTargetCondition_ByPreSelecetedList: null,
+                            canEndSelectCondition: null,
+                            canNoSelect: () => true,
+                            selectCardCoroutine: null,
+                            afterSelectCardCoroutine: null,
+                            message: "Select 1 card to add to your hand.",
+                            maxCount: maxCount,
+                            canEndNotMax: false,
+                            isShowOpponent: true,
+                            mode: SelectCardEffect.Mode.AddHand,
+                            root: SelectCardEffect.Root.Trash,
+                            customRootCardList: null,
+                            canLookReverseCard: true,
+                            selectPlayer: card.Owner,
+                            cardEffect: activateClass);
+
+                        yield return ContinuousController.instance.StartCoroutine(selectCardEffect.Activate());
+                    }
+                }
+            }
+            #endregion
+
+            #region When Digivolving
+            if (timing == EffectTiming.OnEnterFieldAnyone)
+            {
+                ActivateClass activateClass = new ActivateClass();
+                activateClass.SetUpICardEffect("Return 1 Dark Animal or Shaman from your trash to your hand.", CanUseCondition, card);
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
+                cardEffects.Add(activateClass);
+
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] You may return 1 Digimon with the [Dark Animal] or [Shaman] trait from your trash to your hand.";
+                }
+
+                bool CanSelectCardCondition(CardSource cardSource)
+                {
+                    if (cardSource.IsDigimon)
+                    {
+                        if (cardSource.CardTraits.Contains("Dark Animal"))
+                        {
+                            return true;
+                        }
+
+                        if (cardSource.CardTraits.Contains("DarkAnimal"))
+                        {
+                            return true;
+                        }
+
+                        if (cardSource.CardTraits.Contains("Shaman"))
+                        {
+                            return true;
+                        }
+                    }
+
+                    return false;
+                }
+
+                bool CanUseCondition(Hashtable hashtable)
+                {
+                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 76 - 3
Assets/CardEffect/BT16/Purple/Dobermon_BT16_068.cs

@@ -14,7 +14,7 @@ namespace DCGO.CardEffects.BT16
         {
             List<ICardEffect> cardEffects = new List<ICardEffect>();
 
-            #region When Digivolving/On Play
+            #region On Play
             if (timing == EffectTiming.OnEnterFieldAnyone)
             {
                 ActivateClass activateClass = new ActivateClass();
@@ -24,7 +24,7 @@ namespace DCGO.CardEffects.BT16
 
                 string EffectDiscription()
                 {
-                    return "[On Play] [When Digivolving] 1 of your Digimon gains [Blocker] until the end of your opponent's turn.";
+                    return "[On Play] 1 of your Digimon gains [Blocker] until the end of your opponent's turn.";
                 }
 
                 bool CanSelectPermanentCondition(Permanent permanent)
@@ -34,7 +34,80 @@ namespace DCGO.CardEffects.BT16
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card) || CardEffectCommons.CanTriggerOnPlay(hashtable, card);
+                    return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
+                }
+
+                bool CanActivateCondition(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.IsExistOnBattleArea(card))
+                    {
+                        if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
+                        {
+                            return true;
+                        }
+                    }
+
+                    return false;
+                }
+
+                IEnumerator ActivateCoroutine(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
+                    {
+                        int maxCount = Math.Min(1, CardEffectCommons.MatchConditionPermanentCount(CanSelectPermanentCondition));
+
+                        SelectPermanentEffect selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
+
+                        selectPermanentEffect.SetUp(
+                            selectPlayer: card.Owner,
+                            canTargetCondition: CanSelectPermanentCondition,
+                            canTargetCondition_ByPreSelecetedList: null,
+                            canEndSelectCondition: null,
+                            maxCount: maxCount,
+                            canNoSelect: false,
+                            canEndNotMax: false,
+                            selectPermanentCoroutine: SelectPermanentCoroutine,
+                            afterSelectPermanentCoroutine: null,
+                            mode: SelectPermanentEffect.Mode.Custom,
+                            cardEffect: activateClass);
+
+                        selectPermanentEffect.SetUpCustomMessage("Select 1 Digimon that will get Blocker.", "The opponent is selecting 1 Digimon that will get Blocker.");
+
+                        yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+
+                        IEnumerator SelectPermanentCoroutine(Permanent selectedPermanent)
+                        {
+                            yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.GainBlocker(
+                                targetPermanent: selectedPermanent,
+                                effectDuration: EffectDuration.UntilOpponentTurnEnd,
+                                activateClass: activateClass));
+                        }
+                    }
+                }
+            }
+            #endregion
+
+            #region When Digivolving
+            if (timing == EffectTiming.OnEnterFieldAnyone)
+            {
+                ActivateClass activateClass = new ActivateClass();
+                activateClass.SetUpICardEffect("1 of your Digimon gains [Blocker]", CanUseCondition, card);
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
+                cardEffects.Add(activateClass);
+
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] 1 of your Digimon gains [Blocker] until the end of your opponent's turn.";
+                }
+
+                bool CanSelectPermanentCondition(Permanent permanent)
+                {
+                    return CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card);
+                }
+
+                bool CanUseCondition(Hashtable hashtable)
+                {
+                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 92 - 3
Assets/CardEffect/BT16/Purple/Pharaohmon_BT16_078.cs

@@ -14,7 +14,7 @@ namespace DCGO.CardEffects.BT16
         {
             List<ICardEffect> cardEffects = new List<ICardEffect>();
 
-            #region On Play/When Digivolving
+            #region On Play
             if (timing == EffectTiming.OnEnterFieldAnyone)
             {
                 ActivateClass activateClass = new ActivateClass();
@@ -24,7 +24,7 @@ namespace DCGO.CardEffects.BT16
 
                 string EffectDiscription()
                 {
-                    return "[On Play] [When Digivolving] Delete 1 level 4 or lower Digimon.";
+                    return "[On Play] Delete 1 level 4 or lower Digimon.";
                 }
 
                 bool CanSelectPermanentCondition(Permanent permanent)
@@ -48,7 +48,96 @@ namespace DCGO.CardEffects.BT16
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable,card) || CardEffectCommons.CanTriggerOnPlay(hashtable,card);
+                    return CardEffectCommons.CanTriggerOnPlay(hashtable,card);
+                }
+
+                bool CanActivateCondition(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.IsExistOnBattleArea(card))
+                    {
+                        if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
+                        {
+                            return true;
+                        }
+                    }
+
+                    return false;
+                }
+
+                IEnumerator ActivateCoroutine(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
+                    {
+                        int maxCount = Math.Min(1, CardEffectCommons.MatchConditionPermanentCount(CanSelectPermanentCondition));
+
+                        SelectPermanentEffect selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
+
+                        selectPermanentEffect.SetUp(
+                            selectPlayer: card.Owner,
+                            canTargetCondition: CanSelectPermanentCondition,
+                            canTargetCondition_ByPreSelecetedList: null,
+                            canEndSelectCondition: null,
+                            maxCount: maxCount,
+                            canNoSelect: true,
+                            canEndNotMax: false,
+                            selectPermanentCoroutine: SelectPermanentCoroutine,
+                            afterSelectPermanentCoroutine: null,
+                            mode: SelectPermanentEffect.Mode.Custom,
+                            cardEffect: activateClass);
+
+                        selectPermanentEffect.SetUpCustomMessage("Select 1 Digimon to delete.", "The opponent is selecting 1 Digimon to delete.");
+
+                        yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+
+                        IEnumerator SelectPermanentCoroutine(Permanent permanent)
+                        {
+                            yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.DeletePeremanentAndProcessAccordingToResult(targetPermanents: new List<Permanent>() { permanent }, activateClass: activateClass, successProcess: permanents => SuccessProcess(), failureProcess: null));
+
+                            IEnumerator SuccessProcess()
+                            {
+                                yield return null;
+                            }
+                        }
+                    }
+                }
+            }
+            #endregion
+
+            #region When Digivolving
+            if (timing == EffectTiming.OnEnterFieldAnyone)
+            {
+                ActivateClass activateClass = new ActivateClass();
+                activateClass.SetUpICardEffect("Delete 1 level 4 or lower Digimon.", CanUseCondition, card);
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
+                cardEffects.Add(activateClass);
+
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] Delete 1 level 4 or lower Digimon.";
+                }
+
+                bool CanSelectPermanentCondition(Permanent permanent)
+                {
+                    if (CardEffectCommons.IsPermanentExistsOnBattleArea(permanent))
+                    {
+                        if (permanent.Level <= 4)
+                        {
+                            if (!permanent.TopCard.CanNotBeAffected(activateClass))
+                            {
+                                if (permanent.CanBeDestroyedBySkill(activateClass))
+                                {
+                                    return true;
+                                }
+                            }
+                        }
+                    }
+
+                    return false;
+                }
+
+                bool CanUseCondition(Hashtable hashtable)
+                {
+                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 2 - 2
Assets/CardEffect/BT16/Purple/Sethmon_BT16_070.cs

@@ -100,7 +100,7 @@ namespace DCGO.CardEffects.BT16
                         {
                             if (CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card))
                             {
-                                if (permanent.TopCard.HasDP && permanent.TopCard.CardDP <= selectedPermanent.DP)
+                                if (permanent.TopCard.HasDP && permanent.DP <= selectedPermanent.DP)
                                 {
                                     return true;
                                 }
@@ -207,7 +207,7 @@ namespace DCGO.CardEffects.BT16
                         {
                             if (CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card))
                             {
-                                if (permanent.TopCard.HasDP && permanent.TopCard.CardDP <= selectedPermanent.DP)
+                                if (permanent.TopCard.HasDP && permanent.DP <= selectedPermanent.DP)
                                 {
                                     return true;
                                 }

+ 47 - 3
Assets/CardEffect/BT16/Red/ValkyrimonAce_BT16_013.cs

@@ -37,7 +37,7 @@ namespace DCGO.CardEffects.BT16
             }
             #endregion
 
-            #region On Play | When Digivolving
+            #region On Play
             if (timing == EffectTiming.OnEnterFieldAnyone)
             {
                 ActivateClass activateClass = new ActivateClass();
@@ -47,12 +47,56 @@ namespace DCGO.CardEffects.BT16
 
                 string EffectDiscription()
                 {
-                    return "[On Play] [When Digivolving] All of your opponent's Digimon get -5000DP for the turn.";
+                    return "[On Play] All of your opponent's Digimon get -5000DP for the turn.";
                 }
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card) || CardEffectCommons.CanTriggerOnPlay(hashtable,card);
+                    return CardEffectCommons.CanTriggerOnPlay(hashtable,card);
+                }
+
+                bool CanActivateCondition(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.IsExistOnBattleArea(card))
+                    {
+                        return true;
+                    }
+
+                    return false;
+                }
+
+                IEnumerator ActivateCoroutine(Hashtable _hashtable)
+                {
+                    bool PermanentCondition(Permanent permanent)
+                    {
+                        return CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card);
+                    }
+
+                    yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.ChangeDigimonDPPlayerEffect(
+                        permanentCondition: PermanentCondition,
+                        changeValue: -5000,
+                        effectDuration: EffectDuration.UntilEachTurnEnd,
+                        activateClass: activateClass));
+                }
+            }
+            #endregion
+
+            #region When Digivolving
+            if (timing == EffectTiming.OnEnterFieldAnyone)
+            {
+                ActivateClass activateClass = new ActivateClass();
+                activateClass.SetUpICardEffect("DP -5000 to opponent's all Digimons", CanUseCondition, card);
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
+                cardEffects.Add(activateClass);
+
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] All of your opponent's Digimon get -5000DP for the turn.";
+                }
+
+                bool CanUseCondition(Hashtable hashtable)
+                {
+                    return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)

+ 2 - 2
Assets/CardEffect/BT16/Yellow/DragonBreath_BT16_094.cs

@@ -87,7 +87,7 @@ namespace DCGO.CardEffects.BT16
 
                 string EffectDiscription()
                 {
-                    return "[Main] <Delay> You may place 1 [Trial of the Four Great Dragons] from your hand into your battle area, or trash 1 card with the [Four Great Dragons] trait from your hand. If you did, 1 of your opponent's Digimon gets -7000 DP until the end of thier turn.";
+                    return "[Main] <Delay>\r\n• Place 1 [Trial of the Four Great Dragons] from your hand in the battle area, or you may trash 1 card with the [Four Great Dragons] trait in your hand. If you did either, 1 of your opponent's Digimon gets -7000 DP for the turn.";
                 }
 
                 bool CanUseCondition(Hashtable hashtable)
@@ -301,7 +301,7 @@ namespace DCGO.CardEffects.BT16
 
                 string EffectDiscription()
                 {
-                    return "[Security] 1 of your opponent's Digimon gets -7000 DP until the end their turn. Then, place this card into your battle area.";
+                    return "[Security] 1 of your opponent's Digimon gets -7000 DP for the turn. Then, place this card in the battle area.";
                 }
 
                 bool CanSelectPermanentCondition(Permanent permanent)

+ 4 - 23
Assets/CardEffect/BT17/Black/Keramon_BT17_053.cs

@@ -95,15 +95,7 @@ namespace DCGO.CardEffects.BT17
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.CanActivateOnDeletion(card))
-                    {
-                        if (card.PermanentJustBeforeRemoveField.CardTraitsJustBeforeRemoveField.Contains("Unidentified"))
-                        {
-                            return true;
-                        }
-                    }
-
-                    return false;
+                    return CardEffectCommons.CanActivateOnDeletion(card);
                 }
 
                 bool CanActivateCondition(Hashtable hashtable)
@@ -112,7 +104,8 @@ namespace DCGO.CardEffects.BT17
                     {
                         if (card.Owner.fieldCardFrames.Count((frame) => frame.IsEmptyFrame()) >= 1)
                         {
-                            return true;
+                            if (CardEffectCommons.CanActivateSelfOnDeletionWithContainingTrait(hashtable, "Unidentified", card))
+                                return true;
                         }
                     }
 
@@ -121,19 +114,7 @@ namespace DCGO.CardEffects.BT17
 
                 IEnumerator ActivateCoroutine(Hashtable hashtable)
                 {
-                    List<Hashtable> deletionHashtables = CardEffectCommons.GetHashtablesFromHashtable(hashtable);
-
-                    if (deletionHashtables.Count > 0)
-                    {
-                        Hashtable hash = deletionHashtables[0];
-                        if (hash.ContainsKey("TopCard") && hash["TopCard"] is CardSource)
-                        {
-                            CardSource source = (CardSource)hash["TopCard"];
-
-                            if (card.ContainsTraits("Unidentified"))
-                                yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.PlayDiaboromonToken(activateClass));
-                        }
-                    }
+                    yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.PlayDiaboromonToken(activateClass));
                 }
             }
             #endregion

+ 4 - 5
Assets/CardEffect/BT17/White/Eosmon_BT17_075.cs

@@ -120,7 +120,7 @@ namespace DCGO.CardEffects.BT17
                             canTargetCondition_ByPreSelecetedList: null,
                             canEndSelectCondition: null,
                             maxCount: maxCount,
-                            canNoSelect: false,
+                            canNoSelect: true,
                             canEndNotMax: false,
                             isShowOpponent: true,
                             selectCardCoroutine: SelectCardCoroutineOpponent,
@@ -246,10 +246,9 @@ namespace DCGO.CardEffects.BT17
 
                             if (selectedPermanent != null)
                             {
-                                yield return ContinuousController.instance.StartCoroutine(new IDegeneration(selectedPermanent, maxCountDeDigivolve, activateClass).Degeneration());
+                                for(int i = 0; i < maxCountDeDigivolve; i++)
+                                    yield return ContinuousController.instance.StartCoroutine(new IDegeneration(selectedPermanent, 1, activateClass).Degeneration());
                             }
-
-                            yield return null;
                         }
                     }
                     #endregion
@@ -348,7 +347,7 @@ namespace DCGO.CardEffects.BT17
                             canTargetCondition_ByPreSelecetedList: null,
                             canEndSelectCondition: null,
                             maxCount: maxCount,
-                            canNoSelect: false,
+                            canNoSelect: true,
                             canEndNotMax: false,
                             isShowOpponent: true,
                             selectCardCoroutine: SelectCardCoroutineOpponent,

+ 1 - 1
Assets/CardEffect/EX5/Red/Fairamon_EX5_008.cs

@@ -54,7 +54,7 @@ public class Fairamon_EX5_008 : CEntity_Effect
 
             string EffectDiscription()
             {
-                return "[On Play] [When Digivolving] Reveal the top 3 cards of your deck. Add 1 card with the [Light Fang] trait and 1 card with the [Night Claw]/[Galaxy] trait among them to the hand. Return the rest to the bottom of the deck.";
+                return "[On Play] Reveal the top 3 cards of your deck. Add 1 card with the [Light Fang] trait and 1 card with the [Night Claw]/[Galaxy] trait among them to the hand. Return the rest to the bottom of the deck.";
             }
 
             bool CanSelectCardCondition(CardSource cardSource)

+ 16 - 9
Assets/CardEffect/EX6/Yellow/OphanimonAce_EX6_027.cs

@@ -17,7 +17,7 @@ namespace DCGO.CardEffects.EX6
             {
                 bool PermanentCondition(Permanent targetPermanent)
                 {
-                    return targetPermanent.TopCard.ContainsCardName("Angewomon");
+                    return targetPermanent.TopCard.EqualsCardName("Angewomon");
                 }
                 
                 cardEffects.Add(CardEffectFactory.AddSelfDigivolutionRequirementStaticEffect(
@@ -42,12 +42,7 @@ namespace DCGO.CardEffects.EX6
             
             #region On Play/ When Digivolving Shared
             
-            string EffectSharedDescription()
-            {
-                return
-                    "[On Play] [When Digivolving] By trashing the top or bottom card of your security stack, 1 of your opponent's Digimon gets -8000 DP until the end of your opponents turn.";
-            }
-            
+                        
             bool CanSelectPermanentSharedCondition(Permanent permanent)
             {
                 return CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card);
@@ -79,7 +74,13 @@ namespace DCGO.CardEffects.EX6
                 activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, true,
                     EffectSharedDescription());
                 cardEffects.Add(activateClass);
-                
+
+                string EffectSharedDescription()
+                {
+                    return
+                        "[On Play] By trashing the top or bottom card of your security stack, 1 of your opponent's Digimon gets -8000 DP until the end of your opponents turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -172,7 +173,13 @@ namespace DCGO.CardEffects.EX6
                 activateClass.SetUpActivateClass(CanActivateSharedCondition, ActivateCoroutine, -1, true,
                     EffectSharedDescription());
                 cardEffects.Add(activateClass);
-                
+
+                string EffectSharedDescription()
+                {
+                    return
+                        "[When Digivolving] By trashing the top or bottom card of your security stack, 1 of your opponent's Digimon gets -8000 DP until the end of your opponents turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 17 - 15
Assets/CardEffect/EX6/Yellow/SeraphimonAce_EX6_028.cs

@@ -38,17 +38,7 @@ namespace DCGO.CardEffects.EX6
             }
             
             #endregion
-            
-            #region On Play/ When Digivolving Shared
-            
-            string EffectSharedDescription()
-            {
-                return
-                    "[On Play] [When Digivolving] Trigger <Recovery +1 (Deck)>. (Place the top card of your deck on top of your security stack.)";
-            }
-            
-            #endregion
-            
+                       
             #region On Play
             
             if (timing == EffectTiming.OnEnterFieldAnyone)
@@ -56,9 +46,15 @@ namespace DCGO.CardEffects.EX6
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Recovery +1 (Deck)", CanUseCondition, card);
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false,
-                    EffectSharedDescription());
+                    EffectDescription());
                 cardEffects.Add(activateClass);
-                
+
+                string EffectDescription()
+                {
+                    return
+                        "[On Play] Trigger <Recovery +1 (Deck)>. (Place the top card of your deck on top of your security stack.)";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -96,9 +92,15 @@ namespace DCGO.CardEffects.EX6
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Recovery +1 (Deck)", CanUseCondition, card);
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false,
-                    EffectSharedDescription());
+                    EffectDescription());
                 cardEffects.Add(activateClass);
-                
+
+                string EffectDescription()
+                {
+                    return
+                        "[When Digivolving] Trigger <Recovery +1 (Deck)>. (Place the top card of your deck on top of your security stack.)";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 10 - 6
Assets/CardEffect/LM/Blue/Cthyllamon_LM_006.cs

@@ -177,12 +177,6 @@ namespace DCGO.CardEffects.LM
             #endregion
 
             #region On Play/When Digivolving Shared
-            string EffectDiscription()
-            {
-                return "[On Play] [When Digivolving] Trash the bottom 3 digivolution cards of 1 of your opponent's Digimon. Then, until the end of their turn, none of their Digimon with no digivolution cards can't attack.";
-            }
-
-            
 
             bool CanActivateCondition(Hashtable hashtable)
             {
@@ -202,6 +196,11 @@ namespace DCGO.CardEffects.LM
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[On Play] Trash the bottom 3 digivolution cards of 1 of your opponent's Digimon. Then, until the end of their turn, none of their Digimon with no digivolution cards can't attack.";
+                }
+
                 bool CanSelectPermanentCondition(Permanent permanent)
                 {
                     if (CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card))
@@ -282,6 +281,11 @@ namespace DCGO.CardEffects.LM
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] Trash the bottom 3 digivolution cards of 1 of your opponent's Digimon. Then, until the end of their turn, none of their Digimon with no digivolution cards can't attack.";
+                }
+
                 bool CanSelectPermanentCondition(Permanent permanent)
                 {
                     if (CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card))

+ 13 - 5
Assets/CardEffect/LM/Blue/Thetismon_LM_004.cs

@@ -12,11 +12,7 @@ namespace DCGO.CardEffects.LM
             List<ICardEffect> cardEffects = new List<ICardEffect>();
 
             #region On Play/When Digivolving
-            string EffectDiscription()
-            {
-                return "[On Play] [When Digivolving] By trashing 2 blue cards in your hand, unsuspend 1 of your Digimon and 1 of your [Kiyoshiro Higashimitarai], and this Digimon gains <Blocker> until the end of your opponent's turn.";
-            }
-
+            
             bool CanSelectCardCondition(CardSource cardSource)
             {
                 if (cardSource.CardColors.Contains(CardColor.Blue))
@@ -66,6 +62,12 @@ namespace DCGO.CardEffects.LM
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[On Play] By trashing 2 blue cards in your hand, unsuspend 1 of your Digimon and 1 of your [Kiyoshiro Higashimitarai], and this Digimon gains <Blocker> until the end of your opponent's turn.";
+                }
+
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -146,6 +148,12 @@ namespace DCGO.CardEffects.LM
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] By trashing 2 blue cards in your hand, unsuspend 1 of your Digimon and 1 of your [Kiyoshiro Higashimitarai], and this Digimon gains <Blocker> until the end of your opponent's turn.";
+                }
+
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 13 - 7
Assets/CardEffect/LM/Green/Diarbbitmon_LM_013.cs

@@ -19,11 +19,7 @@ namespace DCGO.CardEffects.LM
             }
 
             #region On Play/When Digivolving Shared
-            string SharedEffectDiscription()
-            {
-                return "[On Play] [When Digivolving] Suspend 1 of your opponent's Digimon. Then, if they have no unsuspended Digimon, gain 2 memory.";
-            }
-
+            
             bool CanSelectSharedPermanentCondition(Permanent permanent)
             {
                 return CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card);
@@ -51,9 +47,14 @@ namespace DCGO.CardEffects.LM
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Gain Memory +2", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, SharedEffectDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[On Play] Suspend 1 of your opponent's Digimon. Then, if they have no unsuspended Digimon, gain 2 memory.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -106,9 +107,14 @@ namespace DCGO.CardEffects.LM
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Gain Memory +2", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, SharedEffectDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] Suspend 1 of your opponent's Digimon. Then, if they have no unsuspended Digimon, gain 2 memory.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 13 - 7
Assets/CardEffect/LM/Green/Lamortmon_LM_012.cs

@@ -11,11 +11,7 @@ namespace DCGO.CardEffects.LM
             List<ICardEffect> cardEffects = new List<ICardEffect>();
 
             #region On Play/When Digivolving Shared
-            string EffectSharedDiscription()
-            {
-                return "[On Play] [When Digivolving] Suspend 1 of your opponent's Digimon. Then, if they have no unsuspended Digimon, 1 of their Digimon can't unsuspend until the end of their turn.";
-            }
-
+            
             bool CanSelectSharedPermanentCondition(Permanent permanent)
             {
                 return CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card);
@@ -48,9 +44,14 @@ namespace DCGO.CardEffects.LM
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Can't Unsuspend", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[On Play] Suspend 1 of your opponent's Digimon. Then, if they have no unsuspended Digimon, 1 of their Digimon can't unsuspend until the end of their turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -127,9 +128,14 @@ namespace DCGO.CardEffects.LM
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Can't Unsuspend", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] Suspend 1 of your opponent's Digimon. Then, if they have no unsuspended Digimon, 1 of their Digimon can't unsuspend until the end of their turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 13 - 7
Assets/CardEffect/LM/Green/SymbareAngoramon_LM_011.cs

@@ -12,11 +12,7 @@ namespace DCGO.CardEffects.LM
             List<ICardEffect> cardEffects = new List<ICardEffect>();
 
             #region On Play/When Digivolving
-            string EffectSharedDiscription()
-            {
-                return "[On Play] [When Digivolving] Suspend 1 of your opponent's Digimon. Then, if they have no unsuspended Digimon, 1 of your Digimon gains <Blocker> until the end of your opponent's turn.";
-            }
-
+            
             bool CanSelectSharedPermanentCondition(Permanent permanent)
             {
                 return CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card);
@@ -54,9 +50,14 @@ namespace DCGO.CardEffects.LM
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Gain <Blocker>", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[On Play] Suspend 1 of your opponent's Digimon. Then, if they have no unsuspended Digimon, 1 of your Digimon gains <Blocker> until the end of your opponent's turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerOnPlay(hashtable, card);
@@ -132,9 +133,14 @@ namespace DCGO.CardEffects.LM
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Gain <Blocker>", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectSharedDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
+                string EffectDiscription()
+                {
+                    return "[When Digivolving] Suspend 1 of your opponent's Digimon. Then, if they have no unsuspended Digimon, 1 of your Digimon gains <Blocker> until the end of your opponent's turn.";
+                }
+
                 bool CanUseCondition(Hashtable hashtable)
                 {
                     return CardEffectCommons.CanTriggerWhenDigivolving(hashtable, card);

+ 2 - 2
Assets/CardEffect/LM/Red/Siriusmon_LM_001.cs

@@ -38,7 +38,7 @@ namespace DCGO.CardEffects.LM
 
                 string EffectDiscription()
                 {
-                    return "[On Play] [When Digivolving] You may place 1 card with [Gammamon] in its text from your hand as this Digimon's bottom digivolution card. Then, delete 1 of your opponent's Digimon with 8000 DP or less. For each color in this Digimon's digivolution cards, add 1000 to this DP deletion effect's maximum.";
+                    return "[On Play] You may place 1 card with [Gammamon] in its text from your hand as this Digimon's bottom digivolution card. Then, delete 1 of your opponent's Digimon with 8000 DP or less. For each color in this Digimon's digivolution cards, add 1000 to this DP deletion effect's maximum.";
                 }
 
                 bool CanSelectCardCondition(CardSource cardSource)
@@ -174,7 +174,7 @@ namespace DCGO.CardEffects.LM
 
                 string EffectDiscription()
                 {
-                    return "[On Play] [When Digivolving] You may place 1 card with [Gammamon] in its text from your hand as this Digimon's bottom digivolution card. Then, delete 1 of your opponent's Digimon with 8000 DP or less. For each color in this Digimon's digivolution cards, add 1000 to this DP deletion effect's maximum.";
+                    return "[When Digivolving] You may place 1 card with [Gammamon] in its text from your hand as this Digimon's bottom digivolution card. Then, delete 1 of your opponent's Digimon with 8000 DP or less. For each color in this Digimon's digivolution cards, add 1000 to this DP deletion effect's maximum.";
                 }
 
                 bool CanSelectCardCondition(CardSource cardSource)

+ 1 - 1
ProjectSettings/ProjectSettings.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:4aaeddb92278c0b46279dfe5c04655129c553ab36097e1022a3043ffab614029
+oid sha256:ce47623c18e77a3716a83d884ab4e5eab857c7380ca542056037253e055d5cad
 size 20166