mbunch_kascope před 1 rokem
rodič
revize
86ba14b9dd
32 změnil soubory, kde provedl 213 přidání a 201 odebrání
  1. 1 0
      Assets/CardEffect/BT10/Red/BT10_112.cs
  2. 2 10
      Assets/CardEffect/BT13/Purple/BT13_087.cs
  3. 39 36
      Assets/CardEffect/BT19/Blue/BT19_082.cs
  4. 1 0
      Assets/CardEffect/BT20/Black/BT20_059.cs
  5. 2 1
      Assets/CardEffect/BT20/Black/BT20_087.cs
  6. 2 12
      Assets/CardEffect/BT20/Purple/BT20_066.cs
  7. 13 14
      Assets/CardEffect/BT20/Purple/BT20_090.cs
  8. 6 1
      Assets/CardEffect/BT20/Purple/BT20_098.cs
  9. 2 12
      Assets/CardEffect/BT20/Red/BT20_011.cs
  10. 3 2
      Assets/CardEffect/BT20/Yellow/BT20_037.cs
  11. 2 2
      Assets/CardEffect/P/Black/P_078.cs
  12. 2 2
      Assets/CardEffect/P/Black/P_174.cs
  13. 4 0
      Assets/CardEffect/RB1/Black/RB1_027.cs
  14. 8 0
      Assets/Editor/Missing AAs/BT10.meta
  15. 8 0
      Assets/Editor/Missing AAs/BT10/Black.meta
  16. 8 0
      Assets/Editor/Missing AAs/BT10/Black/Tamer.meta
  17. 0 0
      Assets/Editor/Missing AAs/BT10/Black/Tamer/BT10_092_P2.asset
  18. 0 0
      Assets/Editor/Missing AAs/BT10/Black/Tamer/BT10_092_P2.asset.meta
  19. 8 0
      Assets/Editor/Missing AAs/BT19.meta
  20. 8 0
      Assets/Editor/Missing AAs/BT19/Blue.meta
  21. 8 0
      Assets/Editor/Missing AAs/BT19/Blue/Tamer.meta
  22. 0 0
      Assets/Editor/Missing AAs/BT19/Blue/Tamer/BT19_081_P0.asset
  23. 0 0
      Assets/Editor/Missing AAs/BT19/Blue/Tamer/BT19_081_P0.asset.meta
  24. 8 0
      Assets/Editor/Missing AAs/BT19/Red.meta
  25. 8 0
      Assets/Editor/Missing AAs/BT19/Red/Tamer.meta
  26. 0 0
      Assets/Editor/Missing AAs/BT19/Red/Tamer/BT19_079_P0.asset
  27. 0 0
      Assets/Editor/Missing AAs/BT19/Red/Tamer/BT19_079_P0.asset.meta
  28. 0 6
      Assets/Scenes/ContinuousControllerScene.unity
  29. 55 101
      Assets/Scripts/CardEffectFactory/KeyWordEffects/Partition.cs
  30. 12 0
      Assets/Scripts/DataBase.cs
  31. 2 1
      Assets/Scripts/GManager.cs
  32. 1 1
      ProjectSettings/ProjectSettings.asset

+ 1 - 0
Assets/CardEffect/BT10/Red/BT10_112.cs

@@ -262,6 +262,7 @@ namespace DCGO.CardEffects.BT10
 
                                         if (selectedEffect.CanUse(effectHashtable))
                                         {
+                                            selectedEffect.SetIsDigimonEffect(true);
                                             yield return ContinuousController.instance.StartCoroutine(
                                                 ((ActivateICardEffect)selectedEffect).Activate_Optional_Effect_Execute(effectHashtable));
                                         }

+ 2 - 10
Assets/CardEffect/BT13/Purple/BT13_087.cs

