Added support for EnchantedPlayer to triggers and defined. Added EnchantedPlayerCtrl as a property test for cards

This commit is contained in:
ArsenalNut
2011-09-19 02:20:34 +00:00
parent 827cbe70ec
commit e6094843f4
3 changed files with 18 additions and 0 deletions

View File

@@ -4942,6 +4942,14 @@ public class Card extends GameEntity implements Comparable<Card> {
if (!getController().isPlayer(sourceController)) return false;
} else if (Property.startsWith("YouDontCtrl")) {
if (getController().isPlayer(sourceController)) return false;
} else if (Property.startsWith("EnchantedPlayerCtrl")) {
Object o = source.getEnchanting();
if (o instanceof Player) {
if (!getController().isPlayer((Player) o)) return false;
}
else { // source not enchanting a player
return false;
}
} else if (Property.startsWith("YouOwn")) {
if (!getOwner().isPlayer(sourceController)) return false;
} else if (Property.startsWith("YouDontOwn")) {

View File

@@ -1515,6 +1515,13 @@ public class AbilityFactory {
if (!players.contains(p)) {
players.add(p);
}
} else if (defined.equals("EnchantedPlayer")) {
Object o = sa.getSourceCard().getEnchanting();
if (o instanceof Player) {
if (!players.contains((Player) o)) {
players.add((Player) o);
}
}
} else if (defined.equals("AttackingPlayer")) {
Player p = AllZone.getCombat().getAttackingPlayer();
if (!players.contains(p)) {

View File

@@ -466,6 +466,9 @@ public abstract class Trigger {
if (v.equalsIgnoreCase("EnchantedController")) {
return ((Player) o).isPlayer(srcCard.getEnchantingCard().getController());
}
if (v.equalsIgnoreCase("EnchantedPlayer")) {
return o.equals(srcCard.getEnchanting());
}
}
}