mbunch_kascope 1 anno fa
parent
commit
805aa586cc

+ 1 - 1
Assets/CardEffect/BT20/Blue/BT20_102.cs

@@ -394,7 +394,7 @@ namespace DCGO.CardEffects.BT20
                                 selectAttackEffect.SetUp(
                                     attacker: selectedPermanent,
                                     canAttackPlayerCondition: () => true,
-                                    defenderCondition: _ => true,
+                                    defenderCondition: (permanent) => true,
                                     cardEffect: activateClass);
 
                                 selectAttackEffect.SetCanNotSelectNotAttack();

+ 4 - 2
Assets/CardEffect/BT20/Green/BT20_044.cs

@@ -1,6 +1,7 @@
 using System;
 using System.Collections;
 using System.Collections.Generic;
+using System.Diagnostics;
 
 namespace DCGO.CardEffects.BT20
 {
@@ -278,7 +279,7 @@ namespace DCGO.CardEffects.BT20
 
                 bool PermanentCondition(Permanent permanent)
                 {
-                    return CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card) &&
+                    return permanent.TopCard.Owner == card.Owner &&
                            (permanent.TopCard.HasText("Dracomon") || permanent.TopCard.HasText("Examon"));
                 }
 
@@ -291,6 +292,7 @@ namespace DCGO.CardEffects.BT20
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
+                    UnityEngine.Debug.Log($"CanActivateCondtion: {CardEffectCommons.IsExistOnBattleAreaDigimon(card)}, {CardEffectCommons.HasMatchConditionPermanent(CanSelectOpponentPermanentCondition)}");
                     return CardEffectCommons.IsExistOnBattleAreaDigimon(card) &&
                            CardEffectCommons.HasMatchConditionPermanent(CanSelectOpponentPermanentCondition);
                 }
@@ -350,7 +352,7 @@ namespace DCGO.CardEffects.BT20
 
                 bool PermanentCondition(Permanent permanent)
                 {
-                    return CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card) &&
+                    return permanent.TopCard.Owner == card.Owner &&
                            (permanent.TopCard.HasText("Dracomon") || permanent.TopCard.HasText("Examon"));
                 }
 

+ 1 - 5
Assets/CardEffect/BT20/Green/BT20_085.cs