@@ -196,7 +196,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanUseCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.IsExistOnBattleArea(card))
+                    if (CardEffectCommons.IsExistOnBattleAreaDigimon(card))
                     {
                         if (CardEffectCommons.IsOwnerTurn(card))
                         {
@@ -212,15 +212,7 @@ namespace DCGO.CardEffects.BT13
 
                 bool CanActivateCondition(Hashtable hashtable)
                 {
-                    if (CardEffectCommons.IsExistOnBattleArea(card))
-                    {
-                        if (CardEffectCommons.HasMatchConditionPermanent(CanSelectPermanentCondition))
-                        {
-                            return true;
-                        }
-                    }
-
-                    return false;
+                    return CardEffectCommons.IsExistOnBattleAreaDigimon(card);
                 }
 
                 IEnumerator ActivateCoroutine(Hashtable _hashtable)

+ 39 - 36
Assets/CardEffect/BT19/Blue/BT19_082.cs

@@ -66,45 +66,48 @@ namespace DCGO.CardEffects.BT19
                         new SuspendPermanentsClass(new List<Permanent>() { card.PermanentOfThisCard() },
                             CardEffectCommons.CardEffectHashtable(activateClass)).Tap());
 
-                    if(CardEffectCommons.HasMatchConditionOwnersHand(card, CanSelectHandCardCondition))
+                    if (CardEffectCommons.IsPermanentExistsOnBattleAreaDigimon(GManager.instance.attackProcess.AttackingPermanent))
                     {
-                        List<CardSource> selectedCards = new List<CardSource>();
-
-                        SelectHandEffect selectHandEffect = GManager.instance.GetComponent<SelectHandEffect>();
-
-                        selectHandEffect.SetUp(
-                            selectPlayer: card.Owner,
-                            canTargetCondition: CanSelectHandCardCondition,
-                            canTargetCondition_ByPreSelecetedList: null,
-                            canEndSelectCondition: null,
-                            maxCount: 1,
-                            canNoSelect: true,
-                            canEndNotMax: false,
-                            isShowOpponent: true,
-                            selectCardCoroutine: SelectCardCoroutine,
-                            afterSelectCardCoroutine: null,
-                            mode: SelectHandEffect.Mode.Custom,
-                            cardEffect: activateClass);
-
-                        selectHandEffect.SetUpCustomMessage("Select 1 card to place on bottom of digivolution cards.",
-                            "The opponent is selecting 1 card to place on bottom of digivolution cards.");
-                        selectHandEffect.SetUpCustomMessage_ShowCard("Digivolution Card");
-
-                        yield return StartCoroutine(selectHandEffect.Activate());
-
-                        IEnumerator SelectCardCoroutine(CardSource cardSource)
+                        if (CardEffectCommons.HasMatchConditionOwnersHand(card, CanSelectHandCardCondition))
                         {
-                            selectedCards.Add(cardSource);
-
-                            yield return null;
-                        }
-
-                        if (selectedCards.Count >= 1)
-                        {
-                            yield return ContinuousController.instance.StartCoroutine(GManager.instance.attackProcess.AttackingPermanent
-                                .AddDigivolutionCardsBottom(selectedCards, activateClass));
+                            List<CardSource> selectedCards = new List<CardSource>();
+
+                            SelectHandEffect selectHandEffect = GManager.instance.GetComponent<SelectHandEffect>();
+
+                            selectHandEffect.SetUp(
+                                selectPlayer: card.Owner,
+                                canTargetCondition: CanSelectHandCardCondition,
+                                canTargetCondition_ByPreSelecetedList: null,
+                                canEndSelectCondition: null,
+                                maxCount: 1,
+                                canNoSelect: true,
+                                canEndNotMax: false,
+                                isShowOpponent: true,
+                                selectCardCoroutine: SelectCardCoroutine,
+                                afterSelectCardCoroutine: null,
+                                mode: SelectHandEffect.Mode.Custom,
+                                cardEffect: activateClass);
+
+                            selectHandEffect.SetUpCustomMessage("Select 1 card to place on bottom of digivolution cards.",
+                                "The opponent is selecting 1 card to place on bottom of digivolution cards.");
+                            selectHandEffect.SetUpCustomMessage_ShowCard("Digivolution Card");
+
+                            yield return StartCoroutine(selectHandEffect.Activate());
+
+                            IEnumerator SelectCardCoroutine(CardSource cardSource)
+                            {
+                                selectedCards.Add(cardSource);
+
+                                yield return null;
+                            }
+
+                            if (selectedCards.Count >= 1)
+                            {
+                                yield return ContinuousController.instance.StartCoroutine(GManager.instance.attackProcess.AttackingPermanent
+                                    .AddDigivolutionCardsBottom(selectedCards, activateClass));
+                            }
                         }
-                    }                    
+                    }               
                 }
             }
 

+ 1 - 0
Assets/CardEffect/BT20/Black/BT20_059.cs

@@ -30,6 +30,7 @@ namespace DCGO.CardEffects.BT20
                 ActivateClass activateClass = new ActivateClass();
                 activateClass.SetUpICardEffect("<De-Digivolve 2>, then your Digimon or unaffected by Digimon effects", CanUseCondition, card);
                 activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, false, EffectDiscription());
+                activateClass.SetIsDigimonEffect(true);
                 cardEffects.Add(activateClass);
 
                 string EffectDiscription()

