@Override public BandsWithOtherAbility copy() { return new BandsWithOtherAbility(this); }
if (ab.getClass().equals(BandsWithOtherAbility.class)) { BandsWithOtherAbility ability = (BandsWithOtherAbility) ab; if (ability.getSubtype() != null) { if (perm.hasSubtype(ability.getSubtype(), game)) { for (UUID bandedId : creatureIds) { if (!bandedId.equals(creatureId)) { Permanent banded = game.getPermanent(bandedId); if (banded != null && banded.hasSubtype(ability.getSubtype(), game)) { return true; if (ability.getSupertype() != null) { if (perm.getSuperType().contains(ability.getSupertype())) { for (UUID bandedId : creatureIds) { if (!bandedId.equals(creatureId)) { Permanent banded = game.getPermanent(bandedId); if (banded != null && banded.getSuperType().contains(ability.getSupertype())) { return true; if (ability.getName() != null) { if (perm.getName().equals(ability.getName())) { for (UUID bandedId : creatureIds) { if (!bandedId.equals(creatureId)) { Permanent banded = game.getPermanent(bandedId); if (banded != null && banded.getName().equals(ability.getName())) { return true;
for (Ability ab : bandsWithOther) { BandsWithOtherAbility ability = (BandsWithOtherAbility) ab; if (ability.getSubtype() != null) { predicates.add(new SubtypePredicate(ability.getSubtype())); if (ability.getSupertype() != null) { predicates.add(new SupertypePredicate(ability.getSupertype())); if (ability.getName() != null) { predicates.add(new NamePredicate(ability.getName())); for (Ability ab : bandsWithOther) { BandsWithOtherAbility ability = (BandsWithOtherAbility) ab; if (ability.getSubtype() != null) { predicates.add(new SubtypePredicate(ability.getSubtype())); if (ability.getSupertype() != null) { predicates.add(new SupertypePredicate(ability.getSupertype())); if (ability.getName() != null) { predicates.add(new NamePredicate(ability.getName()));
public CathedralOfSerra(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); // White legendary creatures you control have "bands with other legendary creatures." this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(new BandsWithOtherAbility(SuperType.LEGENDARY), Duration.WhileOnBattlefield, filter))); }
public SeafarersQuay(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); // Blue legendary creatures you control have "bands with other legendary creatures." this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(new BandsWithOtherAbility(SuperType.LEGENDARY), Duration.WhileOnBattlefield, filter))); }
public UnholyCitadel(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); // Black legendary creatures you control have "bands with other legendary creatures." this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(new BandsWithOtherAbility(SuperType.LEGENDARY), Duration.WhileOnBattlefield, filter))); }
public MountainStronghold(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); // Red legendary creatures you control have "bands with other legendary creatures." this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(new BandsWithOtherAbility(SuperType.LEGENDARY), Duration.WhileOnBattlefield, filter))); }
public AdventurersGuildhouse(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); // Green legendary creatures you control have "bands with other legendary creatures." this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(new BandsWithOtherAbility(SuperType.LEGENDARY), Duration.WhileOnBattlefield, filter))); }
public WolvesOfTheHuntToken() { super("Wolves of the Hunt", "1/1 green Wolf creature token named Wolves of the Hunt"); cardType.add(CardType.CREATURE); subtype.add(SubType.WOLF); color.setGreen(true); power = new MageInt(1); toughness = new MageInt(1); this.addAbility(new BandsWithOtherAbility("Wolves of the Hunt")); }
public ShelkinBrownie(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}"); this.subtype.add(SubType.OUPHE); this.power = new MageInt(1); this.toughness = new MageInt(1); // {T}: Target creature loses all "bands with other" abilities until end of turn. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseAbilityTargetEffect(new BandsWithOtherAbility(), Duration.EndOfTurn), new TapSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); }
public Tolaria(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); this.addSuperType(SuperType.LEGENDARY); // {T}: Add {U}. this.addAbility(new BlueManaAbility()); // {T}: Target creature loses banding and all "bands with other" abilities until end of turn. Activate this ability only during any upkeep step. ActivatedAbilityImpl ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new LoseAbilityTargetEffect(BandingAbility.getInstance(), Duration.EndOfTurn), new TapSourceCost(), new IsStepCondition(PhaseStep.UPKEEP, false), "{T}: Target creature loses banding and all \"bands with other\" abilities until end of turn. Activate this ability only during any upkeep step."); ability.addEffect(new LoseAbilityTargetEffect(new BandsWithOtherAbility(), Duration.EndOfTurn)); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); }
public OldFogey(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{G}{G}"); this.subtype.add(SubType.DINOSAUR); this.power = new MageInt(7); this.toughness = new MageInt(7); // Phasing this.addAbility(PhasingAbility.getInstance()); // Cumulative upkeep {1} this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl("{1}"))); // Echo {G}{G} this.addAbility(new EchoAbility("{G}{G}")); // Fading 3 this.addAbility(new FadingAbility(3, this, true)); // Bands with other Dinosaurs this.addAbility(new BandsWithOtherAbility(SubType.DINOSAUR)); // Protection from Homarids this.addAbility(new ProtectionAbility(filter)); // Snow-covered plainswalk this.addAbility(new LandwalkAbility(filter2)); // Flanking this.addAbility(new FlankingAbility()); // Rampage 2 this.addAbility(new RampageAbility(2, true)); }