From ecd0281d81d0189e41c49bbd80ed0bbfb34710b5 Mon Sep 17 00:00:00 2001 From: BetaSteward Date: Sat, 27 Nov 2010 17:55:51 +0000 Subject: [PATCH] added Summoning Sickness property --- Mage.Common/src/mage/view/PermanentView.java | 6 ++++++ Mage/src/mage/game/permanent/Permanent.java | 1 + Mage/src/mage/game/permanent/PermanentImpl.java | 6 +++++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/Mage.Common/src/mage/view/PermanentView.java b/Mage.Common/src/mage/view/PermanentView.java index 05b22c5059..9c29ca1b11 100644 --- a/Mage.Common/src/mage/view/PermanentView.java +++ b/Mage.Common/src/mage/view/PermanentView.java @@ -46,6 +46,7 @@ public class PermanentView extends CardView { private boolean flipped; private boolean phasedIn; private boolean faceUp; + private boolean summoningSickness; private int damage; private List attachments; private List counters; @@ -57,6 +58,7 @@ public class PermanentView extends CardView { this.flipped = permanent.isFlipped(); this.phasedIn = permanent.isPhasedIn(); this.faceUp = permanent.isFaceUp(); + this.summoningSickness = permanent.hasSummoningSickness(); this.damage = permanent.getDamage(); if (permanent.getAttachments().size() > 0) { attachments = new ArrayList(); @@ -96,6 +98,10 @@ public class PermanentView extends CardView { return faceUp; } + public boolean hasSummoningSickness(){ + return summoningSickness; + } + public List getAttachments() { return attachments; } diff --git a/Mage/src/mage/game/permanent/Permanent.java b/Mage/src/mage/game/permanent/Permanent.java index c28b51a02d..51a8d1b36e 100644 --- a/Mage/src/mage/game/permanent/Permanent.java +++ b/Mage/src/mage/game/permanent/Permanent.java @@ -68,6 +68,7 @@ public interface Permanent extends Card { public boolean changeControllerId(UUID controllerId, Game game); public boolean canBeTargetedBy(MageObject source); public boolean hasProtectionFrom(MageObject source); + public boolean hasSummoningSickness(); public int getDamage(); public int damage(int damage, UUID sourceId, Game game, boolean preventable); public void removeAllDamage(Game game); diff --git a/Mage/src/mage/game/permanent/PermanentImpl.java b/Mage/src/mage/game/permanent/PermanentImpl.java index 69743fb94d..9f24584760 100644 --- a/Mage/src/mage/game/permanent/PermanentImpl.java +++ b/Mage/src/mage/game/permanent/PermanentImpl.java @@ -274,7 +274,6 @@ public abstract class PermanentImpl> extends CardImpl if (!phasedIn) { if (!replaceEvent(EventType.PHASE_IN, game)) { this.phasedIn = true; -// addEffects(game); fireEvent(EventType.PHASED_IN, game); return true; } @@ -311,6 +310,11 @@ public abstract class PermanentImpl> extends CardImpl return false; } + @Override + public boolean hasSummoningSickness() { + return !this.controlledFromStartOfTurn; + } + @Override public boolean isAttacking() { return attacking;