瀏覽代碼

Several bug fixes

mbunch_kascope 2 年之前
父節點
當前提交
28caf58cab

+ 1 - 1
Assets/CardEffect/BT8/White/Kimeramon_BT8_084.cs

@@ -275,7 +275,7 @@ public class Kimeramon_BT8_084 : CEntity_Effect
         if (timing == EffectTiming.None)
         {
             ChangeCardColorClass changeCardColorClass = new ChangeCardColorClass();
-            changeCardColorClass.SetUpICardEffect($"Also treated as Diogivolution cards' colors", CanUseCondition, card);
+            changeCardColorClass.SetUpICardEffect($"Also treated as Digivolution cards' colors", CanUseCondition, card);
             changeCardColorClass.SetUpChangeCardColorClass(ChangeCardColors: ChangeCardColors);
 
             cardEffects.Add(changeCardColorClass);

+ 1 - 1
Assets/CardEffect/EX3/Blue/Ganimon_EX3_015.cs

@@ -98,7 +98,7 @@ public class Ganimon_EX3_015 : CEntity_Effect
                         mode: SelectPermanentEffect.Mode.Custom,
                         cardEffect: activateClass);
 
-                    selectPermanentEffect.SetUpCustomMessage("Select 1 Digimon taht will gain Jamming.", "The opponent is selecting 1 Digimon taht will gain Jamming.");
+                    selectPermanentEffect.SetUpCustomMessage("Select 1 Digimon that will gain Jamming.", "The opponent is selecting 1 Digimon that will gain Jamming.");
 
                     yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
 

+ 2 - 2
Assets/CardEffect/EX6/Black/RaijiLudomon_EX6_042.cs

