From f6ddda9b38d1bdf29ec88982b73f8bf99c8df3b0 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Tue, 8 Dec 2020 08:30:12 -0500 Subject: [PATCH] add chosen number to card detail pane --- forge-game/src/main/java/forge/game/card/Card.java | 1 + forge-game/src/main/java/forge/game/card/CardView.java | 7 +++++++ .../src/main/java/forge/trackable/TrackableProperty.java | 1 + forge-gui/src/main/java/forge/card/CardDetailUtil.java | 8 ++++++++ 4 files changed, 17 insertions(+) diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index 1fa7a61ec7d..d0468ea3f41 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -1437,6 +1437,7 @@ public class Card extends GameEntity implements Comparable { } public final void setChosenNumber(final int i) { chosenNumber = i; + view.updateChosenNumber(this); } public final Card getExiledWith() { diff --git a/forge-game/src/main/java/forge/game/card/CardView.java b/forge-game/src/main/java/forge/game/card/CardView.java index a6487422fc2..c848700e2a6 100644 --- a/forge-game/src/main/java/forge/game/card/CardView.java +++ b/forge-game/src/main/java/forge/game/card/CardView.java @@ -306,6 +306,13 @@ public class CardView extends GameEntityView { set(TrackableProperty.ChosenType, c.getChosenType()); } + public String getChosenNumber() { + return get(TrackableProperty.ChosenNumber); + } + void updateChosenNumber(Card c) { + set(TrackableProperty.ChosenNumber, c.getChosenNumber().toString()); + } + public List getChosenColors() { return get(TrackableProperty.ChosenColors); } diff --git a/forge-game/src/main/java/forge/trackable/TrackableProperty.java b/forge-game/src/main/java/forge/trackable/TrackableProperty.java index a8ce01b8c2c..2bc1d95c063 100644 --- a/forge-game/src/main/java/forge/trackable/TrackableProperty.java +++ b/forge-game/src/main/java/forge/trackable/TrackableProperty.java @@ -50,6 +50,7 @@ public enum TrackableProperty { ChosenType(TrackableTypes.StringType), ChosenColors(TrackableTypes.StringListType), ChosenCards(TrackableTypes.CardViewCollectionType), + ChosenNumber(TrackableTypes.StringType), ChosenPlayer(TrackableTypes.PlayerViewType), ChosenDirection(TrackableTypes.EnumType(Direction.class)), ChosenEvenOdd(TrackableTypes.EnumType(EvenOdd.class)), diff --git a/forge-gui/src/main/java/forge/card/CardDetailUtil.java b/forge-gui/src/main/java/forge/card/CardDetailUtil.java index af141b97c6e..1c994076c42 100644 --- a/forge-gui/src/main/java/forge/card/CardDetailUtil.java +++ b/forge-gui/src/main/java/forge/card/CardDetailUtil.java @@ -416,6 +416,14 @@ public class CardDetailUtil { area.append(")"); } + // chosen number + if (!card.getChosenNumber().isEmpty()) { + if (area.length() != 0) { + area.append("\n"); + } + area.append("(chosen number: ").append(card.getChosenNumber()).append(")"); + } + // chosen player if (card.getChosenPlayer() != null) { if (area.length() != 0) {