diff --git a/src/forge/CardFactoryUtil.java b/src/forge/CardFactoryUtil.java index 32ba50760b2..b0c9043e2d2 100644 --- a/src/forge/CardFactoryUtil.java +++ b/src/forge/CardFactoryUtil.java @@ -2523,7 +2523,8 @@ public class CardFactoryUtil { // 1/10 if(d[0].contains("DamageTgtC")) AllZone.GameAction.addDamage(TgtC, Src, X); else if(d[0].contains("DamageSelf")) AllZone.GameAction.addDamage(Src, Src, X); // 2/10 - else if(d[0].contains("Damage")) AllZone.GameAction.addDamage(dbPlayer, X); + else if(d[0].contains("Damage")) AllZone.GameAction.addDamage(dbPlayer, X, Src); + if(d[0].contains("GainLife")) AllZone.GameAction.addLife(dbPlayer, X); diff --git a/src/forge/CardFactory_Creatures.java b/src/forge/CardFactory_Creatures.java index bfcd403f28e..f70af98e1e7 100644 --- a/src/forge/CardFactory_Creatures.java +++ b/src/forge/CardFactory_Creatures.java @@ -13002,7 +13002,7 @@ public class CardFactory_Creatures { void makeToken() { CardFactoryUtil.makeToken("Goblin", "R 1 1 Goblin", card, "R", new String[] { - "Creature", "Goblin "}, 1, 1, new String[] {"Flying"}); + "Creature", "Goblin"}, 1, 1, new String[] {""}); } }; Command intoPlayDestroy = new Command() { diff --git a/src/forge/GameAction.java b/src/forge/GameAction.java index f6e19fdd59f..517acef718f 100644 --- a/src/forge/GameAction.java +++ b/src/forge/GameAction.java @@ -1459,6 +1459,18 @@ public class GameAction { getPlayerLife(player).subtractLife(life); } + public void addDamage(String player, int damage, Card source) { + // place holder for future damage modification rules (prevention?) + + if(source.getKeyword().contains("Lifelink")) GameActionUtil.executeLifeLinkEffects(source, damage); + + CardList cl = CardFactoryUtil.getAurasEnchanting(source, "Guilty Conscience"); + for(Card c:cl) { + GameActionUtil.executeGuiltyConscienceEffects(source, c, damage); + } + getPlayerLife(player).subtractLife(damage); + } + public void addDamage(String player, int damage) { // place holder for future damage modification rules (prevention?)