+ 2 - 1
Assets/CardEffect/BT20/Black/BT20_087.cs

@@ -78,7 +78,8 @@ namespace DCGO.CardEffects.BT20
                     return (CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card) ||
                             CardEffectCommons.IsPermanentExistsOnOwnerBreedingArea(permanent, card)) &&
                            card.Owner.HandCards.Where(DigivolveToCardCondition).Any(cardSource =>
-                               cardSource.CanPlayCardTargetFrame(permanent.PermanentFrame, false, activateClass));
+                               cardSource.CanPlayCardTargetFrame(permanent.PermanentFrame, false, activateClass) ||
+                                cardSource.CanPlayCardTargetFrame(permanent.PermanentFrame, false, activateClass, isBreedingArea:true));
                 }
 
                 bool DigivolveToCardCondition(CardSource cardSource)

+ 2 - 12
Assets/CardEffect/BT20/Purple/BT20_066.cs

@@ -149,7 +149,7 @@ namespace DCGO.CardEffects.BT20
                                 {
                                     foreach (CardSource selectedCard in selectedCards)
                                     {
-                                        if (selectedCard.CanPlayJogress(true) && selectedCard.CanJogressFromTargetPermanent(card.PermanentOfThisCard(), true))
+                                        if (selectedCard.CanPlayJogress(true))
                                         {
                                             JogressEvoRootsFrameIDs = new int[0];
 
@@ -186,11 +186,6 @@ namespace DCGO.CardEffects.BT20
                                                         }
                                                     }
 
-                                                    if (!permanents.Contains(card.PermanentOfThisCard()))
-                                                    {
-                                                        JogressEvoRootsFrameIDs = new int[0];
-                                                    }
-
                                                     yield return null;
                                                 }
 
@@ -374,7 +369,7 @@ namespace DCGO.CardEffects.BT20
                                 {
                                     foreach (CardSource selectedCard in selectedCards)
                                     {
-                                        if (selectedCard.CanPlayJogress(true) && selectedCard.CanJogressFromTargetPermanent(card.PermanentOfThisCard(), true))
+                                        if (selectedCard.CanPlayJogress(true))
                                         {
                                             JogressEvoRootsFrameIDs = new int[0];
 
@@ -411,11 +406,6 @@ namespace DCGO.CardEffects.BT20
                                                         }
                                                     }
 
-                                                    if (!permanents.Contains(card.PermanentOfThisCard()))
-                                                    {
-                                                        JogressEvoRootsFrameIDs = new int[0];
-                                                    }
-
                                                     yield return null;
                                                 }
 

+ 13 - 14
Assets/CardEffect/BT20/Purple/BT20_090.cs

@@ -93,27 +93,26 @@ namespace DCGO.CardEffects.BT20
                         IEnumerator SelectPermanentCoroutine(Permanent permanent)
                         {
                             selectedPermanent = permanent;
+                            yield return null;
+                        }
 
-                            if (selectedPermanent != null)
+                        if (selectedPermanent != null)
+                        {
+                            if (selectedPermanent.CanAttack(activateClass))
                             {
-                                if (selectedPermanent.CanAttack(activateClass))
-                                {
-                                    SelectAttackEffect selectAttackEffect = GManager.instance.GetComponent<SelectAttackEffect>();
+                                SelectAttackEffect selectAttackEffect = GManager.instance.GetComponent<SelectAttackEffect>();
 
-                                    selectAttackEffect.SetUp(
-                                        attacker: selectedPermanent,
-                                        canAttackPlayerCondition: () => true,
-                                        defenderCondition: _ => false,
-                                        cardEffect: activateClass);
+                                selectAttackEffect.SetUp(
+                                    attacker: selectedPermanent,
+                                    canAttackPlayerCondition: () => true,
+                                    defenderCondition: _ => false,
+                                    cardEffect: activateClass);
 
-                                    selectAttackEffect.SetCanNotSelectNotAttack();
+                                selectAttackEffect.SetCanNotSelectNotAttack();
 
-                                    yield return ContinuousController.instance.StartCoroutine(selectAttackEffect.Activate());
-                                }
+                                yield return ContinuousController.instance.StartCoroutine(selectAttackEffect.Activate());
                             }
                         }
-
-                        
                     }
                 }
             }

+ 6 - 1
Assets/CardEffect/BT20/Purple/BT20_098.cs

@@ -141,9 +141,14 @@ namespace DCGO.CardEffects.BT20
                                     return selectedCardsToPlay.Count == 0;
                                 }
 