@@ -49,11 +49,7 @@ namespace DCGO.CardEffects.BT20
 
                 IEnumerator ActivateCoroutine(Hashtable hashtable)
                 {
-                    List<CardSource> cardSources = new List<CardSource>() { card };
-
-                    yield return ContinuousController.instance.StartCoroutine(CardObjectController.AddLibraryBottomCards(cardSources));
-
-                    yield return ContinuousController.instance.StartCoroutine(GManager.instance.GetComponent<Effects>().ShowCardEffect2(cardSources, "", true, true));
+                    yield return ContinuousController.instance.StartCoroutine(new DeckBottomBounceClass(new List<Permanent> { card.PermanentOfThisCard() }, hashtable).DeckBounce());
 
                     if(CardEffectCommons.HasMatchConditionOwnersHand(card, IsShotoKazama))
                     {

+ 2 - 2
Assets/CardEffect/BT20/Purple/BT20_097.cs

@@ -14,7 +14,7 @@ namespace DCGO.CardEffects.BT20
             if (timing == EffectTiming.OptionSkill)
             {
                 ActivateClass activateClass = new ActivateClass();
-                activateClass.SetUpICardEffect("", CanUseCondition, card);
+                activateClass.SetUpICardEffect("May Digivolve into level 6 or lower, then place in battle area", CanUseCondition, card);
                 activateClass.SetUpActivateClass(null, ActivateCoroutine, -1, false, EffectDiscription());
                 cardEffects.Add(activateClass);
 
@@ -27,7 +27,7 @@ namespace DCGO.CardEffects.BT20
                 {
                     if (CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card))
                     {
-                        foreach (CardSource cardSource in card.Owner.HandCards)
+                        foreach (CardSource cardSource in card.Owner.TrashCards)
                         {
                             if (CanSelectCardCondition(cardSource))
                             {

+ 2 - 2
Assets/CardEffect/BT20/Purple/BT20_098.cs

@@ -86,7 +86,7 @@ namespace DCGO.CardEffects.BT20
 
                             int sumLevel = cardSources.Sum(source => source.Level);
 
-                            if (sumLevel != maxLevel)
+                            if (sumLevel >= maxLevel)
                             {
                                 return false;
                             }
@@ -100,7 +100,7 @@ namespace DCGO.CardEffects.BT20
 
                             sumLevel += cardSource.Level;
 
-                            if (sumLevel != maxLevel)
+                            if (sumLevel >= maxLevel)
                             {
                                 return false;
                             }

+ 8 - 22
Assets/CardEffect/BT20/Red/BT20_009.cs

@@ -34,11 +34,6 @@ namespace DCGO.CardEffects.BT20
                     }
                     return false;
                 }
-                
-                bool canEvolveIntoFree(CardSource cardSource)
-                {
-                    return cardSource.EqualsTraits("Free");
-                }
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
@@ -61,35 +56,26 @@ namespace DCGO.CardEffects.BT20
                     return false;
                 }
 
-                bool CanSelectPermanentCondition(Permanent permanent)
-                { 
-                    if (CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card))
+                bool CanSelectCardCondition(CardSource source)
+                {
+                    if (source.EqualsTraits("Free"))
                     {
-                        if (permanent != card.PermanentOfThisCard())
+                        if (source.CanPlayCardTargetFrame(card.PermanentOfThisCard().PermanentFrame, false, activateClass))
                         {
-                            foreach (CardSource cardSource in card.Owner.HandCards)
-                            {
-                                if (canEvolveIntoFree(cardSource))
-                                {
-                                    if (cardSource.CanPlayCardTargetFrame(permanent.PermanentFrame, false, activateClass))
-                                    {
-                                        return true;
-                                    }
-                                }
-                            }
+                            return true;
                         }
                     }
-                   
+
                     return false;
                 }
 
                 IEnumerator ActivateCoroutine(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
+                    if (CardEffectCommons.HasMatchConditionOwnersHand(card, CanSelectCardCondition))
                     {                        
                             yield return ContinuousController.instance.StartCoroutine(CardEffectCommons.DigivolveIntoHandOrTrashCard(
                                 targetPermanent: card.PermanentOfThisCard(),
-                                cardCondition: canEvolveIntoFree,
+                                cardCondition: CanSelectCardCondition,
                                 payCost: true,
                                 reduceCostTuple: (reduceCost: 1, reduceCostCardCondition: null),
                                 fixedCostTuple: null,

+ 1 - 1
Assets/CardEffect/BT20/White/BT20_084.cs

@@ -93,7 +93,7 @@ namespace DCGO.CardEffects.BT20
                 {
                     if (CardEffectCommons.IsExistOnBattleAreaDigimon(cardSource))
                     {
-                        if (cardSource.CardNames.Contains("Sistermon Ciel"))
+                        if (cardSource.EqualsCardName("Sistermon Ciel"))
                         {
                             return true;
                         }

+ 2 - 7
Assets/CardEffect/BT20/White/BT20_099.cs

@@ -113,7 +113,7 @@ namespace DCGO.CardEffects.BT20
                             {
                                 if (PermanentsCondition(targetPermanents))
                                 {
-                                    Cost -= 8;
+                                    Cost -= 4;
                                 }
                             }
                         }
@@ -146,12 +146,7 @@ namespace DCGO.CardEffects.BT20
                             {
                                 if (cardSource.IsDigimon)
                                 {
-                                    if (cardSource.CardTraits.Contains("Insectoid"))
-                                    {
-                                        return true;
-                                    }
-
-                                    if (cardSource.CardTraits.Contains("Larva"))
+                                    if (cardSource.EqualsTraits("ACCEL"))
                                     {
                                         return true;
                                     }

+ 1 - 1
Assets/CardEffect/BT20/Yellow/BT20_036.cs

@@ -177,7 +177,7 @@ namespace DCGO.CardEffects.BT20
                 {
                     if (card.Owner.HandCards.Contains(card))
                     {
-                        ICardEffect activateClass = card.EffectList(EffectTiming.BeforePayCost).Find(cardEffect => cardEffect.EffectName == "Return 6 [D-Brigade] to get Play Cost -6");
+                        ICardEffect activateClass = card.EffectList(EffectTiming.BeforePayCost).Find(cardEffect => cardEffect.EffectName == "Play Cost -5");
 
                         if (activateClass != null)
                         {

+ 8 - 6
Assets/CardEffect/P/Black/P_174.cs

@@ -1,5 +1,6 @@
 using System.Collections;
 using System.Collections.Generic;
+using System.Diagnostics;
 using System.Linq;
 
 namespace DCGO.CardEffects.P
@@ -161,7 +162,7 @@ namespace DCGO.CardEffects.P
                 {
                     if (CardEffectCommons.IsExistOnHand(card))
                     {
-                        if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasNightmareSoldiersCondition))
+                        if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasNightmareSoldiersCondition, false))
                         {
                             return true;
                         }
@@ -178,7 +179,7 @@ namespace DCGO.CardEffects.P
                     }
 
                     ChangeCostClass changeCostClass = new ChangeCostClass();
-                    changeCostClass.SetUpICardEffect("Play Cost -1", CanUseCondition1, card);
+                    changeCostClass.SetUpICardEffect("Play Cost -4", CanUseCondition1, card);
                     changeCostClass.SetUpChangeCostClass(changeCostFunc: ChangeCost, cardSourceCondition: CardSourceCondition, rootCondition: RootCondition, isUpDown: isUpDown, isCheckAvailability: () => false, isChangePayingCost: () => true);
                     card.Owner.UntilCalculateFixedCostEffect.Add((_timing) => changeCostClass);
 
@@ -197,7 +198,7 @@ namespace DCGO.CardEffects.P
                                 {
                                     int targetCost = 0;
 
-                                    if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasNightmareSoldiersCondition))
+                                    if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasNightmareSoldiersCondition, false))
                                         targetCost += 4;
 
                                     Cost -= targetCost;
@@ -251,7 +252,7 @@ namespace DCGO.CardEffects.P
             if (timing == EffectTiming.None)
             {
                 ChangeCostClass changeCostClass = new ChangeCostClass();
-                changeCostClass.SetUpICardEffect("Play Cost -1", CanUseCondition, card);
+                changeCostClass.SetUpICardEffect("Play Cost -4", CanUseCondition, card);
                 changeCostClass.SetUpChangeCostClass(changeCostFunc: ChangeCost, cardSourceCondition: CardSourceCondition, rootCondition: RootCondition, isUpDown: isUpDown, isCheckAvailability: () => true, isChangePayingCost: () => true);
                 changeCostClass.SetNotShowUI(true);
                 cardEffects.Add(changeCostClass);
@@ -264,7 +265,7 @@ namespace DCGO.CardEffects.P
 
                         if (activateClass != null)
                         {
-                            if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasNightmareSoldiersCondition))
+                            if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasNightmareSoldiersCondition, false))
                             {
                                 return true;
                             }
@@ -284,7 +285,7 @@ namespace DCGO.CardEffects.P
                             {
                                 int targetCount = 0;
 
-                                if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasNightmareSoldiersCondition))
+                                if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasNightmareSoldiersCondition, false))
                                     targetCount += 4;
 
                                 Cost -= targetCount;
@@ -337,6 +338,7 @@ namespace DCGO.CardEffects.P
             }
 
             #endregion
+
             #endregion
 
             #region Blocker

+ 6 - 5
Assets/CardEffect/P/Blue/P_171.cs

@@ -122,7 +122,7 @@ namespace DCGO.CardEffects.P
             bool HasDeepSaversCondition(CardSource cardSource)
             {
                 return CardEffectCommons.IsExistInSecurity(cardSource) &&
-                        cardSource.EqualsCardName("Deep Savers");
+                       cardSource.EqualsCardName("Deep Savers");
             }
 
             #region Before Pay Cost - Condition Effect
@@ -175,7 +175,7 @@ namespace DCGO.CardEffects.P
                 {
                     if (CardEffectCommons.IsExistOnHand(card))
                     {
-                        if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasDeepSaversCondition))
+                        if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasDeepSaversCondition, false))
                         {
                             return true;
                         }
