Ver Fonte

Merge pull request #635 from DCGO2/hooperk-skip-all-optional

Allow user to discard all remaining optional effects
x89rt2 há 4 meses atrás
pai
commit
6a966fd2f3
1 ficheiros alterados com 13 adições e 1 exclusões
  1. 13 1
      Assets/Scripts/Script/MultipleSkills.cs

+ 13 - 1
Assets/Scripts/Script/MultipleSkills.cs

@@ -276,13 +276,17 @@ public class MultipleSkills : MonoBehaviourPunCallbacks
                             {
                                 yield return StartCoroutine(GManager.instance.selectCardPanel.OpenSelectCardPanel(
                                 Message: "Multiple effects are triggered.\nChoose which effect to process.",
+                                NotSelectButtonMessage: "Don't activate these effects.",
+                                EndSelectButtonMessage: "End Selection", 
+                                _OnClickNotSelectButtonAction: null, 
+                                _OnClickEndSelectButtonAction: null,
                                 RootCardSources: RootCardSources,
                                 _CanTargetCondition: (cardSource) => true,
                                 _CanTargetCondition_ByPreSelecetedList: null,
                                 _CanEndSelectCondition: null,
                                 _MaxCount: 1,
                                 _CanEndNotMax: false,
-                                _CanNoSelect: () => false,
+                                _CanNoSelect: () => skillInfos_active.All(skillInfo => skillInfo.CardEffect.IsOptional),
                                 CanLookReverseCard: true,
                                 skillInfos: skillInfos_active,
                                 root: SelectCardEffect.Root.None));
@@ -291,6 +295,14 @@ public class MultipleSkills : MonoBehaviourPunCallbacks
                                 {
                                     skillIndex = GManager.instance.selectCardPanel.SelectedIndex[0];
                                 }
+                                else
+                                {
+                                    foreach(SkillInfo skillInfo in skillInfos_active)
+                                    {
+                                        StackedSkillInfos.Remove(skillInfo);
+                                    }
+                                    continue;
+                                }
                             }
 
                             else