+                                bool RemoveOptionsAlreadySelected(List<CardSource> cardSources, CardSource cardSource)
+                                {
+                                    return !cardSources.Contains(cardSource);
+                                }
+
                                 selectCardEffect.SetUp(
                                     canTargetCondition: CanSelectPlayCardCondition,
-                                    canTargetCondition_ByPreSelecetedList: null,
+                                    canTargetCondition_ByPreSelecetedList: RemoveOptionsAlreadySelected,
                                     canEndSelectCondition: null,
                                     canNoSelect: CanNoSelect,
                                     selectCardCoroutine: SelectCardCoroutine2,

+ 2 - 12
Assets/CardEffect/BT20/Red/BT20_011.cs

@@ -142,7 +142,7 @@ namespace DCGO.CardEffects.BT20
                                 {
                                     foreach (CardSource selectedCard in selectedCards)
                                     {
-                                        if (selectedCard.CanPlayJogress(true) && selectedCard.CanJogressFromTargetPermanent(card.PermanentOfThisCard(), true))
+                                        if (selectedCard.CanPlayJogress(true))
                                         {
                                             JogressEvoRootsFrameIDs = new int[0];
 
@@ -179,11 +179,6 @@ namespace DCGO.CardEffects.BT20
                                                         }
                                                     }
 
-                                                    if (!permanents.Contains(card.PermanentOfThisCard()))
-                                                    {
-                                                        JogressEvoRootsFrameIDs = new int[0];
-                                                    }
-
                                                     yield return null;
                                                 }
 
@@ -364,7 +359,7 @@ namespace DCGO.CardEffects.BT20
                                 {
                                     foreach (CardSource selectedCard in selectedCards)
                                     {
-                                        if (selectedCard.CanPlayJogress(true) && selectedCard.CanJogressFromTargetPermanent(card.PermanentOfThisCard(), true))
+                                        if (selectedCard.CanPlayJogress(true))
                                         {
                                             JogressEvoRootsFrameIDs = new int[0];
 
@@ -401,11 +396,6 @@ namespace DCGO.CardEffects.BT20
                                                         }
                                                     }
 
-                                                    if (!permanents.Contains(card.PermanentOfThisCard()))
-                                                    {
-                                                        JogressEvoRootsFrameIDs = new int[0];
-                                                    }
-
                                                     yield return null;
                                                 }
 

+ 3 - 2
Assets/CardEffect/BT20/Yellow/BT20_037.cs

@@ -2,6 +2,7 @@ using System.Collections;
 using System.Collections.Generic;
 using System.Linq;
 using System;
+using UnityEngine;
 
 namespace DCGO.CardEffects.BT20
 {
@@ -111,7 +112,7 @@ namespace DCGO.CardEffects.BT20
                 {
                     if(card.PermanentOfThisCard().DigivolutionCards.Count(IsLevel6) > 0)
                     {
-                        int maxCount = card.PermanentOfThisCard().DigivolutionCards.Count(IsLevel6);
+                        int maxCount = Mathf.Min(CardEffectCommons.MatchConditionPermanentCount(OpponentsDigimonOrTamer), card.PermanentOfThisCard().DigivolutionCards.Count(IsLevel6));
                         SelectPermanentEffect selectPermanentEffect = GManager.instance.GetComponent<SelectPermanentEffect>();
 
                         selectPermanentEffect.SetUp(
@@ -127,7 +128,7 @@ namespace DCGO.CardEffects.BT20
                             mode: SelectPermanentEffect.Mode.Tap,
                             cardEffect: activateClass);
 
-                        selectPermanentEffect.SetUpCustomMessage($"Select {maxCount} Digimon to suspend.", $"The opponent is selecting {maxCount} Digimon to suspend.");
+                        selectPermanentEffect.SetUpCustomMessage($"Select {maxCount} Digimon/Tamers to suspend.", $"The opponent is selecting {maxCount} Digimon/Tamers to suspend.");
 
                         yield return ContinuousController.instance.StartCoroutine(selectPermanentEffect.Activate());
 

+ 2 - 2
Assets/CardEffect/P/Black/P_078.cs

@@ -52,9 +52,9 @@ public class P_078 : CEntity_Effect
                     yield return ContinuousController.instance.StartCoroutine(GManager.instance.GetComponent<Effects>().ShowCardEffect(new List<CardSource>() { topCard }, "Security Top card", true, true));
 
                     if (topCard.IsDigimon)
-                    {
                         yield return ContinuousController.instance.StartCoroutine(new DrawClass(card.Owner, 1, activateClass).Draw());
-                    }
+
+                    topCard.SetReverse();
                 }
             }
         }

+ 2 - 2
Assets/CardEffect/P/Black/P_174.cs

@@ -406,7 +406,7 @@ namespace DCGO.CardEffects.P
                     IEnumerator SelectDigimonCoroutine(Permanent permanent)
                     {
                         if (permanent != null)
-                            yield return ContinuousController.instance.StartCoroutine(new IDegeneration(permanent, 4, activateClass).Degeneration());
+                            yield return ContinuousController.instance.StartCoroutine(new IDegeneration(permanent, 1, activateClass).Degeneration());
                     }
 
                     selectPermanentEffect.SetUp(
@@ -484,7 +484,7 @@ namespace DCGO.CardEffects.P
                     IEnumerator SelectDigimonCoroutine(Permanent permanent)
                     {
                         if (permanent != null)
-                            yield return ContinuousController.instance.StartCoroutine(new IDegeneration(permanent, 4, activateClass).Degeneration());
+                            yield return ContinuousController.instance.StartCoroutine(new IDegeneration(permanent, 1, activateClass).Degeneration());
                     }
 
                     selectPermanentEffect.SetUp(

+ 4 - 0
Assets/CardEffect/RB1/Black/RB1_027.cs

@@ -83,6 +83,8 @@ public class RB1_027 : CEntity_Effect
                         topCard.Owner.SecurityCards.Remove(topCard);
                         topCard.Owner.SecurityCards.Add(topCard);
                     }
+
+                    topCard.SetReverse();
                 }
             }
         }