@@ -336,7 +336,7 @@ namespace DCGO.CardEffects.EX6
                 {
                     if (CardEffectCommons.IsExistOnBattleArea(card))
                     {
-                        if (card.PermanentOfThisCard().cardSources.Count(HasLegendArmsTrait) >= 1)
+                        if (card.PermanentOfThisCard().DigivolutionCards.Count(HasLegendArmsTrait) >= 1)
                         {
                             return true;
                         }
@@ -349,7 +349,7 @@ namespace DCGO.CardEffects.EX6
                 {
                     Permanent selectedPermanent = card.PermanentOfThisCard();
 
-                    if (selectedPermanent.DigivolutionCards.Count(HasLegendArmsTrait) >= 2)
+                    if (selectedPermanent.DigivolutionCards.Count(HasLegendArmsTrait) >= 1)
                     {
                         List<CardSource> selectedCards = new List<CardSource>();
 

+ 1 - 1
Assets/CardEffect/EX6/Black/Spadamon_EX6_037.cs

@@ -17,7 +17,7 @@ namespace DCGO.CardEffects.EX6
             {
                 static bool PermanentCondition(Permanent targetPermanent)
                 {
-                    return targetPermanent.TopCard.ContainsCardName("Shakuttomon") || targetPermanent.TopCard.ContainsCardName("Kakkinmon");
+                    return targetPermanent.TopCard.ContainsCardName("Sakuttomon") || targetPermanent.TopCard.ContainsCardName("Kakkinmon");
                 }
 
                 cardEffects.Add(CardEffectFactory.AddSelfDigivolutionRequirementStaticEffect(

+ 6 - 18
Assets/CardEffect/EX6/Red/RagnaLoardmonAce_EX6_011.cs

@@ -203,16 +203,8 @@ namespace DCGO.CardEffects.EX6
             }
             
             bool IsEnemyPermanentShared(Permanent permanent)
-            {
-                if (CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card))
-                {
-                    if (CardEffectCommons.IsExistOnBattleArea(card))
-                    {
-                        return true;
-                    }
-                }
-                
-                return false;
+            {           
+                return CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card);
             }
             
             #endregion
@@ -340,20 +332,16 @@ namespace DCGO.CardEffects.EX6
                         }
                         
                         // Delete 1 Opponent's Digimon
-                        if (CardEffectCommons.HasMatchConditionPermanent(IsEnemyPermanentShared))
-                        {
-                            int enemyCount = Math.Min(1,
-                                CardEffectCommons.MatchConditionPermanentCount(IsEnemyPermanentShared));
-                            
-                            SelectPermanentEffect selectEnemyEffect =
-                                GManager.instance.GetComponent<SelectPermanentEffect>();
+                        if (CardEffectCommons.HasMatchConditionOpponentsPermanent(card, IsEnemyPermanentShared))
+                        {                            
+                            SelectPermanentEffect selectEnemyEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
                             
                             selectEnemyEffect.SetUp(
                                 selectPlayer: card.Owner,
                                 canTargetCondition: IsEnemyPermanentShared,
                                 canTargetCondition_ByPreSelecetedList: null,
                                 canEndSelectCondition: null,
-                                maxCount: enemyCount,
+                                maxCount: 1,
                                 canNoSelect: false,
                                 canEndNotMax: false,
                                 selectPermanentCoroutine: null,

+ 1 - 1
Assets/CardEffect/EX6/Red/Zubamon_EX6_007.cs

@@ -16,7 +16,7 @@ namespace DCGO.CardEffects.EX6
             {
                 static bool PermanentCondition(Permanent targetPermanent)
                 {
-                    return targetPermanent.TopCard.CardNames.Contains("Sakuttomon") &&
+                    return targetPermanent.TopCard.CardNames.Contains("Sakuttomon") ||
                            targetPermanent.TopCard.CardNames.Contains("Kakkinmon");
                 }
                 

+ 1 - 0
Assets/CardEffect/P/Green/Drimogemon_P_143.cs

@@ -50,6 +50,7 @@ namespace DCGO.CardEffects.P
 
                 IEnumerator ActivateCoroutine(Hashtable hashtable)
                 {
+                    yield return ContinuousController.instance.StartCoroutine(new IUnsuspendPermanents(new List<Permanent>() { card.PermanentOfThisCard() }, activateClass).Unsuspend());
                     yield return ContinuousController.instance.StartCoroutine(CardObjectController.MovePermanent(card.PermanentOfThisCard().PermanentFrame));
                 }
             }

+ 1 - 1
Assets/CardEffect/P/Green/Galemon_P_132.cs

@@ -100,7 +100,7 @@ namespace DCGO.CardEffects.P
                 }
 
                 cardEffects.Add(CardEffectFactory.PierceSelfEffect(
-                    isInheritedEffect: true,
+                    isInheritedEffect: false,
                     card: card,
                     condition: Condition));
             }

+ 14 - 4
Assets/CardEffect/P/Purple/MyotismonXAntibody_P_145.cs

@@ -37,7 +37,7 @@ namespace DCGO.CardEffects.P
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Delete 1 Opponent's level 4 or lower Digimon", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
                 string EffectDiscription()
@@ -47,7 +47,12 @@ namespace DCGO.CardEffects.P
 
                 bool SelectDeletionTarget(Permanent permanent)
                 {
-                    return permanent.TopCard.HasLevel && permanent.Level <= 4;
+                    if(CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card))
+                    {
+                        return permanent.TopCard.HasLevel && permanent.Level <= 4;
+                    }
+
+                    return false;
                 }
 
                 bool CanUseCondition(Hashtable hashtable)
@@ -95,7 +100,7 @@ namespace DCGO.CardEffects.P
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("Delete 1 Opponent's level 4 or lower Digimon", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
                 string EffectDiscription()
@@ -105,7 +110,12 @@ namespace DCGO.CardEffects.P
 
                 bool SelectDeletionTarget(Permanent permanent)
                 {
-                    return permanent.TopCard.HasLevel && permanent.Level <= 4;
+                    if (CardEffectCommons.IsPermanentExistsOnOpponentBattleAreaDigimon(permanent, card))
+                    {
+                        return permanent.TopCard.HasLevel && permanent.Level <= 4;
+                    }
+
+                    return false;
                 }
 
                 bool CanUseCondition(Hashtable hashtable)

+ 1 - 1
Assets/CardEffect/P/Yellow/Pal_P_147.cs

@@ -18,7 +18,7 @@ namespace DCGO.CardEffects.P
             if (timing == EffectTiming.None)
             {
                 ChangeCardNamesClass changeCardNamesClass = new ChangeCardNamesClass();
-                changeCardNamesClass.SetUpICardEffect("Also treated as [Pulsmon]", CanUseCondition, card);
+                changeCardNamesClass.SetUpICardEffect("Also treated as [Pulsemon]", CanUseCondition, card);
                 changeCardNamesClass.SetUpChangeCardNamesClass(changeCardNames: changeCardNames);
                 cardEffects.Add(changeCardNamesClass);
 

+ 78 - 0
Assets/CardEffect/P/Yellow/RechargePlug_InQ_P_146.cs

@@ -108,6 +108,84 @@ namespace DCGO.CardEffects.P
             }
             #endregion
 
+            #region Main
+            if (timing == EffectTiming.OnUseOption)
+            {
+                ActivateClass activateClass = new ActivateClass();
+                activateClass.SetUpICardEffect("Place as bottom Digivolution source", CanUseCondition, card);
+                activateClass.SetUpActivateClass(null, ActivateCoroutine, -1, false, EffectDiscription());
+                cardEffects.Add(activateClass);
+
+                string EffectDiscription()
+                {
+                    return "[Main] Place this card as 1 of your non-white Digimon's bottom digivolution card.";
+                }
+
+                bool IsNonWhiteDigimon(Permanent targetPermanent)
+                {
+                    if (CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(targetPermanent, card))
+                    {
+                        if (!targetPermanent.TopCard.CardColors.Contains(CardColor.White))
+                            return true;
+                    }
+
+                    return false;
+                }
+
+                bool CanUseCondition(Hashtable hashtable)
+                {
+                    if (CardEffectCommons.CanTriggerOptionMainEffect(hashtable, card))
+                    {
+                        if (CardEffectCommons.HasMatchConditionOwnersPermanent(card, IsNonWhiteDigimon))
+                        {
+                            return true;
+                        }
+                    }
+
+                    return false;
+                }
+
+                IEnumerator ActivateCoroutine(Hashtable hashtable)
+                {
+                    Permanent selectedPermanent = null;
+
+                    int maxCount = Math.Min(1, CardEffectCommons.MatchConditionPermanentCount(IsNonWhiteDigimon));
+
+                    SelectPermanentEffect selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
+
+                    selectPermanentEffect.SetUp(
+                        selectPlayer: card.Owner,
+                        canTargetCondition: IsNonWhiteDigimon,
+                        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 add bottom digivolution source.", "The opponent is selecting 1 Digimon to add bottom digivolution source.");
+
+                    yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
+
+                    IEnumerator SelectPermanentCoroutine(Permanent permanent)
+                    {
+                        selectedPermanent = permanent;
+                        yield return null;
+                    }
+
+                    if (selectedPermanent != null)
+                    {
+                        yield return ContinuousController.instance.StartCoroutine(selectedPermanent.AddDigivolutionCardsBottom(
+                            new List<CardSource>() { card },
+                            activateClass));
+                    }
+                }
+            }
+            #endregion
+
             #region All Turns- When would be destoryed - ESS
             if (timing == EffectTiming.OnDestroyedAnyone)
             {

+ 1 - 1
Assets/CardEffect/P/Yellow/ShoeShoemon_P_135.cs

@@ -15,7 +15,7 @@ namespace DCGO.CardEffects.P
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("1 Opponent's Digimon can't attack Digimon, and gain <Security A. -1>", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
                 string EffectDiscription()

+ 1 - 1
Assets/CardEffect/P/Yellow/Shoemon_P_134.cs

@@ -14,7 +14,7 @@ namespace DCGO.CardEffects.P
             {
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("<Security A. -1> until the end of opponents turn", CanUseCondition, card);
-                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
+                activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
                 string EffectDiscription()

+ 1 - 1
Assets/CardEffect/RB1/Black/Hoverespimon_RB1_027.cs

@@ -209,7 +209,7 @@ public class Hoverespimon_RB1_027 : CEntity_Effect
                 return false;
             }
 
-            string effectName = "This Diogimon can't be deleted by opponent's effects";
+            string effectName = "This Digimon can't be deleted by opponent's effects";
 
             cardEffects.Add(CardEffectFactory.CanNotBeDestroyedBySkillStaticEffect(
                 permanentCondition: PermanentCondition,