From 84e2ecb8efb34b9b896961b615cb762fcd908c3c Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Wed, 11 Mar 2015 21:03:42 +0100 Subject: [PATCH] * Some fixes to cardState handling concerning card rules. --- Mage.Common/src/mage/view/CardView.java | 6 +++++- Mage/src/mage/cards/CardImpl.java | 10 +++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/Mage.Common/src/mage/view/CardView.java b/Mage.Common/src/mage/view/CardView.java index fafd5af104f..9648daba66d 100644 --- a/Mage.Common/src/mage/view/CardView.java +++ b/Mage.Common/src/mage/view/CardView.java @@ -198,7 +198,11 @@ public class CardView extends SimpleCardView { this.name = card.getImageName(); this.displayName = card.getName(); - this.rules = card.getRules(game); + if (game == null) { + this.rules = card.getRules(); + } else { + this.rules = card.getRules(game); + } this.manaCost = card.getManaCost().getSymbols(); this.convertedManaCost = card.getManaCost().convertedManaCost(); diff --git a/Mage/src/mage/cards/CardImpl.java b/Mage/src/mage/cards/CardImpl.java index ca42ecaaf89..810125a6c37 100644 --- a/Mage/src/mage/cards/CardImpl.java +++ b/Mage/src/mage/cards/CardImpl.java @@ -222,9 +222,13 @@ public abstract class CardImpl extends MageObjectImpl implements Card { public List getRules(Game game) { try { List rules = getRules(); - CardState state = game.getState().getCardState(objectId); - for (String data : state.getInfo().values()) { - rules.add(data); + if (game != null) { + CardState cardState = game.getState().getCardState(objectId); + if (cardState != null) { + for (String data : cardState.getInfo().values()) { + rules.add(data); + } + } } // for (Ability ability: state.getAbilities()) { // rules.add(ability.getRule());