@@ -162,6 +164,8 @@ public class RB1_027 : CEntity_Effect
                         topCard.Owner.SecurityCards.Remove(topCard);
                         topCard.Owner.SecurityCards.Add(topCard);
                     }
+
+                    topCard.SetReverse();
                 }
             }
         }

+ 8 - 0
Assets/Editor/Missing AAs/BT10.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b2a9f7df6311a8e40b49d0157f941749
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Assets/Editor/Missing AAs/BT10/Black.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 5676a51a1c30e5240aa1be23d2ea445c
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Assets/Editor/Missing AAs/BT10/Black/Tamer.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 5e08a7dd386751645a21ac2b90959f6d
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 0
Assets/CardBaseEntity/BT10/Black/Tamer/BT10_092_P2.asset → Assets/Editor/Missing AAs/BT10/Black/Tamer/BT10_092_P2.asset


+ 0 - 0
Assets/CardBaseEntity/BT10/Black/Tamer/BT10_092_P2.asset.meta → Assets/Editor/Missing AAs/BT10/Black/Tamer/BT10_092_P2.asset.meta


+ 8 - 0
Assets/Editor/Missing AAs/BT19.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 99a6fc2e76b5c464c932cb3b102c9ff6
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Assets/Editor/Missing AAs/BT19/Blue.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 4e837457a3405df4c9014cb22abe81e2
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Assets/Editor/Missing AAs/BT19/Blue/Tamer.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f0f8f44665847d149ae65996e917d17d
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 0
Assets/CardBaseEntity/BT19/Blue/Tamer/BT19_081_P0.asset → Assets/Editor/Missing AAs/BT19/Blue/Tamer/BT19_081_P0.asset


+ 0 - 0
Assets/CardBaseEntity/BT19/Blue/Tamer/BT19_081_P0.asset.meta → Assets/Editor/Missing AAs/BT19/Blue/Tamer/BT19_081_P0.asset.meta


+ 8 - 0
Assets/Editor/Missing AAs/BT19/Red.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: dc8d002785e83b54cafccc38b8b5c87a
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 8 - 0
Assets/Editor/Missing AAs/BT19/Red/Tamer.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 40bdb6923647dd24eb20f79c2941fd24
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 0
Assets/CardBaseEntity/BT19/Red/Tamer/BT19_079_P0.asset → Assets/Editor/Missing AAs/BT19/Red/Tamer/BT19_079_P0.asset


+ 0 - 0
Assets/CardBaseEntity/BT19/Red/Tamer/BT19_079_P0.asset.meta → Assets/Editor/Missing AAs/BT19/Red/Tamer/BT19_079_P0.asset.meta


+ 0 - 6
Assets/Scenes/ContinuousControllerScene.unity

@@ -626,7 +626,6 @@ MonoBehaviour:
   - {fileID: 11400000, guid: 75d72d7abdc9ec1489571de0317867fc, type: 2}
   - {fileID: 11400000, guid: d6547a94a914caf4087d9e08b3de4bfa, type: 2}
   - {fileID: 11400000, guid: 988a50164fb0fe3448bdedb66a35e541, type: 2}
