Merge pull request #1278 from kevlahnota/master

fix dual choices and alternate view on confirm action
This commit is contained in:
Anthony Calosa
2022-08-06 21:16:54 +08:00
committed by GitHub
2 changed files with 4 additions and 1 deletions

View File

@@ -323,6 +323,8 @@ public abstract class VCardDisplayArea extends VDisplayArea implements ActivateH
@Override @Override
public boolean tap(float x, float y, int count) { public boolean tap(float x, float y, int count) {
if (count > 1) //prevent double choice lists or activate handle
return false;
if (renderedCardContains(x, y)) { if (renderedCardContains(x, y)) {
ThreadUtil.invokeInGameThread(new Runnable() { //must invoke in game thread in case a dialog needs to be shown ThreadUtil.invokeInGameThread(new Runnable() { //must invoke in game thread in case a dialog needs to be shown
@Override @Override

View File

@@ -1176,6 +1176,7 @@ public class HumanCostDecision extends CostDecisionMakerBase {
else if (ability.getTargets() != null && ability.getTargets().isTargetingAnyCard() && ability.getTargets().size() == 1) else if (ability.getTargets() != null && ability.getTargets().isTargetingAnyCard() && ability.getTargets().size() == 1)
cardView = CardView.get(ability.getTargetCard()); cardView = CardView.get(ability.getTargetCard());
else if (cardView.getZone() == null || cardView.getZone().isHidden()) { else if (cardView.getZone() == null || cardView.getZone().isHidden()) {
if (!cardView.hasAlternateState()) //don't override if it has alternatestate since it maybe showing alternate view
cardView = CardView.getCardForUi(ImageUtil.getPaperCardFromImageKey(cardView.getCurrentState().getImageKey())); cardView = CardView.getCardForUi(ImageUtil.getPaperCardFromImageKey(cardView.getCurrentState().getImageKey()));
} }
return controller.getGui().confirm(cardView, message.replaceAll("\n", " ")); return controller.getGui().confirm(cardView, message.replaceAll("\n", " "));