|
|
@@ -32,89 +32,7 @@ namespace DCGO.CardEffects.EX10
|
|
|
|
|
|
if (timing == EffectTiming.None)
|
|
|
{
|
|
|
- AddAppFusionConditionClass addAppFusionConditionClass = new AddAppFusionConditionClass();
|
|
|
- addAppFusionConditionClass.SetUpICardEffect($"App Fusion", (hashtable) => true, card);
|
|
|
- addAppFusionConditionClass.SetUpAddAppFusionConditionClass(getAppFusionCondition: GetAppFusion);
|
|
|
- addAppFusionConditionClass.SetNotShowUI(true);
|
|
|
- cardEffects.Add(addAppFusionConditionClass);
|
|
|
-
|
|
|
- AppFusionCondition GetAppFusion(CardSource cardSource)
|
|
|
- {
|
|
|
- bool linkCondition(Permanent permanent, CardSource source)
|
|
|
- {
|
|
|
- if (source != null && source != card)
|
|
|
- {
|
|
|
- if (permanent.TopCard.EqualsCardName("Mirrormon"))
|
|
|
- {
|
|
|
- if (permanent.LinkedCards.Find(x => x.EqualsCardName("Kabemon") || x.EqualsCardName("Copipemon")))
|
|
|
- {
|
|
|
- return true;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (permanent.TopCard.EqualsCardName("Kabemon"))
|
|
|
- {
|
|
|
- if (permanent.LinkedCards.Find(x => x.EqualsCardName("Mirrormon") || x.EqualsCardName("Copipemon")))
|
|
|
- {
|
|
|
- return true;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (permanent.TopCard.EqualsCardName("Copipemon"))
|
|
|
- {
|
|
|
- if (permanent.LinkedCards.Find(x => x.EqualsCardName("Mirrormon") || x.EqualsCardName("Kabemon")))
|
|
|
- {
|
|
|
- return true;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return false;
|
|
|
- }
|
|
|
- bool digimonCondition(Permanent permanent)
|
|
|
- {
|
|
|
- if (CardEffectCommons.IsPermanentExistsOnOwnerBattleAreaDigimon(permanent, card))
|
|
|
- {
|
|
|
- if (permanent.TopCard.EqualsCardName("Mirrormon"))
|
|
|
- {
|
|
|
- if (permanent.LinkedCards.Find(x => x.EqualsCardName("Kabemon") || x.EqualsCardName("Copipemon")))
|
|
|
- {
|
|
|
- return true;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (permanent.TopCard.EqualsCardName("Kabemon"))
|
|
|
- {
|
|
|
- if (permanent.LinkedCards.Find(x => x.EqualsCardName("Mirrormon") || x.EqualsCardName("Copipemon")))
|
|
|
- {
|
|
|
- return true;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (permanent.TopCard.EqualsCardName("Copipemon"))
|
|
|
- {
|
|
|
- if (permanent.LinkedCards.Find(x => x.EqualsCardName("Mirrormon") || x.EqualsCardName("Kabemon")))
|
|
|
- {
|
|
|
- return true;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return false;
|
|
|
- }
|
|
|
-
|
|
|
- if (cardSource == card)
|
|
|
- {
|
|
|
- AppFusionCondition AppFusionCondition = new AppFusionCondition(
|
|
|
- linkCondition,
|
|
|
- digimonCondition,
|
|
|
- 0);
|
|
|
-
|
|
|
- return AppFusionCondition;
|
|
|
- }
|
|
|
-
|
|
|
- return null;
|
|
|
- }
|
|
|
+ cardEffects.Add(CardEffectFactory.AddAppfuseMethodByName(new List<string>() {"Mirrormon", "Kabemon","Copipemon"},card));
|
|
|
}
|
|
|
|
|
|
#endregion
|