-  - {fileID: 11400000, guid: 0dd4898cf899c7740b0121461be7e1d7, type: 2}
   - {fileID: 11400000, guid: a5f7a611eeeef1a4ca280f2e3404a5db, type: 2}
   - {fileID: 11400000, guid: ec35b4dfd25f93848928454663f3b558, type: 2}
   - {fileID: 11400000, guid: 9cd4dd88693fec741af4519202e9ae27, type: 2}
@@ -651,7 +650,6 @@ MonoBehaviour:
   - {fileID: 11400000, guid: 76716d8deea8e0e43bfd1a7e11621b4a, type: 2}
   - {fileID: 11400000, guid: 94c1f28b82a06f24fb8abad26b9be8e2, type: 2}
   - {fileID: 11400000, guid: cf4a9c752a2303a4fb2e3805462ceb7d, type: 2}
-  - {fileID: 11400000, guid: 966e744eebaaad849a63975c7f62533e, type: 2}
   - {fileID: 11400000, guid: 78e3fddfead30d94ea1678d37a7846c7, type: 2}
   - {fileID: 11400000, guid: 7e0bea7c22974bd4e8bea3ee2c831376, type: 2}
   - {fileID: 11400000, guid: 5160fdb40e76f704aa1433e792f5015c, type: 2}
@@ -2512,7 +2510,6 @@ MonoBehaviour:
   - {fileID: 11400000, guid: 0bbe71129de6d74469c63febbd151590, type: 2}
   - {fileID: 11400000, guid: 1c0ff60adf8dbce44bf06500211bf144, type: 2}
   - {fileID: 11400000, guid: c3da414eba919b94897f5e6bcd1a0c1d, type: 2}
-  - {fileID: 11400000, guid: c5a8379cda16ff74e8bb35db6cd928e3, type: 2}
   - {fileID: 11400000, guid: 158a27bc46233ae4597f9ec6f93e6d17, type: 2}
   - {fileID: 11400000, guid: c8f1e97807fc33b4298c5b533db96088, type: 2}
   - {fileID: 11400000, guid: 8345a14db1e55a749965205f6600ebac, type: 2}
@@ -10314,7 +10311,6 @@ MonoBehaviour:
   - {fileID: 11400000, guid: 711b100f406a1f7419a6fbf15cc500fd, type: 2}
   - {fileID: 11400000, guid: 78505fc72aaa7914fa9924abc6dc3886, type: 2}
   - {fileID: 11400000, guid: c3da414eba919b94897f5e6bcd1a0c1d, type: 2}
-  - {fileID: 11400000, guid: c5a8379cda16ff74e8bb35db6cd928e3, type: 2}
   - {fileID: 11400000, guid: 2242d1820eb913845ac7650c6f8bf22b, type: 2}
   - {fileID: 11400000, guid: aebce3a505e6d624dacd012967a4237f, type: 2}
   - {fileID: 11400000, guid: 4e78655b0a5b61e4c8f3d93906355e78, type: 2}
@@ -11017,11 +11013,9 @@ MonoBehaviour:
   - {fileID: 11400000, guid: 375cbeddd88f88046942fab45f6b6d39, type: 2}
   - {fileID: 11400000, guid: 7812b45104ae74147b14a069d6b22c2c, type: 2}
   - {fileID: 11400000, guid: 988a50164fb0fe3448bdedb66a35e541, type: 2}
-  - {fileID: 11400000, guid: 0dd4898cf899c7740b0121461be7e1d7, type: 2}
   - {fileID: 11400000, guid: a5f7a611eeeef1a4ca280f2e3404a5db, type: 2}
   - {fileID: 11400000, guid: ec35b4dfd25f93848928454663f3b558, type: 2}
   - {fileID: 11400000, guid: cf4a9c752a2303a4fb2e3805462ceb7d, type: 2}
-  - {fileID: 11400000, guid: 966e744eebaaad849a63975c7f62533e, type: 2}
   - {fileID: 11400000, guid: 78e3fddfead30d94ea1678d37a7846c7, type: 2}
   - {fileID: 11400000, guid: cbff0dfe34850a94f99a7af0e22b58fe, type: 2}
   - {fileID: 11400000, guid: 88d9a51ea3b41984bba9dc74778be473, type: 2}

+ 55 - 101
Assets/Scripts/CardEffectFactory/KeyWordEffects/Partition.cs

@@ -66,141 +66,95 @@ public partial class CardEffectFactory
         if (targetPermanent.TopCard == null) return null;
         if (card == null) return null;
 