@@ -211,7 +211,7 @@ namespace DCGO.CardEffects.P
                                 {
                                     int targetCost = 0;
 
-                                    if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasDeepSaversCondition))
+                                    if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasDeepSaversCondition, false))
                                         targetCost += 4;
 
                                     Cost -= targetCost;
@@ -278,7 +278,7 @@ namespace DCGO.CardEffects.P
 
                         if (activateClass != null)
                         {
-                            if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasDeepSaversCondition))
+                            if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasDeepSaversCondition, false))
                             {
                                 return true;
                             }
@@ -298,7 +298,7 @@ namespace DCGO.CardEffects.P
                             {
                                 int targetCount = 0;
 
-                                if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasDeepSaversCondition))
+                                if (CardEffectCommons.HasMatchConditionOwnersSecurity(card, HasDeepSaversCondition, false))
                                     targetCount += 4;
 
                                 Cost -= targetCount;
@@ -351,6 +351,7 @@ namespace DCGO.CardEffects.P
             }
 
             #endregion
+
             #endregion
 
             #region Blocker

+ 4 - 0
Assets/Scripts/Permanent.cs

@@ -1533,6 +1533,10 @@ public class Permanent
             return false;
         }
 
+        //Can not attack during another attack
+        if (GManager.instance.attackProcess.IsAttacking)
+            return false;
+
         // can not attack to player
         if (!CanAttackTargetDigimon(null, cardEffect, withoutTap, isVortex))
         {

+ 1 - 1
ProjectSettings/ProjectSettings.asset

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:cfc8f74c0686c3528d787602ce9425a37b43960e8fbde14ad95b8b6b00a2f442
+oid sha256:0584cf639bf883cf8bdee990872ea62d35187e745eb9baeb7bf03381d55c9e08
 size 20168