示例#1
0
文件: Hankyu.java 项目: Nick456/mage
  public Hankyu(UUID ownerId) {
    super(ownerId, 253, "Hankyu", Rarity.UNCOMMON, new CardType[] {CardType.ARTIFACT}, "{1}");
    this.expansionSetCode = "CHK";
    this.subtype.add("Equipment");

    /* Equipped creature has "{T}: Put an aim counter on Hankyu" and */
    SimpleActivatedAbility ability1 =
        new SimpleActivatedAbility(
            Zone.BATTLEFIELD, new HankyuAddCounterEffect(this.getId()), new TapSourceCost());
    ability1.setSourceId(this.getId()); // to know where to put the counters on
    this.addAbility(
        new SimpleStaticAbility(
            Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability1, AttachmentType.EQUIPMENT)));

    /* "{T}, Remove all aim counters from Hankyu: This creature deals
     * damage to target creature or player equal to the number of
     * aim counters removed this way." */
    SimpleActivatedAbility ability2 =
        new SimpleActivatedAbility(
            Zone.BATTLEFIELD, new HankyuDealsDamageEffect(), new TapSourceCost());
    ability2.addCost(new HankyuCountersSourceCost(this.getId()));
    ability2.addTarget(new TargetCreatureOrPlayer());
    this.addAbility(
        new SimpleStaticAbility(
            Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability2, AttachmentType.EQUIPMENT)));

    // Equip {4} ({4}: Attach to target creature you control. Equip only as a sorcery.)
    this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4)));
  }
示例#2
0
  public HelmOfObedience(UUID ownerId) {
    super(
        ownerId, 163, "Helm of Obedience", Rarity.RARE, new CardType[] {CardType.ARTIFACT}, "{4}");
    this.expansionSetCode = "ALL";

    // {X}, {tap}: Target opponent puts cards from the top of his or her library into his or her
    // graveyard until a creature card or X cards are put into that graveyard this way, whichever
    // comes first. If a creature card is put into that graveyard this way, sacrifice Helm of
    // Obedience and put that card onto the battlefield under your control. X can't be 0.
    SimpleActivatedAbility abilitiy =
        new SimpleActivatedAbility(
            Constants.Zone.BATTLEFIELD, new HelmOfObedienceEffect(), new TapSourceCost());
    abilitiy.addCost(new VariableManaCost());
    abilitiy.addTarget(new TargetOpponent());
    this.addAbility(abilitiy);
  }
示例#3
0
  public UnyaroGriffin(UUID ownerId, CardSetInfo setInfo) {
    super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{3}{W}");
    this.subtype.add("Griffin");

    this.power = new MageInt(2);
    this.toughness = new MageInt(2);

    // Flying
    this.addAbility(FlyingAbility.getInstance());

    // Sacrifice Unyaro Griffin: Counter target red instant or sorcery spell.
    SimpleActivatedAbility ability =
        new SimpleActivatedAbility(
            Zone.BATTLEFIELD, new CounterTargetEffect(), new SacrificeSourceCost());
    ability.addTarget(new TargetSpell(filter));
    this.addAbility(ability);
  }
示例#4
0
  public Cursecatcher(UUID ownerId) {
    super(ownerId, 34, "Cursecatcher", Rarity.UNCOMMON, new CardType[] {CardType.CREATURE}, "{U}");
    this.expansionSetCode = "SHM";
    this.subtype.add("Merfolk");
    this.subtype.add("Wizard");

    this.color.setBlue(true);
    this.power = new MageInt(1);
    this.toughness = new MageInt(1);

    // Sacrifice Cursecatcher: Counter target instant or sorcery spell unless its controller pays
    // {1}.
    SimpleActivatedAbility ability =
        new SimpleActivatedAbility(
            Zone.BATTLEFIELD,
            new CounterUnlessPaysEffect(new GenericManaCost(1)),
            new SacrificeSourceCost());
    ability.addTarget(new TargetSpell(filter));
    this.addAbility(ability);
  }
示例#5
0
  public VampireHexmage(UUID ownerId) {
    super(
        ownerId,
        114,
        "Vampire Hexmage",
        Rarity.UNCOMMON,
        new CardType[] {CardType.CREATURE},
        "{B}{B}");
    this.expansionSetCode = "ZEN";
    this.subtype.add("Vampire");
    this.subtype.add("Shaman");

    this.color.setBlack(true);
    this.power = new MageInt(2);
    this.toughness = new MageInt(1);

    this.addAbility(FirstStrikeAbility.getInstance());

    SimpleActivatedAbility vampireHexmageAbility =
        new SimpleActivatedAbility(
            Zone.BATTLEFIELD, new VampireHexmageEffect(), new SacrificeSourceCost());
    vampireHexmageAbility.addTarget(new TargetPermanent());
    this.addAbility(vampireHexmageAbility);
  }