+        List<CardSource> sourceOneCard = new List<CardSource>();
+        List<CardSource> sourceTwoCard = new List<CardSource>();
 
-        if (partitionConditions[0].hasTwoColor == false || partitionConditions[1].hasTwoColor == false)
+        if (partitionConditions[0].hasTwoColor)
         {
-            List<CardSource> sourceOneCard = targetPermanent.cardSources
+            sourceOneCard = targetPermanent.cardSources
                 .Clone()
                 .Filter(source =>
-                    source.CardColors.Contains(partitionConditions[0].Color)
+                    source.CardColors.Contains(partitionConditions[0].Color) || source.CardColors.Contains(partitionConditions[0].Color2)
                     && (source.HasLevel && source.Level == partitionConditions[0].Level));
-
-            List<CardSource> sourceTwoCard = targetPermanent.cardSources
-                .Clone()
-                .Filter(source =>
-                    source.CardColors.Contains(partitionConditions[1].Color)
-                    && (source.HasLevel && source.Level == partitionConditions[1].Level));
-
-
-            ActivateClass activateClass = new ActivateClass();
-            activateClass.SetUpICardEffect("Partition", CanUseCondition, card);
-            activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
-            activateClass.SetHashString($"Partition_{card.CardID}" + (isInheritedEffect ? "_inherited" : ""));
-            activateClass.SetIsInheritedEffect(isInheritedEffect);
-
-            string EffectDiscription()
-            {
-                return DataBase.PartitionEffectDiscription();
-            }
-
-            bool CanUseCondition(Hashtable hashtable)
-            {
-                if (CardEffectCommons.CanTriggerPartition(hashtable, card))
-                {
-                    if (condition == null || condition())
-                    {
-                        return true;
-                    }
-                }
-
-                return false;
-            }
-
-            bool CanActivateCondition(Hashtable hashtable)
-            {
-                if (CardEffectCommons.CanActivatePartition(targetPermanent))
-                {
-                    if (sourceOneCard == null || sourceOneCard.Count > 0)
-                    {
-                        if (sourceTwoCard == null || sourceTwoCard.Count > 0)
-                        {
-                            return true;
-                        }
-                    }
-                }
-
-                return false;
-            }
-
-            IEnumerator ActivateCoroutine(Hashtable _hashtable)
-            {
-                if (sourceOneCard.Count == 1)
-                    sourceTwoCard = sourceTwoCard.Except(sourceOneCard).ToList();
-
-                if (sourceTwoCard.Count == 1)
-                    sourceOneCard = sourceOneCard.Except(sourceTwoCard).ToList();
-
-                return CardEffectCommons.PartitionProcess(activateClass, targetPermanent, sourceOneCard, sourceTwoCard);
-            }
-
-            return activateClass;
         }
         else
         {
-            List<CardSource> sourceOneCard = targetPermanent.cardSources
+            sourceOneCard = targetPermanent.cardSources
                 .Clone()
                 .Filter(source =>
-                    source.CardColors.Contains(partitionConditions[0].Color) || source.CardColors.Contains(partitionConditions[0].Color2)
+                    source.CardColors.Contains(partitionConditions[0].Color)
                     && (source.HasLevel && source.Level == partitionConditions[0].Level));
+        }
 
-            List<CardSource> sourceTwoCard = targetPermanent.cardSources
+        if (partitionConditions[1].hasTwoColor)
+        {
+            sourceTwoCard = targetPermanent.cardSources
                 .Clone()
                 .Filter(source =>
                     source.CardColors.Contains(partitionConditions[1].Color) || source.CardColors.Contains(partitionConditions[1].Color2)
                     && (source.HasLevel && source.Level == partitionConditions[1].Level));
+        }
+        else
+        {
+            sourceTwoCard = targetPermanent.cardSources
+                .Clone()
+                .Filter(source =>
+                    source.CardColors.Contains(partitionConditions[1].Color)
+                    && (source.HasLevel && source.Level == partitionConditions[1].Level));
+        }
 
-            ActivateClass activateClass = new ActivateClass();
-            activateClass.SetUpICardEffect("Partition", CanUseCondition, card);
-            activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
-            activateClass.SetHashString($"Partition_{card.CardID}" + (isInheritedEffect ? "_inherited" : ""));
-            activateClass.SetIsInheritedEffect(isInheritedEffect);
+        ActivateClass activateClass = new ActivateClass();
+        activateClass.SetUpICardEffect("Partition", CanUseCondition, card);
+        activateClass.SetUpActivateClass(CanActivateCondition, ActivateCoroutine, -1, true, EffectDiscription());
+        activateClass.SetHashString($"Partition_{card.CardID}" + (isInheritedEffect ? "_inherited" : ""));
+        activateClass.SetIsInheritedEffect(isInheritedEffect);
 
