public override void Build() { CardCharacteristics Front = MyCharacteristics[CharacteristicName.Front]; Front.Name = "Selfless Cathar"; Front.CardTypes.Add("Creature"); Front.SubTypes.Add("Human"); Front.Power = 1; Front.Toughness = 1; LazyGameObject <Card> lazy = new LazyGameObject <Card>(this); CastPermanent cast = new CastPermanent(lazy); cast.MyCost.ManaParts.Add(new ManaCostPart(ManaColor.White)); Front.Activatables.Add(cast); PumpAllControlledByControllerUntilEOT paue = new PumpAllControlledByControllerUntilEOT(this); paue.MyCost.ActionParts.Add(new SacSelf(new LazyGameObject <Card>(this))); paue.MyCost.ManaParts.Add(new ManaCostPart(ManaColor.Colorless)); paue.MyCost.ManaParts.Add(new ManaCostPart(ManaColor.White)); Front.Activatables.Add(paue); }
public override void Build() { CardCharacteristics Front = MyCharacteristics[CharacteristicName.Front]; Front.Name = "Memnite"; Front.CardTypes.Add("Artifact"); Front.CardTypes.Add("Creature"); Front.SubTypes.Add("Construct"); Front.Power = 1; Front.Toughness = 1; CastPermanent cp = new CastPermanent(new LazyGameObject <Card>(this)); Front.Activatables.Add(cp); }
public override void Build() { CardCharacteristics Front = MyCharacteristics[CharacteristicName.Front]; Front.Name = "Grizzly Bears"; Front.CardTypes.Add("Creature"); Front.SubTypes.Add("Bear"); Front.Power = 2; Front.Toughness = 2; Activatable cast = new CastPermanent(new LazyGameObject <Card>(this)); cast.MyCost.ManaParts.Add(new ManaCostPart(ManaColor.Colorless)); cast.MyCost.ManaParts.Add(new ManaCostPart(ManaColor.Green)); Front.Activatables.Add(cast); }
public override void Build() { CardCharacteristics Front = MyCharacteristics[CharacteristicName.Front]; Front.Name = "Wastes"; Front.SuperTypes.Add("Basic"); Front.CardTypes.Add("Land"); PlayLand pl = new PlayLand(new LazyGameObject <Card>(this)); Front.Activatables.Add(pl); TapForMana tfm = new TapForMana(new LazyGameObject <Card>(this), ManaColor.Colorless); tfm.IsManaAbility = true; Front.Activatables.Add(tfm); }
public override void Build() { CardCharacteristics Front = MyCharacteristics[CharacteristicName.Front]; Front.Name = "Giant Growth"; Front.CardTypes.Add("Instant"); Activatable cast = new PumpSpell(new LazyGameObject <Card>(this), 3, 3); cast.MyTargeting.Description = "Creature"; cast.MyTargeting.TargetPredicate = PredicatePresets.AnyCreature; cast.MyTargeting.MinTargets = 1; cast.MyTargeting.MaxTargets = 1; cast.MyCost.ManaParts.Add(new ManaCostPart(ManaColor.Green)); Front.Activatables.Add(cast); }
public override void Build() { CardCharacteristics front = MyCharacteristics[CharacteristicName.Front]; front.Name = "Llanowar Elves"; front.CardTypes.Add("Creature"); front.SubTypes.Add("Elf"); front.Power = 1; front.Toughness = 1; LazyGameObject <Card> lazy = new LazyGameObject <Card>(this); CastPermanent cast = new CastPermanent(lazy); cast.MyCost.ManaParts.Add(new ManaCostPart(ManaColor.Green)); front.Activatables.Add(cast); TapForMana tfm = new TapForMana(lazy, ManaColor.Green); front.Activatables.Add(tfm); }
public override void Build() { CardCharacteristics Front = MyCharacteristics[CharacteristicName.Front]; Front.Name = "Soul Warden"; Front.CardTypes.Add("Creature"); Front.SubTypes.Add("Human"); Front.SubTypes.Add("Cleric"); Front.Power = 1; Front.Toughness = 1; LazyGameObject <Card> lazyThis = new LazyGameObject <Card>(this); CastPermanent cast = new CastPermanent(lazyThis); cast.MyCost.ManaParts.Add(new ManaCostPart(ManaColor.White)); Front.Activatables.Add(cast); GainLifeDefinedAbility gla = new GainLifeDefinedAbility(lazyThis, this.Controller, 1); Func <CommandBase, Game, Boolean> shouldTrigger = (x, g) => { if (!(x is CommandMoveCard)) { return(false); } CommandMoveCard move = (CommandMoveCard)x; g.DebugAlert(DebugMode.Triggers, move.ToString(g)); if (move.Destination != ZoneType.Battlefield) { g.DebugAlert(DebugMode.Triggers, "Soul Warden should: failed destination"); return(false); //It must move to the battlefield. } if (move.CardID.ID == this.ID) { g.DebugAlert(DebugMode.Triggers, "Soul Warden should: failed id"); return(false); //Must be another card } if (!move.CardID.Value(g).CurrentCharacteristics.CardTypes.Contains("Creature")) { g.DebugAlert(DebugMode.Triggers, "Types:"); foreach (String s in move.CardID.Value(g).CurrentCharacteristics.CardTypes) { g.DebugAlert(DebugMode.Triggers, s); } g.DebugAlert(DebugMode.Triggers, "Soul Warden should: failed type"); return(false); //Must be a creature } return(true); }; Func <Trigger, Game, Boolean> canTrigger = (x, g) => { Boolean res = g.GetZoneTypeOf(x.host) == ZoneType.Battlefield; if (!res) { g.DebugAlert(DebugMode.Triggers, "Soulwarden can: failed zone"); } return(res); }; Trigger trig = new Trigger(shouldTrigger, canTrigger, gla, lazyThis); Front.Triggers.Add(trig); }