-            string EffectDiscription()
-            {
-                return DataBase.PartitionEffectDiscription();
-            }
+        string EffectDiscription()
+        {
+            return DataBase.PartitionEffectDiscription();
+        }
 
-            bool CanUseCondition(Hashtable hashtable)
+        bool CanUseCondition(Hashtable hashtable)
+        {
+            if (CardEffectCommons.CanTriggerPartition(hashtable, card))
             {
-                if (CardEffectCommons.CanTriggerPartition(hashtable, card))
+                if (condition == null || condition())
                 {
-                    if (condition == null || condition())
-                    {
-                        return true;
-                    }
+                    return true;
                 }
-
-                return false;
             }
 
-            bool CanActivateCondition(Hashtable hashtable)
+            return false;
+        }
+
+        bool CanActivateCondition(Hashtable hashtable)
+        {
+            if (CardEffectCommons.CanActivatePartition(targetPermanent))
             {
-                if (CardEffectCommons.CanActivatePartition(targetPermanent))
+                if (sourceOneCard == null || sourceOneCard.Count > 0)
                 {
-                    if (sourceOneCard == null || sourceOneCard.Count > 0)
+                    if (sourceTwoCard == null || sourceTwoCard.Count > 0)
                     {
-                        if (sourceTwoCard == null || sourceTwoCard.Count > 0)
-                        {
-                            return true;
-                        }
+                        return true;
                     }
                 }
-
-                return false;
             }
 
-            IEnumerator ActivateCoroutine(Hashtable _hashtable)
-            {
-                if (sourceOneCard.Count == 1)
-                    sourceTwoCard = sourceTwoCard.Except(sourceOneCard).ToList();
+            return false;
+        }
 
-                if (sourceTwoCard.Count == 1)
-                    sourceOneCard = sourceOneCard.Except(sourceTwoCard).ToList();
+        IEnumerator ActivateCoroutine(Hashtable _hashtable)
+        {
+            if (sourceOneCard.Count == 1)
+                sourceTwoCard = sourceTwoCard.Except(sourceOneCard).ToList();
 
-                return CardEffectCommons.PartitionProcess(activateClass, targetPermanent, sourceOneCard, sourceTwoCard);
-            }
-            return activateClass;
+            if (sourceTwoCard.Count == 1)
+                sourceOneCard = sourceOneCard.Except(sourceTwoCard).ToList();
+
+            return CardEffectCommons.PartitionProcess(activateClass, targetPermanent, sourceOneCard, sourceTwoCard);
         }
+
+        return activateClass;
     }
     #endregion
 }

+ 12 - 0
Assets/Scripts/DataBase.cs

@@ -735,6 +735,15 @@ public class DataBase : MonoBehaviour
                     new CardLimitCount("BT9-098", 1),
                     new CardLimitCount("BT15-057", 1),
                     new CardLimitCount("BT14-084", 1),
+                    new CardLimitCount("BT2-090", 0),
+                    new CardLimitCount("BT4-104", 1),
+                    new CardLimitCount("BT4-111", 1),
+                    new CardLimitCount("BT11-033", 1),
+                    new CardLimitCount("BT17-069", 1),
+                    new CardLimitCount("EX4-030", 1),
+                    new CardLimitCount("P-029", 1),
+                    new CardLimitCount("P-030", 1),
+                    new CardLimitCount("ST9-09", 1),
                 },
                 new List<BannedPair>()
                 {
@@ -742,6 +751,9 @@ public class DataBase : MonoBehaviour
                         "P-097",
                         "BT13-102",
                         "ST16-14",
+                    }),
+                    new BannedPair("EX2-007", new List<string>(){
+                        "EX7-064",
                     })
                 });
     #endregion

+ 2 - 1
Assets/Scripts/GManager.cs

@@ -2,6 +2,7 @@
 using System;
 using System.Collections;
 using System.Collections.Generic;
+using System.Linq;
 using UnityEngine;
 using UnityEngine.UI;
 
@@ -479,7 +480,7 @@ public class GManager : MonoBehaviourPun
         if (turnStateMachine == null)
             return;
         
-        if (!Application.version.Contains("a"))
+        if (Application.version.Split(".").Count() < 4)
             return;
 
         //Draw a card

+ 1 - 1
ProjectSettings/ProjectSettings.asset

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